diff --git a/CHANGES.txt b/CHANGES.txt index d42a73c539..bb2cd1e6da 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 5.1 + * Avoid potential gossip thread deadlock during decommission (CASSANDRA-21143) * Improve construction of consensus groups for range movements (CASSANDRA-21142) * Support compaction_read_disk_access_mode for cursor-based compaction (CASSANDRA-21147) * Allow value/element indexing on frozen collections in SAI (CASSANDRA-18492) diff --git a/src/java/org/apache/cassandra/gms/Gossiper.java b/src/java/org/apache/cassandra/gms/Gossiper.java index c730e080ae..e35ba861af 100644 --- a/src/java/org/apache/cassandra/gms/Gossiper.java +++ b/src/java/org/apache/cassandra/gms/Gossiper.java @@ -2194,16 +2194,6 @@ public class Gossiper implements IFailureDetectionEventListener, GossiperMBean, toSend.forceNewerGenerationUnsafe(); toSend.markDead(); VersionedValue value = StorageService.instance.valueFactory.left(tokens, computeExpireTime()); - - if (left.equals(getBroadcastAddressAndPort())) - { - // Adding local state bumps the value's version. To keep this consistent across - // the cluster, re-fetch it before broadcasting. - Gossiper.instance.addLocalApplicationState(ApplicationState.STATUS_WITH_PORT, value); - value = Gossiper.instance.endpointStateMap.get(getBroadcastAddressAndPort()) - .getApplicationState(ApplicationState.STATUS_WITH_PORT); - } - toSend.addApplicationState(ApplicationState.STATUS_WITH_PORT, value); GossipDigestAck2 payload = new GossipDigestAck2(Collections.singletonMap(left, toSend)); logger.info("Sending app state with status {} to {}", value.value, sendTo);