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/01/03 23:52:57 UTC
git commit: Fix dropping columns in trunk
Updated Branches:
refs/heads/trunk b65481b1d -> 15963c80f
Fix dropping columns in trunk
patch by Mikhail Stepura; reviewed by Aleksey Yeschenko for
CASSANDRA-6520
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/15963c80
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/15963c80
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/15963c80
Branch: refs/heads/trunk
Commit: 15963c80fffa2f4a158e1ec3c3fe3c5427c41365
Parents: b65481b
Author: Aleksey Yeschenko <al...@apache.org>
Authored: Sat Jan 4 01:51:46 2014 +0300
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Sat Jan 4 01:51:46 2014 +0300
----------------------------------------------------------------------
CHANGES.txt | 3 ++-
src/java/org/apache/cassandra/db/CFRowAdder.java | 10 +++++++++-
2 files changed, 11 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/15963c80/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 7cc2929..79957e5 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -16,7 +16,8 @@
* Batch read from OTC's queue and cleanup (CASSANDRA-1632)
* Secondary index support for collections (CASSANDRA-4511)
* SSTable metadata(Stats.db) format change (CASSANDRA-6356)
- * Push composites support in the storage engine (CASSANDRA-5417)
+ * Push composites support in the storage engine
+ (CASSANDRA-5417, CASSANDRA-6520)
* Add snapshot space used to cfstats (CASSANDRA-6231)
* Add cardinality estimator for key count estimation (CASSANDRA-5906)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/15963c80/src/java/org/apache/cassandra/db/CFRowAdder.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/CFRowAdder.java b/src/java/org/apache/cassandra/db/CFRowAdder.java
index 4247822..097f6aa 100644
--- a/src/java/org/apache/cassandra/db/CFRowAdder.java
+++ b/src/java/org/apache/cassandra/db/CFRowAdder.java
@@ -22,6 +22,7 @@ import org.apache.cassandra.config.ColumnDefinition;
import org.apache.cassandra.db.composites.CellName;
import org.apache.cassandra.db.composites.Composite;
import org.apache.cassandra.db.marshal.AbstractType;
+import org.apache.cassandra.db.marshal.CollectionType;
import org.apache.cassandra.db.marshal.MapType;
import org.apache.cassandra.utils.ByteBufferUtil;
@@ -73,9 +74,16 @@ public class CFRowAdder
private CFRowAdder add(CellName name, ColumnDefinition def, Object value)
{
if (value == null)
+ {
cf.addColumn(new DeletedCell(name, ldt, timestamp));
+ }
else
- cf.addColumn(new Cell(name, ((AbstractType)def.type).decompose(value), timestamp));
+ {
+ AbstractType valueType = def.type.isCollection()
+ ? ((CollectionType) def.type).valueComparator()
+ : def.type;
+ cf.addColumn(new Cell(name, valueType.decompose(value), timestamp));
+ }
return this;
}
}