You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by sl...@apache.org on 2013/11/05 16:35:30 UTC

[1/2] git commit: Fix serialization bug in PagedRangeCommand

Updated Branches:
  refs/heads/trunk 1475d9254 -> f8138a3c2


Fix serialization bug in PagedRangeCommand

patch by slebresne; reviewed by iamaleksey for CASSANDRA-6299


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/20793b06
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/20793b06
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/20793b06

Branch: refs/heads/trunk
Commit: 20793b069f553c60f0e2c8874f4ae884ea87ea6b
Parents: c28fe78
Author: Sylvain Lebresne <sy...@datastax.com>
Authored: Tue Nov 5 16:32:11 2013 +0100
Committer: Sylvain Lebresne <sy...@datastax.com>
Committed: Tue Nov 5 16:32:11 2013 +0100

----------------------------------------------------------------------
 CHANGES.txt                                            |  1 +
 .../org/apache/cassandra/db/PagedRangeCommand.java     | 13 +++++++++++--
 .../org/apache/cassandra/db/RangeSliceCommand.java     |  2 +-
 3 files changed, 13 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/20793b06/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 6e9ea33..ddf3e05 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -14,6 +14,7 @@
  * New CQL-aware SSTableWriter (CASSANDRA-5894)
  * Reject CAS operation when the protocol v1 is used (CASSANDRA-6270)
  * Correctly throw error when frame too large (CASSANDRA-5981)
+ * Fix serialization bug in PagedRange with 2ndary indexes (CASSANDRA-6299)
 Merged from 1.2:
  * add non-jamm path for cached statements (CASSANDRA-6293)
  * (Hadoop) Require CFRR batchSize to be at least 2 (CASSANDRA-6114)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/20793b06/src/java/org/apache/cassandra/db/PagedRangeCommand.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/PagedRangeCommand.java b/src/java/org/apache/cassandra/db/PagedRangeCommand.java
index b1e2c39..e152f43 100644
--- a/src/java/org/apache/cassandra/db/PagedRangeCommand.java
+++ b/src/java/org/apache/cassandra/db/PagedRangeCommand.java
@@ -111,6 +111,12 @@ public class PagedRangeCommand extends AbstractRangeCommand
             return cfs.getRangeSlice(exFilter);
     }
 
+    @Override
+    public String toString()
+    {
+        return String.format("PagedRange(%s, %s, %d, %s, %s, %s, %s, %s, %d)", keyspace, columnFamily, timestamp, keyRange, predicate, start, stop, rowFilter, limit);
+    }
+
     private static class Serializer implements IVersionedSerializer<PagedRangeCommand>
     {
         public void serialize(PagedRangeCommand cmd, DataOutput out, int version) throws IOException
@@ -134,7 +140,7 @@ public class PagedRangeCommand extends AbstractRangeCommand
             {
                 ByteBufferUtil.writeWithShortLength(expr.column_name, out);
                 out.writeInt(expr.op.getValue());
-                ByteBufferUtil.writeWithLength(expr.value, out);
+                ByteBufferUtil.writeWithShortLength(expr.value, out);
             }
 
             out.writeInt(cmd.limit);
@@ -179,12 +185,15 @@ public class PagedRangeCommand extends AbstractRangeCommand
 
             size += SliceQueryFilter.serializer.serializedSize((SliceQueryFilter)cmd.predicate, version);
 
+            size += TypeSizes.NATIVE.sizeofWithShortLength(cmd.start);
+            size += TypeSizes.NATIVE.sizeofWithShortLength(cmd.stop);
+
             size += TypeSizes.NATIVE.sizeof(cmd.rowFilter.size());
             for (IndexExpression expr : cmd.rowFilter)
             {
                 size += TypeSizes.NATIVE.sizeofWithShortLength(expr.column_name);
                 size += TypeSizes.NATIVE.sizeof(expr.op.getValue());
-                size += TypeSizes.NATIVE.sizeofWithLength(expr.value);
+                size += TypeSizes.NATIVE.sizeofWithShortLength(expr.value);
             }
 
             size += TypeSizes.NATIVE.sizeof(cmd.limit);

http://git-wip-us.apache.org/repos/asf/cassandra/blob/20793b06/src/java/org/apache/cassandra/db/RangeSliceCommand.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/RangeSliceCommand.java b/src/java/org/apache/cassandra/db/RangeSliceCommand.java
index c0cfb12..4aa1595 100644
--- a/src/java/org/apache/cassandra/db/RangeSliceCommand.java
+++ b/src/java/org/apache/cassandra/db/RangeSliceCommand.java
@@ -310,7 +310,7 @@ class RangeSliceCommandSerializer implements IVersionedSerializer<RangeSliceComm
             {
                 size += TypeSizes.NATIVE.sizeofWithShortLength(expr.column_name);
                 size += TypeSizes.NATIVE.sizeof(expr.op.getValue());
-                size += TypeSizes.NATIVE.sizeofWithLength(expr.value);
+                size += TypeSizes.NATIVE.sizeofWithShortLength(expr.value);
             }
         }
         size += AbstractBounds.serializer.serializedSize(rsc.keyRange, version);


