You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by al...@apache.org on 2013/12/22 18:11:13 UTC

[1/4] git commit: Validate SliceRange start and finish lengths

Updated Branches:
  refs/heads/trunk d0ab7519c -> 34235ad7b


Validate SliceRange start and finish lengths

patch by Ben Bromhead; reviewed by Aleksey Yeschenko for CASSANDRA-6521


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

Branch: refs/heads/trunk
Commit: a58a95ddbb438cf8a2980d71b5cdbc2e63642685
Parents: 9244923
Author: Aleksey Yeschenko <al...@apache.org>
Authored: Sun Dec 22 20:03:05 2013 +0300
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Sun Dec 22 20:03:05 2013 +0300

----------------------------------------------------------------------
 CHANGES.txt                                             |  1 +
 .../org/apache/cassandra/thrift/ThriftValidation.java   | 12 +++++++++---
 2 files changed, 10 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/a58a95dd/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 6f6c131..4eee4ee 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -4,6 +4,7 @@
  * Don't resubmit counter mutation runnables internally (CASSANDRA-6427)
  * Don't drop local mutations without a trace (CASSANDRA-6510)
  * Don't allow null max_hint_window_in_ms (CASSANDRA-6419)
+ * Validate SliceRange start and finish lengths (CASSANDRA-6521)
 
 
 1.2.13

