Skip to content

Commit accdcc3

Browse files
Project deletion via file-based settings
1 parent e07f9fe commit accdcc3

File tree

2 files changed

+11
-8
lines changed

2 files changed

+11
-8
lines changed

server/src/main/java/org/elasticsearch/cluster/project/ProjectStateRegistry.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,10 @@ public static Settings getProjectSettings(ProjectId projectId, ClusterState clus
7878
return registry.projectsSettings.getOrDefault(projectId, Settings.EMPTY);
7979
}
8080

81+
public boolean isProjectMarkedForDeletion(ProjectId projectId) {
82+
return projectsMarkedForDeletion.contains(projectId);
83+
}
84+
8185
@Override
8286
public Iterator<? extends ToXContent> toXContentChunked(ToXContent.Params params) {
8387
boolean multiProject = params.paramAsBoolean("multi-project", false);

server/src/main/java/org/elasticsearch/reservedstate/service/ReservedProjectStateUpdateTask.java

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@
1515
import org.elasticsearch.cluster.metadata.ProjectId;
1616
import org.elasticsearch.cluster.metadata.ProjectMetadata;
1717
import org.elasticsearch.cluster.project.ProjectStateRegistry;
18-
import org.elasticsearch.common.settings.Settings;
1918
import org.elasticsearch.gateway.GatewayService;
2019
import org.elasticsearch.reservedstate.ReservedProjectStateHandler;
2120
import org.elasticsearch.reservedstate.TransformState;
@@ -73,14 +72,14 @@ protected ClusterState execute(ClusterState currentState) {
7372
}
7473

7574
ClusterState updatedClusterState = result.v1();
76-
Settings updatedSettings = ProjectStateRegistry.getProjectSettings(projectId, updatedClusterState);
77-
ProjectMetadata updatedProject = updatedClusterState.getMetadata().getProject(projectId);
75+
ProjectStateRegistry updatedProjectStateRegistry = updatedClusterState.custom(
76+
ProjectStateRegistry.TYPE,
77+
ProjectStateRegistry.EMPTY
78+
);
79+
ProjectMetadata updatedProjectMetadata = updatedClusterState.getMetadata().getProject(projectId);
7880
return ClusterState.builder(currentState)
79-
.putCustom(
80-
ProjectStateRegistry.TYPE,
81-
ProjectStateRegistry.builder(currentState).putProjectSettings(projectId, updatedSettings).build()
82-
)
83-
.putProjectMetadata(ProjectMetadata.builder(updatedProject).put(result.v2()))
81+
.putCustom(ProjectStateRegistry.TYPE, ProjectStateRegistry.builder(updatedProjectStateRegistry).build())
82+
.putProjectMetadata(ProjectMetadata.builder(updatedProjectMetadata).put(result.v2()))
8483
.build();
8584
}
8685
}

0 commit comments

Comments
 (0)