diff --git a/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/security/action/UpdateIndexMigrationVersionAction.java b/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/security/action/UpdateIndexMigrationVersionAction.java index 1ebf129e8f553..674354c15702b 100644 --- a/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/security/action/UpdateIndexMigrationVersionAction.java +++ b/x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/security/action/UpdateIndexMigrationVersionAction.java @@ -19,7 +19,7 @@ import org.elasticsearch.cluster.block.ClusterBlockException; import org.elasticsearch.cluster.block.ClusterBlockLevel; import org.elasticsearch.cluster.metadata.IndexMetadata; -import org.elasticsearch.cluster.metadata.Metadata; +import org.elasticsearch.cluster.metadata.ProjectMetadata; import org.elasticsearch.cluster.service.ClusterService; import org.elasticsearch.cluster.service.MasterServiceTaskQueue; import org.elasticsearch.common.Priority; @@ -139,22 +139,19 @@ static class UpdateIndexMigrationVersionTask implements ClusterStateTaskListener } ClusterState execute(ClusterState currentState) { - IndexMetadata.Builder indexMetadataBuilder = IndexMetadata.builder( - currentState.metadata().getProject().indices().get(indexName) - ); + final var project = currentState.metadata().getProject(); + IndexMetadata.Builder indexMetadataBuilder = IndexMetadata.builder(project.indices().get(indexName)); indexMetadataBuilder.putCustom( MIGRATION_VERSION_CUSTOM_KEY, Map.of(MIGRATION_VERSION_CUSTOM_DATA_KEY, Integer.toString(indexMigrationVersion)) ); indexMetadataBuilder.version(indexMetadataBuilder.version() + 1); - final ImmutableOpenMap.Builder builder = ImmutableOpenMap.builder( - currentState.metadata().getProject().indices() - ); + final ImmutableOpenMap.Builder builder = ImmutableOpenMap.builder(project.indices()); builder.put(indexName, indexMetadataBuilder.build()); return ClusterState.builder(currentState) - .metadata(Metadata.builder(currentState.metadata()).indices(builder.build()).build()) + .putProjectMetadata(ProjectMetadata.builder(project).indices(builder.build()).build()) .build(); } diff --git a/x-pack/plugin/security/src/main/java/org/elasticsearch/xpack/security/support/QueryableBuiltInRolesSynchronizer.java b/x-pack/plugin/security/src/main/java/org/elasticsearch/xpack/security/support/QueryableBuiltInRolesSynchronizer.java index 2c684e7e49ffd..65595f85d931b 100644 --- a/x-pack/plugin/security/src/main/java/org/elasticsearch/xpack/security/support/QueryableBuiltInRolesSynchronizer.java +++ b/x-pack/plugin/security/src/main/java/org/elasticsearch/xpack/security/support/QueryableBuiltInRolesSynchronizer.java @@ -23,6 +23,7 @@ import org.elasticsearch.cluster.coordination.FailedToCommitClusterStateException; import org.elasticsearch.cluster.metadata.IndexMetadata; import org.elasticsearch.cluster.metadata.Metadata; +import org.elasticsearch.cluster.metadata.ProjectMetadata; import org.elasticsearch.cluster.service.ClusterService; import org.elasticsearch.cluster.service.MasterServiceTaskQueue; import org.elasticsearch.common.Priority; @@ -515,7 +516,8 @@ public Map getNewRoleDigests() { } Tuple> execute(ClusterState state) { - IndexMetadata indexMetadata = state.metadata().getProject().index(concreteSecurityIndexName); + final var project = state.metadata().getProject(); + IndexMetadata indexMetadata = project.index(concreteSecurityIndexName); if (indexMetadata == null) { throw new IndexNotFoundException(concreteSecurityIndexName); } @@ -528,10 +530,12 @@ Tuple> execute(ClusterState state) { indexMetadataBuilder.removeCustom(METADATA_QUERYABLE_BUILT_IN_ROLES_DIGEST_KEY); } indexMetadataBuilder.version(indexMetadataBuilder.version() + 1); - ImmutableOpenMap.Builder builder = ImmutableOpenMap.builder(state.metadata().getProject().indices()); + ImmutableOpenMap.Builder builder = ImmutableOpenMap.builder(project.indices()); builder.put(concreteSecurityIndexName, indexMetadataBuilder.build()); return new Tuple<>( - ClusterState.builder(state).metadata(Metadata.builder(state.metadata()).indices(builder.build()).build()).build(), + ClusterState.builder(state) + .putProjectMetadata(ProjectMetadata.builder(project).indices(builder.build()).build()) + .build(), newRoleDigests ); } else {