Updated Branches: refs/heads/cassandra-1.0 545288357 -> 333e7ace0
Fix NPE during HH when target has been removed from the cluster. Patch by Sam Overton, reviewed by brandonwilliams for CASSANDRA-3677 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/333e7ace Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/333e7ace Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/333e7ace Branch: refs/heads/cassandra-1.0 Commit: 333e7ace0aa939c3c22f21e92b2f937f17d22948 Parents: 5452883 Author: Brandon Williams <brandonwilli...@apache.org> Authored: Tue Feb 7 09:22:44 2012 -0600 Committer: Brandon Williams <brandonwilli...@apache.org> Committed: Tue Feb 7 09:22:44 2012 -0600 ---------------------------------------------------------------------- .../apache/cassandra/db/HintedHandOffManager.java | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cassandra/blob/333e7ace/src/java/org/apache/cassandra/db/HintedHandOffManager.java ---------------------------------------------------------------------- diff --git a/src/java/org/apache/cassandra/db/HintedHandOffManager.java b/src/java/org/apache/cassandra/db/HintedHandOffManager.java index a83fbab..e2dc046 100644 --- a/src/java/org/apache/cassandra/db/HintedHandOffManager.java +++ b/src/java/org/apache/cassandra/db/HintedHandOffManager.java @@ -391,7 +391,9 @@ public class HintedHandOffManager implements HintedHandOffManagerMBean { Token<?> token = StorageService.getPartitioner().getTokenFactory().fromByteArray(row.key.key); InetAddress target = StorageService.instance.getTokenMetadata().getEndpoint(token); - scheduleHintDelivery(target); + // token may have since been removed (in which case we have just read back a tombstone) + if (target != null) + scheduleHintDelivery(target); } if (logger_.isDebugEnabled())