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/03/01 14:28:19 UTC
git commit: Fix insufficient validation of UPDATE queries against
counter cfs
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 <sy...@datastax.com>
Authored: Fri Mar 1 14:25:44 2013 +0100
Committer: Sylvain Lebresne <sy...@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);