Skip to content

GET /_migration/deprecations doesn't check deprecated affix settings correctly #137008

@DaveCTurner

Description

@DaveCTurner

If you set a deprecated affix setting (e.g. in 8.19) ...

PUT /_cluster/settings
{
  "persistent": {
    "tracing.apm.agent.transaction_sample_rate": 1.0
  }
}

... then this is not reported by GET /_migration/deprecations:

{
  "cluster_settings" : [ ],
  "node_settings" : [ ],
  "ml_settings" : [ ],
  "ilm_policies" : { },
  "data_streams" : { },
  "index_settings" : { },
  "templates" : { }
}

The problem is a UOE here (which is silently dropped):

Caused by: java.lang.UnsupportedOperationException: affix settings can't return values use #getConcreteSetting to obtain a concrete setting
        at [email protected]/org.elasticsearch.common.settings.Setting$AffixSetting.get(Setting.java:1022)
        at [email protected]/org.elasticsearch.xpack.deprecation.NodeDeprecationChecks.checkRemovedSetting(NodeDeprecationChecks.java:150)
        at [email protected]/org.elasticsearch.xpack.deprecation.NodeDeprecationChecks.checkMultipleRemovedSettings(NodeDeprecationChecks.java:179)
        at [email protected]/org.elasticsearch.xpack.deprecation.NodeDeprecationChecks.checkTracingApmSettings(NodeDeprecationChecks.java:1073)
        at [email protected]/org.elasticsearch.xpack.deprecation.TransportNodeDeprecationCheckAction.lambda$nodeOperation$3(TransportNodeDeprecationCheckAction.java:135)

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions