Snapshot Policy UI Shows "Include Cluster State = Off" but Snapshots Are Created with Cluster State Enabled

Versions (relevant - OpenSearch/Dashboard/Server OS/Browser): 3.6.0

Describe the issue:

I observed a discrepancy between the Snapshot Management UI and the actual snapshot configuration being used during snapshot execution.

In the Snapshot Management UI, the “Include Cluster State” option is displayed as disabled/off for an existing snapshot policy. However, snapshots created by that policy contain cluster state, and the Snapshot API also reports that cluster state inclusion is enabled.

Snapshot repository: S3 repository

Snapshot policy created and managed through OpenSearch Dashboards

Snapshots executed successfully

Observed Behavior

Snapshot Management UI

The snapshot policy shows:

Include Cluster State = Off

Snapshot API

When retrieving snapshot details, the response shows:

{
  "include_global_state": true
}

This can create issues with the cluster if some one restores old index and if by any chance if he keep to restore the cluster settings then my latest configurations are overwritten.

Regards,

Jijo John

@Jijo.john Was this working for you before, or did you test only with 3.6.0?

@Jijo.john I did some testing and found the root cause.
When a snapshot policy is created via the UI, include_global_state isn’t included in the policy.

{
  "_id": "daily-policy-3-sm-policy",
  "_version": 1,
  "_seq_no": 81,
  "_primary_term": 1,
  "sm_policy": {
    "name": "daily-policy-3",
    "description": "",
    "schema_version": 21,
    "creation": {
      "schedule": {
        "cron": {
          "expression": "0 20 * * *",
          "timezone": "UTC"
        }
      }
    },
    "snapshot_config": {
      "indices": "top_queries-2026.06.08-14692",
      "repository": "aws-s3"
    },
    "schedule": {
      "interval": {
        "start_time": 1780929056867,
        "period": 1,
        "unit": "Minutes"
      }
    },
    "enabled": true,
    "last_updated_time": 1780929056868,
    "enabled_time": 1780929056867
  }
}

According to the OpenSearch documentation, the default value is true.

That’s why any snapshot executed with that policy has include_global_state set to true.
I’ve found that in 2.19.x, so all 3.x are also affected.

The workaround is to either use the API with include_global_state set to false, or first enable include_global_state in the UI, then edit policy again and disable it.

This issue was reported on GitHub with version 2.4, but it doesn’t look like it has been fixed.

You can report it as a bug in OpenSearch GitHub. If you do so, please share the link here.

Thanks @pablo i will report it as a bug