Description
The Get Index Settings API returns the wrong default for index.soft_deletes.enabled
in the 7.x series.
This is because the default is computed based on the version the index was created in:
elasticsearch/server/src/main/java/org/elasticsearch/index/IndexSettings.java
Lines 233 to 235 in 2488214
But the version is not included in the Settings object passed to the default calculation function when called by the Get Index Settings API with the include_defaults
flag. It looks like the Settings object passed to calculate the defaults in this circumstance is always empty, so any setting whose defaults depend on another setting is likely to be wrong as well.
Update:
This definitely impacts other settings, as can be seen in #51194 where an incorrect default value of index.merge.scheduler.max_merge_count
is returned from GET index/settings?include_defaults
because its default value depends on the value of index.merge.scheduler.max_thread_count
.