http://git-wip-us.apache.org/repos/asf/cassandra/blob/a58a95dd/src/java/org/apache/cassandra/thrift/ThriftValidation.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/thrift/ThriftValidation.java b/src/java/org/apache/cassandra/thrift/ThriftValidation.java
index 5882e27..442ea4e 100644
--- a/src/java/org/apache/cassandra/thrift/ThriftValidation.java
+++ b/src/java/org/apache/cassandra/thrift/ThriftValidation.java
@@ -228,6 +228,15 @@ public class ThriftValidation
 
     public static void validateRange(CFMetaData metadata, ColumnParent column_parent, SliceRange range) throws org.apache.cassandra.exceptions.InvalidRequestException
     {
+        if (range.count < 0)
+            throw new org.apache.cassandra.exceptions.InvalidRequestException("get_slice requires non-negative count");
+
+        if (range.start.remaining() > IColumn.MAX_NAME_LENGTH)
+            throw new org.apache.cassandra.exceptions.InvalidRequestException("range start length cannot be larger than " + IColumn.MAX_NAME_LENGTH);
+
+        if (range.finish.remaining() > IColumn.MAX_NAME_LENGTH)
+            throw new org.apache.cassandra.exceptions.InvalidRequestException("range finish length cannot be larger than " + IColumn.MAX_NAME_LENGTH);
+
         AbstractType<?> comparator = metadata.getComparatorFor(column_parent.super_column);
         try
         {
@@ -239,9 +248,6 @@ public class ThriftValidation
             throw new org.apache.cassandra.exceptions.InvalidRequestException(e.getMessage());
         }
 
-        if (range.count < 0)
-            throw new org.apache.cassandra.exceptions.InvalidRequestException("get_slice requires non-negative count");
-
         Comparator<ByteBuffer> orderedComparator = range.isReversed() ? comparator.reverseComparator : comparator;
         if (range.start.remaining() > 0
             && range.finish.remaining() > 0


[4/4] git commit: Fix merge

Posted by al...@apache.org.
Fix merge


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

Branch: refs/heads/trunk
Commit: 34235ad7b5722a5a5ee9680ba3a2d563a67ecc6f
Parents: 85863e2
Author: Aleksey Yeschenko <al...@apache.org>
Authored: Sun Dec 22 20:10:59 2013 +0300
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Sun Dec 22 20:10:59 2013 +0300

----------------------------------------------------------------------
 src/java/org/apache/cassandra/thrift/ThriftValidation.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/34235ad7/src/java/org/apache/cassandra/thrift/ThriftValidation.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/thrift/ThriftValidation.java b/src/java/org/apache/cassandra/thrift/ThriftValidation.java
index b597203..d491636 100644
--- a/src/java/org/apache/cassandra/thrift/ThriftValidation.java
+++ b/src/java/org/apache/cassandra/thrift/ThriftValidation.java
@@ -268,7 +268,7 @@ public class ThriftValidation
         if (range.count < 0)
             throw new org.apache.cassandra.exceptions.InvalidRequestException("get_slice requires non-negative count");
 
-        int maxNameLength = org.apache.cassandra.db.Column.MAX_NAME_LENGTH;
+        int maxNameLength = Cell.MAX_NAME_LENGTH;
         if (range.start.remaining() > maxNameLength)
             throw new org.apache.cassandra.exceptions.InvalidRequestException("range start length cannot be larger than " + maxNameLength);
         if (range.finish.remaining() > maxNameLength)


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

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


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

Branch: refs/heads/trunk
Commit: 85863e273ecc5808fc9085b0f8f63aa02c4be456
Parents: d0ab751 03f4c92
Author: Aleksey Yeschenko <al...@apache.org>
Authored: Sun Dec 22 20:09:57 2013 +0300
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Sun Dec 22 20:09:57 2013 +0300

----------------------------------------------------------------------
 CHANGES.txt                                             |  1 +
 .../org/apache/cassandra/thrift/ThriftValidation.java   | 12 +++++++++---
 2 files changed, 10 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


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

http://git-wip-us.apache.org/repos/asf/cassandra/blob/85863e27/src/java/org/apache/cassandra/thrift/ThriftValidation.java
----------------------------------------------------------------------


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

Posted by al...@apache.org.
Merge branch 'cassandra-1.2' into cassandra-2.0

Conflicts:
	CHANGES.txt
	src/java/org/apache/cassandra/thrift/ThriftValidation.java


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

Branch: refs/heads/trunk
Commit: 03f4c92d14ec7bbdac7524f531423c79015c8061
Parents: b5c9b49 a58a95d
Author: Aleksey Yeschenko <al...@apache.org>
Authored: Sun Dec 22 20:09:18 2013 +0300
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Sun Dec 22 20:09:18 2013 +0300

----------------------------------------------------------------------
 CHANGES.txt                                             |  1 +
 .../org/apache/cassandra/thrift/ThriftValidation.java   | 12 +++++++++---
 2 files changed, 10 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/03f4c92d/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index b80c821,4eee4ee..f38b58f
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -34,50 -28,9 +34,51 @@@ Merged from 1.2
     (CASSANDRA-6413)
   * (Hadoop) add describe_local_ring (CASSANDRA-6268)
   * Fix handling of concurrent directory creation failure (CASSANDRA-6459)
 + * Allow executing CREATE statements multiple times (CASSANDRA-6471)
 + * Don't send confusing info with timeouts (CASSANDRA-6491)
 + * Don't resubmit counter mutation runnables internally (CASSANDRA-6427)
 + * Don't drop local mutations without a trace (CASSANDRA-6510)
 + * Don't allow null max_hint_window_in_ms (CASSANDRA-6419)
++ * Validate SliceRange start and finish lengths (CASSANDRA-6521)
  
  
 -1.2.12
 +2.0.3
 + * Fix FD leak on slice read path (CASSANDRA-6275)
 + * Cancel read meter task when closing SSTR (CASSANDRA-6358)
 + * free off-heap IndexSummary during bulk (CASSANDRA-6359)
 + * Recover from IOException in accept() thread (CASSANDRA-6349)
 + * Improve Gossip tolerance of abnormally slow tasks (CASSANDRA-6338)
 + * Fix trying to hint timed out counter writes (CASSANDRA-6322)
 + * Allow restoring specific columnfamilies from archived CL (CASSANDRA-4809)
 + * Avoid flushing compaction_history after each operation (CASSANDRA-6287)
 + * Fix repair assertion error when tombstones expire (CASSANDRA-6277)
 + * Skip loading corrupt key cache (CASSANDRA-6260)
 + * Fixes for compacting larger-than-memory rows (CASSANDRA-6274)
 + * Compact hottest sstables first and optionally omit coldest from
 +   compaction entirely (CASSANDRA-6109)
 + * Fix modifying column_metadata from thrift (CASSANDRA-6182)
 + * cqlsh: fix LIST USERS output (CASSANDRA-6242)
 + * Add IRequestSink interface (CASSANDRA-6248)
 + * Update memtable size while flushing (CASSANDRA-6249)
 + * Provide hooks around CQL2/CQL3 statement execution (CASSANDRA-6252)
 + * Require Permission.SELECT for CAS updates (CASSANDRA-6247)
 + * 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)
 + * Fix CQL3 table validation in Thrift (CASSANDRA-6140)
 + * Fix bug missing results with IN clauses (CASSANDRA-6327)
 + * Fix paging with reversed slices (CASSANDRA-6343)
 + * Set minTimestamp correctly to be able to drop expired sstables (CASSANDRA-6337)
 + * Support NaN and Infinity as float literals (CASSANDRA-6003)
 + * Remove RF from nodetool ring output (CASSANDRA-6289)
 + * Fix attempting to flush empty rows (CASSANDRA-6374)
 + * Fix potential out of bounds exception when paging (CASSANDRA-6333)
 +Merged from 1.2:
 + * Optimize FD phi calculation (CASSANDRA-6386)
 + * Improve initial FD phi estimate when starting up (CASSANDRA-6385)
 + * Don't list CQL3 table in CLI describe even if named explicitely 
 +   (CASSANDRA-5750)
   * Invalidate row cache when dropping CF (CASSANDRA-6351)
   * 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/03f4c92d/src/java/org/apache/cassandra/thrift/ThriftValidation.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/thrift/ThriftValidation.java
index 3a831f4,442ea4e..f2efc03
--- a/src/java/org/apache/cassandra/thrift/ThriftValidation.java
+++ b/src/java/org/apache/cassandra/thrift/ThriftValidation.java
@@@ -268,7 -228,16 +268,16 @@@ public class ThriftValidatio
  
      public static void validateRange(CFMetaData metadata, ColumnParent column_parent, SliceRange range) throws org.apache.cassandra.exceptions.InvalidRequestException
      {
+         if (range.count < 0)
+             throw new org.apache.cassandra.exceptions.InvalidRequestException("get_slice requires non-negative count");
+ 
 -        if (range.start.remaining() > IColumn.MAX_NAME_LENGTH)
 -            throw new org.apache.cassandra.exceptions.InvalidRequestException("range start length cannot be larger than " + IColumn.MAX_NAME_LENGTH);
++        int maxNameLength = org.apache.cassandra.db.Column.MAX_NAME_LENGTH;
++        if (range.start.remaining() > maxNameLength)
++            throw new org.apache.cassandra.exceptions.InvalidRequestException("range start length cannot be larger than " + maxNameLength);
++        if (range.finish.remaining() > maxNameLength)
++            throw new org.apache.cassandra.exceptions.InvalidRequestException("range finish length cannot be larger than " + maxNameLength);
+ 
 -        if (range.finish.remaining() > IColumn.MAX_NAME_LENGTH)
 -            throw new org.apache.cassandra.exceptions.InvalidRequestException("range finish length cannot be larger than " + IColumn.MAX_NAME_LENGTH);
 -
 -        AbstractType<?> comparator = metadata.getComparatorFor(column_parent.super_column);
 +        AbstractType<?> comparator = SuperColumns.getComparatorFor(metadata, column_parent.super_column);
          try
          {
              comparator.validate(range.start);