You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by jb...@apache.org on 2012/06/14 23:21:43 UTC
[3/9] git commit: move hint liveness check to beginning of loop
move hint liveness check to beginning of loop
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/33f1bacb
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/33f1bacb
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/33f1bacb
Branch: refs/heads/trunk
Commit: 33f1bacbf76d555ade8900ac235f54b5738445de
Parents: 1280c6c
Author: Jonathan Ellis <jb...@apache.org>
Authored: Thu Jun 14 16:20:43 2012 -0500
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Thu Jun 14 16:20:43 2012 -0500
----------------------------------------------------------------------
.../apache/cassandra/db/HintedHandOffManager.java | 16 +++++++-------
1 files changed, 8 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/33f1bacb/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 c7b160d..425ea33 100644
--- a/src/java/org/apache/cassandra/db/HintedHandOffManager.java
+++ b/src/java/org/apache/cassandra/db/HintedHandOffManager.java
@@ -318,6 +318,14 @@ public class HintedHandOffManager implements HintedHandOffManagerMBean
page:
for (IColumn hint : hintsPage.getSortedColumns())
{
+ // Skip tombstones:
+ // if we iterate quickly enough, it's possible that we could request a new page in the same millisecond
+ // in which the local deletion timestamp was generated on the last column in the old page, in which
+ // case the hint will have no columns (since it's deleted) but will still be included in the resultset
+ // since (even with gcgs=0) it's still a "relevant" tombstone.
+ if (!hint.isLive())
+ continue;
+
startColumn = hint.name();
for (IColumn subColumn : hint.getSubColumns())
{
@@ -330,14 +338,6 @@ public class HintedHandOffManager implements HintedHandOffManagerMBean
}
}
- // Skip tombstones:
- // if we iterate quickly enough, it's possible that we could request a new page in the same millisecond
- // in which the local deletion timestamp was generated on the last column in the old page, in which
- // case the hint will have no columns (since it's deleted) but will still be included in the resultset
- // since (even with gcgs=0) it's still a "relevant" tombstone.
- if (!hint.isLive())
- continue;
-
IColumn versionColumn = hint.getSubColumn(ByteBufferUtil.bytes("version"));
IColumn tableColumn = hint.getSubColumn(ByteBufferUtil.bytes("table"));
IColumn keyColumn = hint.getSubColumn(ByteBufferUtil.bytes("key"));