diff --git a/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/XPackPlugin.java b/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/XPackPlugin.java index 84ad5885f738f..8e80b8100b562 100644 --- a/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/XPackPlugin.java +++ b/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/XPackPlugin.java @@ -215,6 +215,10 @@ public Settings additionalSettings() { return super.additionalSettings(); } else { + // Unfortunately we cannot simply disallow any value for xpackInstalledNodeAttrSetting, because the + // internal cluster integration test framework will restart nodes with settings copied from the node + // immediately before it was stopped. The best we can do is reject inconsistencies. + // TODO: fix the test framework not to copy derived node settings upon restart. if (settings.get(xpackInstalledNodeAttrSetting) != null && settings.get(xpackInstalledNodeAttrSetting).equals("true") == false) { throw new IllegalArgumentException("Conflicting setting [" + xpackInstalledNodeAttrSetting + "]");