diff --git a/CHANGES.txt b/CHANGES.txt index d025bef1fe..6e82d11145 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 1.0.12 + * fix toString of hint destination tokens (CASSANDRA-4568) * (Hadoop) fix setting key length for old-style mapred api (CASSANDRA-4534) * (Hadoop) fix iterating through a resultset consisting entirely of tombstoned rows (CASSANDRA-4466) diff --git a/src/java/org/apache/cassandra/db/HintedHandOffManager.java b/src/java/org/apache/cassandra/db/HintedHandOffManager.java index 01b7f9f34a..bb5b164052 100644 --- a/src/java/org/apache/cassandra/db/HintedHandOffManager.java +++ b/src/java/org/apache/cassandra/db/HintedHandOffManager.java @@ -464,10 +464,15 @@ public class HintedHandOffManager implements HintedHandOffManagerMBean List rows = getHintsSlice(Integer.MAX_VALUE); Map result = new HashMap(); + Token.TokenFactory tokenFactory = StorageService.getPartitioner().getTokenFactory(); for (Row r : rows) { - if (r.cf != null) //ignore removed rows - result.put(new String(r.key.key.array()), r.cf.getColumnCount()); + if (r.cf == null) // ignore removed rows + continue; + + int count = r.cf.getColumnCount(); + if (count > 0) + result.put(tokenFactory.toString(r.key.token), count); } return result; }