From 2f497eda0f121fce68256e18748d04bd7cbfe032 Mon Sep 17 00:00:00 2001 From: Jason Brown Date: Fri, 30 May 2014 05:40:30 -0700 Subject: [PATCH] Hint streaming can cause decommission to fail patch by jasobrown, reviewed by marcuse for CASSANDRA-7219 --- CHANGES.txt | 1 + src/java/org/apache/cassandra/service/StorageService.java | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) 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