Skip to content

Commit 768a864

Browse files
committed
Revert tidy-up for safer backporting
1 parent c95a33e commit 768a864

1 file changed

Lines changed: 19 additions & 10 deletions

File tree

server/src/main/java/org/elasticsearch/cluster/coordination/CoordinationState.java

Lines changed: 19 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -556,18 +556,27 @@ public interface PersistedState extends Closeable {
556556
* marked as committed.
557557
*/
558558
default void markLastAcceptedStateAsCommitted() {
559-
final var lastAcceptedState = getLastAcceptedState();
560-
final var hasClusterUuid = lastAcceptedState.metadata().clusterUUID().equals(Metadata.UNKNOWN_CLUSTER_UUID) == false;
561-
assert hasClusterUuid : "received cluster state with empty cluster uuid: " + lastAcceptedState;
562-
563-
if (hasClusterUuid && lastAcceptedState.metadata().clusterUUIDCommitted() == false) {
559+
final ClusterState lastAcceptedState = getLastAcceptedState();
560+
Metadata.Builder metadataBuilder = null;
561+
if (lastAcceptedState.getLastAcceptedConfiguration().equals(lastAcceptedState.getLastCommittedConfiguration()) == false) {
562+
final CoordinationMetadata coordinationMetadata = CoordinationMetadata.builder(lastAcceptedState.coordinationMetadata())
563+
.lastCommittedConfiguration(lastAcceptedState.getLastAcceptedConfiguration())
564+
.build();
565+
metadataBuilder = Metadata.builder(lastAcceptedState.metadata());
566+
metadataBuilder.coordinationMetadata(coordinationMetadata);
567+
}
568+
assert lastAcceptedState.metadata().clusterUUID().equals(Metadata.UNKNOWN_CLUSTER_UUID) == false
569+
: "received cluster state with empty cluster uuid: " + lastAcceptedState;
570+
if (lastAcceptedState.metadata().clusterUUID().equals(Metadata.UNKNOWN_CLUSTER_UUID) == false
571+
&& lastAcceptedState.metadata().clusterUUIDCommitted() == false) {
572+
if (metadataBuilder == null) {
573+
metadataBuilder = Metadata.builder(lastAcceptedState.metadata());
574+
}
575+
metadataBuilder.clusterUUIDCommitted(true);
564576
logger.info("cluster UUID set to [{}]", lastAcceptedState.metadata().clusterUUID());
565577
}
566-
567-
final var adjustedMetadata = lastAcceptedState.metadata()
568-
.withLastCommittedValues(hasClusterUuid, lastAcceptedState.getLastAcceptedConfiguration());
569-
if (adjustedMetadata != lastAcceptedState.metadata()) {
570-
setLastAcceptedState(ClusterState.builder(lastAcceptedState).metadata(adjustedMetadata).build());
578+
if (metadataBuilder != null) {
579+
setLastAcceptedState(ClusterState.builder(lastAcceptedState).metadata(metadataBuilder).build());
571580
}
572581
}
573582

0 commit comments

Comments
 (0)