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 2014/08/20 01:40:14 UTC
[1/5] git commit: Validate empty cell names from counter updates
Repository: cassandra
Updated Branches:
refs/heads/trunk 7be2d0bbf -> 504d3c515
Validate empty cell names from counter updates
patch by Aleksey Yeschenko; reviewed by Jeremiah Jordan for
CASSANDRA-7798
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/62642fa9
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/62642fa9
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/62642fa9
Branch: refs/heads/trunk
Commit: 62642fa97e4a1bd4f3b9d253dd939da61ac2740f
Parents: 48d6950
Author: Aleksey Yeschenko <al...@apache.org>
Authored: Wed Aug 20 02:22:01 2014 +0300
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Wed Aug 20 02:25:17 2014 +0300
----------------------------------------------------------------------
CHANGES.txt | 1 +
src/java/org/apache/cassandra/cql3/Constants.java | 4 ++--
src/java/org/apache/cassandra/cql3/UpdateParameters.java | 6 ++++++
3 files changed, 9 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/62642fa9/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index db5fa3a..7fb6de9 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
1.2.19
+ * Validate empty cell names from counter updates (CASSANDRA-7798)
* Improve PasswordAuthenticator default super user setup (CASSANDRA-7788)
* Remove duplicates from StorageService.getJoiningNodes (CASSANDRA-7478)
* Clone token map outside of hot gossip loops (CASSANDRA-7758)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/62642fa9/src/java/org/apache/cassandra/cql3/Constants.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/Constants.java b/src/java/org/apache/cassandra/cql3/Constants.java
index 4c9d856..1c7feaf 100644
--- a/src/java/org/apache/cassandra/cql3/Constants.java
+++ b/src/java/org/apache/cassandra/cql3/Constants.java
@@ -326,7 +326,7 @@ public abstract class Constants
throw new InvalidRequestException("Invalid null value for counter increment");
long increment = ByteBufferUtil.toLong(bytes);
ByteBuffer cname = columnName == null ? prefix.build() : prefix.add(columnName.key).build();
- cf.addCounter(new QueryPath(cf.metadata().cfName, null, cname), increment);
+ cf.addColumn(params.makeCounter(cname, increment));
}
}
@@ -348,7 +348,7 @@ public abstract class Constants
throw new InvalidRequestException("The negation of " + increment + " overflows supported counter precision (signed 8 bytes integer)");
ByteBuffer cname = columnName == null ? prefix.build() : prefix.add(columnName.key).build();
- cf.addCounter(new QueryPath(cf.metadata().cfName, null, cname), -increment);
+ cf.addColumn(params.makeCounter(cname, -increment));
}
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/62642fa9/src/java/org/apache/cassandra/cql3/UpdateParameters.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/UpdateParameters.java b/src/java/org/apache/cassandra/cql3/UpdateParameters.java
index b938fea..3d87598 100644
--- a/src/java/org/apache/cassandra/cql3/UpdateParameters.java
+++ b/src/java/org/apache/cassandra/cql3/UpdateParameters.java
@@ -57,6 +57,12 @@ public class UpdateParameters
: new Column(name, value, timestamp);
}
+ public Column makeCounter(ByteBuffer name, long delta) throws InvalidRequestException
+ {
+ QueryProcessor.validateColumnName(name);
+ return new CounterUpdateColumn(name, delta, System.currentTimeMillis());
+ }
+
public Column makeTombstone(ByteBuffer name) throws InvalidRequestException
{
QueryProcessor.validateColumnName(name);
[4/5] git commit: Merge branch 'cassandra-2.1.0' into cassandra-2.1
Posted by al...@apache.org.
Merge branch 'cassandra-2.1.0' into cassandra-2.1
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/558bb724
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/558bb724
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/558bb724
Branch: refs/heads/trunk
Commit: 558bb7246ac56ee461b7dfc791da5876cc61ab8d
Parents: 0718556 af188ed
Author: Aleksey Yeschenko <al...@apache.org>
Authored: Wed Aug 20 02:39:41 2014 +0300
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Wed Aug 20 02:39:41 2014 +0300
----------------------------------------------------------------------
CHANGES.txt | 2 ++
src/java/org/apache/cassandra/cql3/Constants.java | 4 ++--
src/java/org/apache/cassandra/cql3/UpdateParameters.java | 7 +++++++
3 files changed, 11 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/558bb724/CHANGES.txt
----------------------------------------------------------------------
[2/5] 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/cql3/Constants.java
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/ecf1baeb
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/ecf1baeb
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/ecf1baeb
Branch: refs/heads/trunk
Commit: ecf1baebbe783854c6f153449cf71038d2f032fb
Parents: 31d5193 62642fa
Author: Aleksey Yeschenko <al...@apache.org>
Authored: Wed Aug 20 02:31:45 2014 +0300
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Wed Aug 20 02:31:45 2014 +0300
----------------------------------------------------------------------
CHANGES.txt | 1 +
src/java/org/apache/cassandra/cql3/Constants.java | 4 ++--
src/java/org/apache/cassandra/cql3/UpdateParameters.java | 6 ++++++
3 files changed, 9 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/ecf1baeb/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 1de5b33,7fb6de9..304d9bf
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,62 -1,5 +1,63 @@@
-1.2.19
+2.0.10
+ * Throw InvalidRequestException when queries contain relations on entire
+ collection columns (CASSANDRA-7506)
+ * Fix PRSI handling of CQL3 row markers for row cleanup (CASSANDRA-7787)
+ * (cqlsh) enable CTRL-R history search with libedit (CASSANDRA-7577)
+ * Fix dropping collection when it's the last regular column (CASSANDRA-7744)
+ * Properly reject operations on list index with conditions (CASSANDRA-7499)
+ * (Hadoop) allow ACFRW to limit nodes to local DC (CASSANDRA-7252)
+ * (cqlsh) Wait up to 10 sec for a tracing session (CASSANDRA-7222)
+ * Fix NPE in FileCacheService.sizeInBytes (CASSANDRA-7756)
+ * (cqlsh) cqlsh should automatically disable tracing when selecting
+ from system_traces (CASSANDRA-7641)
+ * (Hadoop) Add CqlOutputFormat (CASSANDRA-6927)
+ * Don't depend on cassandra config for nodetool ring (CASSANDRA-7508)
+ * (cqlsh) Fix failing cqlsh formatting tests (CASSANDRA-7703)
+ * Fix MS expiring map timeout for Paxos messages (CASSANDRA-7752)
+ * Do not flush on truncate if durable_writes is false (CASSANDRA-7750)
+ * Give CRR a default input_cql Statement (CASSANDRA-7226)
+ * Better error message when adding a collection with the same name
+ than a previously dropped one (CASSANDRA-6276)
+ * Fix validation when adding static columns (CASSANDRA-7730)
+ * (Thrift) fix range deletion of supercolumns (CASSANDRA-7733)
+ * Fix potential AssertionError in RangeTombstoneList (CASSANDRA-7700)
+ * Validate arguments of blobAs* functions (CASSANDRA-7707)
+ * Fix potential AssertionError with 2ndary indexes (CASSANDRA-6612)
+ * Avoid logging CompactionInterrupted at ERROR (CASSANDRA-7694)
+ * Minor leak in sstable2jon (CASSANDRA-7709)
+ * Add cassandra.auto_bootstrap system property (CASSANDRA-7650)
+ * Remove CqlPagingRecordReader/CqlPagingInputFormat (CASSANDRA-7570)
+ * Fix IncompatibleClassChangeError from hadoop2 (CASSANDRA-7229)
+ * Add 'nodetool sethintedhandoffthrottlekb' (CASSANDRA-7635)
+ * Update java driver (for hadoop) (CASSANDRA-7618)
+ * Fix truncate to always flush (CASSANDRA-7511)
+ * Remove shuffle and taketoken (CASSANDRA-7601)
+ * Switch liveRatio-related log messages to DEBUG (CASSANDRA-7467)
+ * (cqlsh) Add tab-completion for CREATE/DROP USER IF [NOT] EXISTS (CASSANDRA-7611)
+ * Always merge ranges owned by a single node (CASSANDRA-6930)
+ * Pig support for hadoop CqlInputFormat (CASSANDRA-6454)
+ * Fix ReversedType(DateType) mapping to native protocol (CASSANDRA-7576)
+ * (Windows) force range-based repair to non-sequential mode (CASSANDRA-7541)
+ * Fix range merging when DES scores are zero (CASSANDRA-7535)
+ * Warn when SSL certificates have expired (CASSANDRA-7528)
+ * Workaround JVM NPE on JMX bind failure (CASSANDRA-7254)
+ * Fix race in FileCacheService RemovalListener (CASSANDRA-7278)
+ * Fix inconsistent use of consistencyForCommit that allowed LOCAL_QUORUM
+ operations to incorrect become full QUORUM (CASSANDRA-7345)
+ * Properly handle unrecognized opcodes and flags (CASSANDRA-7440)
+ * (Hadoop) close CqlRecordWriter clients when finished (CASSANDRA-7459)
+ * Make sure high level sstables get compacted (CASSANDRA-7414)
+ * Fix AssertionError when using empty clustering columns and static columns
+ (CASSANDRA-7455)
+ * Add inter_dc_stream_throughput_outbound_megabits_per_sec (CASSANDRA-6596)
+ * Add option to disable STCS in L0 (CASSANDRA-6621)
+ * Fix error when doing reversed queries with static columns (CASSANDRA-7490)
+ * Backport CASSNADRA-3569/CASSANDRA-6747 (CASSANDRA-7560)
+ * Track max/min timestamps for range tombstones (CASSANDRA-7647)
+ * Fix NPE when listing saved caches dir (CASSANDRA-7632)
+ * Fix sstableloader unable to connect encrypted node (CASSANDRA-7585)
+Merged from 1.2:
+ * Validate empty cell names from counter updates (CASSANDRA-7798)
* Improve PasswordAuthenticator default super user setup (CASSANDRA-7788)
* Remove duplicates from StorageService.getJoiningNodes (CASSANDRA-7478)
* Clone token map outside of hot gossip loops (CASSANDRA-7758)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/ecf1baeb/src/java/org/apache/cassandra/cql3/Constants.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/cql3/Constants.java
index 4ea6c2d,1c7feaf..5189517
--- a/src/java/org/apache/cassandra/cql3/Constants.java
+++ b/src/java/org/apache/cassandra/cql3/Constants.java
@@@ -322,9 -325,8 +322,9 @@@ public abstract class Constant
if (bytes == null)
throw new InvalidRequestException("Invalid null value for counter increment");
long increment = ByteBufferUtil.toLong(bytes);
+ prefix = maybeUpdatePrefix(cf.metadata(), prefix);
ByteBuffer cname = columnName == null ? prefix.build() : prefix.add(columnName.key).build();
- cf.addCounter(cname, increment);
+ cf.addColumn(params.makeCounter(cname, increment));
}
}
@@@ -345,9 -347,8 +345,9 @@@
if (increment == Long.MIN_VALUE)
throw new InvalidRequestException("The negation of " + increment + " overflows supported counter precision (signed 8 bytes integer)");
+ prefix = maybeUpdatePrefix(cf.metadata(), prefix);
ByteBuffer cname = columnName == null ? prefix.build() : prefix.add(columnName.key).build();
- cf.addCounter(cname, -increment);
+ cf.addColumn(params.makeCounter(cname, -increment));
}
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/ecf1baeb/src/java/org/apache/cassandra/cql3/UpdateParameters.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/cql3/UpdateParameters.java
index 0034b16,3d87598..c543d6c
--- a/src/java/org/apache/cassandra/cql3/UpdateParameters.java
+++ b/src/java/org/apache/cassandra/cql3/UpdateParameters.java
@@@ -54,13 -51,21 +54,19 @@@ public class UpdateParameter
public Column makeColumn(ByteBuffer name, ByteBuffer value) throws InvalidRequestException
{
- QueryProcessor.validateColumnName(name);
- return ttl > 0
- ? new ExpiringColumn(name, value, timestamp, ttl)
- : new Column(name, value, timestamp);
+ QueryProcessor.validateCellName(name);
+ return Column.create(name, value, timestamp, ttl, metadata);
}
+ public Column makeCounter(ByteBuffer name, long delta) throws InvalidRequestException
+ {
- QueryProcessor.validateColumnName(name);
++ QueryProcessor.validateCellName(name);
+ return new CounterUpdateColumn(name, delta, System.currentTimeMillis());
+ }
+
public Column makeTombstone(ByteBuffer name) throws InvalidRequestException
{
- QueryProcessor.validateColumnName(name);
+ QueryProcessor.validateCellName(name);
return new DeletedColumn(name, localDeletionTime, timestamp);
}
[5/5] git commit: Merge branch 'cassandra-2.1' into trunk
Posted by al...@apache.org.
Merge branch 'cassandra-2.1' into trunk
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/504d3c51
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/504d3c51
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/504d3c51
Branch: refs/heads/trunk
Commit: 504d3c515418a81a6dcec2970585ba88a42badc9
Parents: 7be2d0b 558bb72
Author: Aleksey Yeschenko <al...@apache.org>
Authored: Wed Aug 20 02:40:03 2014 +0300
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Wed Aug 20 02:40:03 2014 +0300
----------------------------------------------------------------------
CHANGES.txt | 2 ++
src/java/org/apache/cassandra/cql3/Constants.java | 4 ++--
src/java/org/apache/cassandra/cql3/UpdateParameters.java | 7 +++++++
3 files changed, 11 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/504d3c51/CHANGES.txt
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/504d3c51/src/java/org/apache/cassandra/cql3/Constants.java
----------------------------------------------------------------------
[3/5] git commit: Merge branch 'cassandra-2.0' into cassandra-2.1.0
Posted by al...@apache.org.
Merge branch 'cassandra-2.0' into cassandra-2.1.0
Conflicts:
CHANGES.txt
src/java/org/apache/cassandra/cql3/Constants.java
src/java/org/apache/cassandra/cql3/UpdateParameters.java
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/af188ed3
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/af188ed3
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/af188ed3
Branch: refs/heads/trunk
Commit: af188ed364e421a56b3181c040519701cbaf0624
Parents: 1811281 ecf1bae
Author: Aleksey Yeschenko <al...@apache.org>
Authored: Wed Aug 20 02:39:00 2014 +0300
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Wed Aug 20 02:39:00 2014 +0300
----------------------------------------------------------------------
CHANGES.txt | 2 ++
src/java/org/apache/cassandra/cql3/Constants.java | 4 ++--
src/java/org/apache/cassandra/cql3/UpdateParameters.java | 7 +++++++
3 files changed, 11 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/af188ed3/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 5113057,304d9bf..183d849
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,35 -1,18 +1,37 @@@
-2.0.10
- * Throw InvalidRequestException when queries contain relations on entire
- collection columns (CASSANDRA-7506)
+2.1.0
+ * (cqlsh) Fix COPY FROM handling of null/empty primary key
+ values (CASSANDRA-7792)
+ * Fix ordering of static cells (CASSANDRA-7763)
+Merged from 2.0:
* Fix PRSI handling of CQL3 row markers for row cleanup (CASSANDRA-7787)
- * (cqlsh) enable CTRL-R history search with libedit (CASSANDRA-7577)
* Fix dropping collection when it's the last regular column (CASSANDRA-7744)
* Properly reject operations on list index with conditions (CASSANDRA-7499)
- * (Hadoop) allow ACFRW to limit nodes to local DC (CASSANDRA-7252)
++Merged from 1.2:
++ * Validate empty cell names from counter updates (CASSANDRA-7798)
+
+
+2.1.0-rc6
+ * Fix OOM issue from netty caching over time (CASSANDRA-7743)
+ * json2sstable couldn't import JSON for CQL table (CASSANDRA-7477)
+ * Invalidate all caches on table drop (CASSANDRA-7561)
+ * Skip strict endpoint selection for ranges if RF == nodes (CASSANRA-7765)
+ * Fix Thrift range filtering without 2ary index lookups (CASSANDRA-7741)
+ * Add tracing entries about concurrent range requests (CASSANDRA-7599)
+ * (cqlsh) Fix DESCRIBE for NTS keyspaces (CASSANDRA-7729)
+ * Remove netty buffer ref-counting (CASSANDRA-7735)
+ * Pass mutated cf to index updater for use by PRSI (CASSANDRA-7742)
+ * Include stress yaml example in release and deb (CASSANDRA-7717)
+ * workaround for netty issue causing corrupted data off the wire (CASSANDRA-7695)
+ * cqlsh DESC CLUSTER fails retrieving ring information (CASSANDRA-7687)
+ * Fix binding null values inside UDT (CASSANDRA-7685)
+ * Fix UDT field selection with empty fields (CASSANDRA-7670)
+ * Bogus deserialization of static cells from sstable (CASSANDRA-7684)
+ * Fix NPE on compaction leftover cleanup for dropped table (CASSANDRA-7770)
+Merged from 2.0:
* (cqlsh) Wait up to 10 sec for a tracing session (CASSANDRA-7222)
* Fix NPE in FileCacheService.sizeInBytes (CASSANDRA-7756)
- * (cqlsh) cqlsh should automatically disable tracing when selecting
- from system_traces (CASSANDRA-7641)
- * (Hadoop) Add CqlOutputFormat (CASSANDRA-6927)
- * Don't depend on cassandra config for nodetool ring (CASSANDRA-7508)
- * (cqlsh) Fix failing cqlsh formatting tests (CASSANDRA-7703)
+ * Remove duplicates from StorageService.getJoiningNodes (CASSANDRA-7478)
+ * Clone token map outside of hot gossip loops (CASSANDRA-7758)
* Fix MS expiring map timeout for Paxos messages (CASSANDRA-7752)
* Do not flush on truncate if durable_writes is false (CASSANDRA-7750)
* Give CRR a default input_cql Statement (CASSANDRA-7226)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/af188ed3/src/java/org/apache/cassandra/cql3/Constants.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/cql3/Constants.java
index 48f62dc,5189517..a8f0120
--- a/src/java/org/apache/cassandra/cql3/Constants.java
+++ b/src/java/org/apache/cassandra/cql3/Constants.java
@@@ -329,8 -322,9 +329,8 @@@ public abstract class Constant
if (bytes == null)
throw new InvalidRequestException("Invalid null value for counter increment");
long increment = ByteBufferUtil.toLong(bytes);
- prefix = maybeUpdatePrefix(cf.metadata(), prefix);
- ByteBuffer cname = columnName == null ? prefix.build() : prefix.add(columnName.key).build();
+ CellName cname = cf.getComparator().create(prefix, column);
- cf.addCounter(cname, increment);
+ cf.addColumn(params.makeCounter(cname, increment));
}
}
@@@ -351,8 -345,9 +351,8 @@@
if (increment == Long.MIN_VALUE)
throw new InvalidRequestException("The negation of " + increment + " overflows supported counter precision (signed 8 bytes integer)");
- prefix = maybeUpdatePrefix(cf.metadata(), prefix);
- ByteBuffer cname = columnName == null ? prefix.build() : prefix.add(columnName.key).build();
+ CellName cname = cf.getComparator().create(prefix, column);
- cf.addCounter(cname, -increment);
+ cf.addColumn(params.makeCounter(cname, -increment));
}
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/af188ed3/src/java/org/apache/cassandra/cql3/UpdateParameters.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/cql3/UpdateParameters.java
index 8a47536,c543d6c..d31b8d9
--- a/src/java/org/apache/cassandra/cql3/UpdateParameters.java
+++ b/src/java/org/apache/cassandra/cql3/UpdateParameters.java
@@@ -23,10 -23,10 +23,11 @@@ import java.util.List
import java.util.Map;
import org.apache.cassandra.config.CFMetaData;
-import org.apache.cassandra.cql3.statements.ColumnGroupMap;
import org.apache.cassandra.db.*;
+import org.apache.cassandra.db.composites.CellName;
+import org.apache.cassandra.db.filter.ColumnSlice;
import org.apache.cassandra.exceptions.InvalidRequestException;
-import org.apache.cassandra.utils.Pair;
++import org.apache.cassandra.utils.FBUtilities;
/**
* A simple container that simplify passing parameters for collections methods.
@@@ -52,33 -52,39 +53,39 @@@ public class UpdateParameter
this.prefetchedLists = prefetchedLists;
}
- public Column makeColumn(ByteBuffer name, ByteBuffer value) throws InvalidRequestException
+ public Cell makeColumn(CellName name, ByteBuffer value) throws InvalidRequestException
{
- QueryProcessor.validateCellName(name);
- return Column.create(name, value, timestamp, ttl, metadata);
+ QueryProcessor.validateCellName(name, metadata.comparator);
+ return AbstractCell.create(name, value, timestamp, ttl, metadata);
}
- public Column makeCounter(ByteBuffer name, long delta) throws InvalidRequestException
- {
- QueryProcessor.validateCellName(name);
- return new CounterUpdateColumn(name, delta, System.currentTimeMillis());
- }
++ public Cell makeCounter(CellName name, long delta) throws InvalidRequestException
++ {
++ QueryProcessor.validateCellName(name, metadata.comparator);
++ return new BufferCounterUpdateCell(name, delta, FBUtilities.timestampMicros());
++ }
+
- public Column makeTombstone(ByteBuffer name) throws InvalidRequestException
+ public Cell makeTombstone(CellName name) throws InvalidRequestException
{
- QueryProcessor.validateCellName(name);
- return new DeletedColumn(name, localDeletionTime, timestamp);
+ QueryProcessor.validateCellName(name, metadata.comparator);
+ return new BufferDeletedCell(name, localDeletionTime, timestamp);
}
- public RangeTombstone makeRangeTombstone(ByteBuffer start, ByteBuffer end) throws InvalidRequestException
+ public RangeTombstone makeRangeTombstone(ColumnSlice slice) throws InvalidRequestException
{
- QueryProcessor.validateCellName(start);
- QueryProcessor.validateCellName(end);
- return new RangeTombstone(start, end, timestamp, localDeletionTime);
+ QueryProcessor.validateComposite(slice.start, metadata.comparator);
+ QueryProcessor.validateComposite(slice.finish, metadata.comparator);
+ return new RangeTombstone(slice.start, slice.finish, timestamp, localDeletionTime);
}
- public RangeTombstone makeTombstoneForOverwrite(ByteBuffer start, ByteBuffer end) throws InvalidRequestException
+ public RangeTombstone makeTombstoneForOverwrite(ColumnSlice slice) throws InvalidRequestException
{
- QueryProcessor.validateCellName(start);
- QueryProcessor.validateCellName(end);
- return new RangeTombstone(start, end, timestamp - 1, localDeletionTime);
+ QueryProcessor.validateComposite(slice.start, metadata.comparator);
+ QueryProcessor.validateComposite(slice.finish, metadata.comparator);
+ return new RangeTombstone(slice.start, slice.finish, timestamp - 1, localDeletionTime);
}
- public List<Pair<ByteBuffer, Column>> getPrefetchedList(ByteBuffer rowKey, ByteBuffer cql3ColumnName)
+ public List<Cell> getPrefetchedList(ByteBuffer rowKey, ColumnIdentifier cql3ColumnName)
{
if (prefetchedLists == null)
return Collections.emptyList();