diff --git a/CHANGES.txt b/CHANGES.txt index ba3a675532..ef5f72afc5 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -26,6 +26,7 @@ * exit CQLSH with error status code if script fails (CASSANDRA-6344) * Fix bug with some IN queries missig results (CASSANDRA-7105) * Fix availability validation for LOCAL_ONE CL (CASSANDRA-7319) + * Hint streaming can cause decommission to fail (CASSANDRA-7219) 1.2.16 diff --git a/src/java/org/apache/cassandra/service/StorageService.java b/src/java/org/apache/cassandra/service/StorageService.java index 8e7c073b49..494da3343b 100644 --- a/src/java/org/apache/cassandra/service/StorageService.java +++ b/src/java/org/apache/cassandra/service/StorageService.java @@ -2966,7 +2966,8 @@ public class StorageService extends NotificationBroadcasterSupport implements IE private CountDownLatch streamHints() { - if (HintedHandOffManager.instance.listEndpointsPendingHints().size() == 0) + ColumnFamilyStore hintsCF = Table.open(Table.SYSTEM_KS).getColumnFamilyStore(SystemTable.HINTS_CF); + if (hintsCF.getMemtableColumnsCount() == 0 && hintsCF.estimateKeys() == 0) return new CountDownLatch(0); // gather all live nodes in the cluster that aren't also leaving