You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by ty...@apache.org on 2016/07/05 16:47:54 UTC
cassandra git commit: Apply Thrift ordering to legacy remote response
where needed
Repository: cassandra
Updated Branches:
refs/heads/cassandra-3.0 a9a6e5fb1 -> 221769516
Apply Thrift ordering to legacy remote response where needed
Patch by Tyler Hobbs; reviewed by Sylvain Lebresne for CASSANDRA-12123
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/22176951
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/22176951
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/22176951
Branch: refs/heads/cassandra-3.0
Commit: 2217695166a61f576b36993b36a6bde8c8952fde
Parents: a9a6e5f
Author: Tyler Hobbs <ty...@gmail.com>
Authored: Tue Jul 5 11:45:45 2016 -0500
Committer: Tyler Hobbs <ty...@gmail.com>
Committed: Tue Jul 5 11:45:45 2016 -0500
----------------------------------------------------------------------
CHANGES.txt | 3 +++
src/java/org/apache/cassandra/db/ReadResponse.java | 8 +++++---
2 files changed, 8 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/22176951/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 2df77e1..7f8a3a1 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,7 @@
3.0.9
+ * Fix column ordering of results with static columns for Thrift requests in
+ a mixed 2.x/3.x cluster, also fix potential non-resolved duplication of
+ those static columns in query results (CASSANDRA-12123)
* Avoid digest mismatch with empty but static rows (CASSANDRA-12090)
* Fix EOF exception when altering column type (CASSANDRA-11820)
Merged from 2.2:
http://git-wip-us.apache.org/repos/asf/cassandra/blob/22176951/src/java/org/apache/cassandra/db/ReadResponse.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/ReadResponse.java b/src/java/org/apache/cassandra/db/ReadResponse.java
index a618aa5..8bd1be6 100644
--- a/src/java/org/apache/cassandra/db/ReadResponse.java
+++ b/src/java/org/apache/cassandra/db/ReadResponse.java
@@ -38,6 +38,7 @@ import org.apache.cassandra.io.util.DataInputPlus;
import org.apache.cassandra.io.util.DataOutputPlus;
import org.apache.cassandra.io.util.DataOutputBuffer;
import org.apache.cassandra.net.MessagingService;
+import org.apache.cassandra.thrift.ThriftResultsMerger;
import org.apache.cassandra.utils.ByteBufferUtil;
import org.apache.cassandra.utils.FBUtilities;
@@ -267,15 +268,16 @@ public abstract class ReadResponse
{
ImmutableBTreePartition partition = toReturn.get(idx++);
-
ClusteringIndexFilter filter = command.clusteringIndexFilter(partition.partitionKey());
// Pre-3.0, we didn't have a way to express exclusivity for non-composite comparators, so all slices were
// inclusive on both ends. If we have exclusive slice ends, we need to filter the results here.
if (!command.metadata().isCompound())
- return filter.filter(partition.sliceableUnfilteredIterator(command.columnFilter(), filter.isReversed()));
+ return ThriftResultsMerger.maybeWrap(
+ filter.filter(partition.sliceableUnfilteredIterator(command.columnFilter(), filter.isReversed())), command.nowInSec());
- return partition.unfilteredIterator(command.columnFilter(), Slices.ALL, filter.isReversed());
+ return ThriftResultsMerger.maybeWrap(
+ partition.unfilteredIterator(command.columnFilter(), Slices.ALL, filter.isReversed()), command.nowInSec());
}
};
}