Skip to content

Commit 547be49

Browse files
Spotless and warning for different reserved metadata warnings
1 parent 638860d commit 547be49

File tree

2 files changed

+24
-11
lines changed

2 files changed

+24
-11
lines changed

server/src/main/java/org/elasticsearch/action/admin/cluster/state/TransportClusterStateAction.java

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@
5151
import java.util.Collection;
5252
import java.util.HashMap;
5353
import java.util.Map;
54+
import java.util.Objects;
5455
import java.util.Set;
5556
import java.util.function.BiPredicate;
5657
import java.util.function.Predicate;
@@ -262,12 +263,15 @@ private ClusterStateResponse buildResponse(final ClusterStateRequest request, fi
262263
if (request.multiproject() == false) {
263264
ProjectStateRegistry projectStateRegistry = ProjectStateRegistry.get(currentState);
264265
if (projectStateRegistry.size() > 1) {
265-
throw new Metadata.MultiProjectPendingException("There are multiple projects " + projectStateRegistry.knownProjects());
266+
throw new Metadata.MultiProjectPendingException(
267+
"There are multiple projects " + projectStateRegistry.knownProjects()
268+
);
266269
}
267270
var reservedStateMetadata = new HashMap<>(currentState.metadata().reservedStateMetadata());
268271
var singleProjectReservedStateMetadata = projectStateRegistry.reservedStateMetadata(projectResolver.getProjectId());
269-
singleProjectReservedStateMetadata.forEach((key, value) ->
270-
reservedStateMetadata.merge(key, value, this::mergeReservedStateMetadata));
272+
singleProjectReservedStateMetadata.forEach(
273+
(key, value) -> reservedStateMetadata.merge(key, value, this::mergeReservedStateMetadata)
274+
);
271275

272276
mdBuilder.put(reservedStateMetadata);
273277
}
@@ -325,6 +329,13 @@ private ClusterStateResponse buildResponse(final ClusterStateRequest request, fi
325329
}
326330

327331
private ReservedStateMetadata mergeReservedStateMetadata(ReservedStateMetadata metadata1, ReservedStateMetadata metadata2) {
332+
if (Objects.equals(metadata1.version(), metadata2.version()) == false) {
333+
logger.warn(
334+
"Reserved state metadata version is different for Metadata ({}) and the only project ({})",
335+
metadata2.version(),
336+
metadata1.version()
337+
);
338+
}
328339
ReservedStateMetadata.Builder builder = ReservedStateMetadata.builder(metadata1.namespace())
329340
.version(Math.max(metadata1.version(), metadata2.version()));
330341

server/src/test/java/org/elasticsearch/action/admin/cluster/state/TransportClusterStateActionTests.java

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -272,23 +272,25 @@ private static ClusterStateRequest buildRandomRequest(Set<String> indexNames, bo
272272

273273
private static ClusterState buildClusterState(ProjectMetadata.Builder... projects) {
274274
final Metadata.Builder metadataBuilder = Metadata.builder();
275-
metadataBuilder.put(ReservedStateMetadata.builder("file_settings")
276-
.version(43L)
277-
.putHandler(new ReservedStateHandlerMetadata("cluster_settings", Set.of("setting_1", "setting_2")))
278-
.build()
275+
metadataBuilder.put(
276+
ReservedStateMetadata.builder("file_settings")
277+
.version(43L)
278+
.putHandler(new ReservedStateHandlerMetadata("cluster_settings", Set.of("setting_1", "setting_2")))
279+
.build()
279280
);
280281
Arrays.stream(projects).forEach(metadataBuilder::put);
281282
final var metadata = metadataBuilder.build();
282283

283284
ClusterState.Builder csBuilder = ClusterState.builder(new ClusterName(randomAlphaOfLengthBetween(4, 12)));
284285
ProjectStateRegistry.Builder psBuilder = ProjectStateRegistry.builder();
285286
for (ProjectMetadata.Builder project : projects) {
286-
psBuilder
287-
.putReservedStateMetadata(project.getId(), ReservedStateMetadata.builder("file_settings")
287+
psBuilder.putReservedStateMetadata(
288+
project.getId(),
289+
ReservedStateMetadata.builder("file_settings")
288290
.version(43L)
289291
.putHandler(new ReservedStateHandlerMetadata("project_settings", Set.of("setting_1")))
290-
.build())
291-
.putProjectSettings(project.getId(), Settings.builder().put("setting_1", randomIdentifier()).build());
292+
.build()
293+
).putProjectSettings(project.getId(), Settings.builder().put("setting_1", randomIdentifier()).build());
292294
}
293295
return csBuilder.metadata(metadata)
294296
.routingTable(GlobalRoutingTableTestHelper.buildRoutingTable(metadata, RoutingTable.Builder::addAsNew))

0 commit comments

Comments
 (0)