[2/2] git commit: Merge branch 'cassandra-2.0' into trunk

Posted by sl...@apache.org.
Merge branch 'cassandra-2.0' into trunk

Conflicts:
	src/java/org/apache/cassandra/db/PagedRangeCommand.java
	src/java/org/apache/cassandra/db/RangeSliceCommand.java


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/f8138a3c
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/f8138a3c
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/f8138a3c

Branch: refs/heads/trunk
Commit: f8138a3c2e93d4dbc92aee6455892c6acc8a010c
Parents: 1475d92 20793b0
Author: Sylvain Lebresne <sy...@datastax.com>
Authored: Tue Nov 5 16:35:19 2013 +0100
Committer: Sylvain Lebresne <sy...@datastax.com>
Committed: Tue Nov 5 16:35:19 2013 +0100

----------------------------------------------------------------------
 CHANGES.txt                                            |  1 +
 .../org/apache/cassandra/db/PagedRangeCommand.java     | 13 +++++++++++--
 .../org/apache/cassandra/db/RangeSliceCommand.java     |  2 +-
 3 files changed, 13 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/f8138a3c/CHANGES.txt
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/cassandra/blob/f8138a3c/src/java/org/apache/cassandra/db/PagedRangeCommand.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/db/PagedRangeCommand.java
index d813036,e152f43..0e24859
--- a/src/java/org/apache/cassandra/db/PagedRangeCommand.java
+++ b/src/java/org/apache/cassandra/db/PagedRangeCommand.java
@@@ -130,9 -138,9 +136,9 @@@ public class PagedRangeCommand extends 
              out.writeInt(cmd.rowFilter.size());
              for (IndexExpression expr : cmd.rowFilter)
              {
 -                ByteBufferUtil.writeWithShortLength(expr.column_name, out);
 -                out.writeInt(expr.op.getValue());
 +                ByteBufferUtil.writeWithShortLength(expr.column, out);
 +                out.writeInt(expr.operator.ordinal());
-                 ByteBufferUtil.writeWithLength(expr.value, out);
+                 ByteBufferUtil.writeWithShortLength(expr.value, out);
              }
  
              out.writeInt(cmd.limit);
@@@ -180,9 -191,9 +189,9 @@@
              size += TypeSizes.NATIVE.sizeof(cmd.rowFilter.size());
              for (IndexExpression expr : cmd.rowFilter)
              {
 -                size += TypeSizes.NATIVE.sizeofWithShortLength(expr.column_name);
 -                size += TypeSizes.NATIVE.sizeof(expr.op.getValue());
 +                size += TypeSizes.NATIVE.sizeofWithShortLength(expr.column);
 +                size += TypeSizes.NATIVE.sizeof(expr.operator.ordinal());
-                 size += TypeSizes.NATIVE.sizeofWithLength(expr.value);
+                 size += TypeSizes.NATIVE.sizeofWithShortLength(expr.value);
              }
  
              size += TypeSizes.NATIVE.sizeof(cmd.limit);

http://git-wip-us.apache.org/repos/asf/cassandra/blob/f8138a3c/src/java/org/apache/cassandra/db/RangeSliceCommand.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/db/RangeSliceCommand.java
index 28b86f8,4aa1595..a9a48a0
--- a/src/java/org/apache/cassandra/db/RangeSliceCommand.java
+++ b/src/java/org/apache/cassandra/db/RangeSliceCommand.java
@@@ -227,9 -308,9 +227,9 @@@ class RangeSliceCommandSerializer imple
              size += TypeSizes.NATIVE.sizeof(rsc.rowFilter.size());
              for (IndexExpression expr : rsc.rowFilter)
              {
 -                size += TypeSizes.NATIVE.sizeofWithShortLength(expr.column_name);
 -                size += TypeSizes.NATIVE.sizeof(expr.op.getValue());
 +                size += TypeSizes.NATIVE.sizeofWithShortLength(expr.column);
 +                size += TypeSizes.NATIVE.sizeof(expr.operator.ordinal());
-                 size += TypeSizes.NATIVE.sizeofWithLength(expr.value);
+                 size += TypeSizes.NATIVE.sizeofWithShortLength(expr.value);
              }
          }
          size += AbstractBounds.serializer.serializedSize(rsc.keyRange, version);