Updated Branches:
  refs/heads/cassandra-1.2 d8e819386 -> 7c920b0bb

Fix insufficient validation of UPDATE queries against counter cfs

patch by slebresne; reviewed by iamaleksey for CASSANDRA-5300


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

Branch: refs/heads/cassandra-1.2
Commit: 7c920b0bb88dffca61602c849df777725cc3153c
Parents: d8e8193
Author: Sylvain Lebresne <sylv...@datastax.com>
Authored: Fri Mar 1 14:25:44 2013 +0100
Committer: Sylvain Lebresne <sylv...@datastax.com>
Committed: Fri Mar 1 14:25:44 2013 +0100

----------------------------------------------------------------------
 CHANGES.txt                                       |    2 ++
 src/java/org/apache/cassandra/cql3/Operation.java |    3 +++
 2 files changed, 5 insertions(+), 0 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/7c920b0b/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 9d0468b..231de9c 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -3,6 +3,8 @@
    not intersect the sstable (CASSANDRA-5249)
  * Don't lowercase property map keys (this breaks NTS) (CASSANDRA-5292)
  * Fix composite comparator with super columns (CASSANDRA-5287)
+ * Fix insufficient validation of UPDATE queries against counter cfs
+   (CASSANDRA-5300)
 Merged from 1.1:
  * nodetool: ability to repair specific range (CASSANDRA-5280)
  * Fix possible assertion triggered in SliceFromReadCommand (CASSANDRA-5284)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/7c920b0b/src/java/org/apache/cassandra/cql3/Operation.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/Operation.java 
b/src/java/org/apache/cassandra/cql3/Operation.java
index 90887e0..2e16cea 100644
--- a/src/java/org/apache/cassandra/cql3/Operation.java
+++ b/src/java/org/apache/cassandra/cql3/Operation.java
@@ -159,6 +159,9 @@ public abstract class Operation
         {
             Term v = value.prepare(receiver);
 
+            if (receiver.type instanceof CounterColumnType)
+                throw new InvalidRequestException(String.format("Cannot set 
the value of counter column %s (counters can only be incremented/decremented, 
not set)", receiver));
+
             if (!(receiver.type instanceof CollectionType))
                 return new Constants.Setter(receiver.kind == 
CFDefinition.Name.Kind.VALUE_ALIAS ? null : receiver.name, v);
 

Reply via email to