📣 极限科技诚招搜索运维工程师(Elasticsearch/Easysearch)- 全职/北京 👉 : 立即申请加入

版本: 7.6-8.9

简而言之,当尝试使用不允许的设置覆盖 Elasticsearch 中的头时,会出现此错误。Elasticsearch 出于安全和一致性的原因,某些头是不可变的。要解决此问题,你可以避免更改该头,或使用不同的名称创建一个新的头。如果该头不是必需的,你也可以将其删除。在处理 Elasticsearch 中的头时,务必确保遵循正确的语法和规则。

日志上下文 #

日志 “header cannot be overwritten via [” + fullSetting + “]” 的类名是 HttpExporter.java. 我们从 Elasticsearch 源代码中提取了以下内容,供那些寻求深入了解的人参考:

(key) -> Setting.groupSetting(key + "."; settings -> {
 final Setnames = settings.names();
 for (String name : names) {
 final String fullSetting = key + "." + name;
 if (HttpExporter.BLACKLISTED_HEADERS.contains(name)) {
 throw new SettingsException("header cannot be overwritten via [" + fullSetting + "]");
 }
 final Listvalues = settings.getAsList(name);
 if (values.isEmpty()) {
 throw new SettingsException("headers must have values; missing for setting [" + fullSetting + "]");
 }