Author: slebresne Date: Tue May 24 16:40:43 2011 New Revision: 1127135 URL: http://svn.apache.org/viewvc?rev=1127135&view=rev Log: merger from 0.7
Modified: cassandra/branches/cassandra-0.8.0/ (props changed) cassandra/branches/cassandra-0.8.0/CHANGES.txt cassandra/branches/cassandra-0.8.0/contrib/ (props changed) cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java (props changed) cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java (props changed) cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java (props changed) cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java (props changed) cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java (props changed) cassandra/branches/cassandra-0.8.0/src/java/org/apache/cassandra/db/ColumnFamily.java cassandra/branches/cassandra-0.8.0/src/java/org/apache/cassandra/db/filter/QueryFilter.java Propchange: cassandra/branches/cassandra-0.8.0/ ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Tue May 24 16:40:43 2011 @@ -1,5 +1,5 @@ /cassandra/branches/cassandra-0.6:922689-1052356,1052358-1053452,1053454,1053456-1081914,1083000 -/cassandra/branches/cassandra-0.7:1026516-1126684 +/cassandra/branches/cassandra-0.7:1026516-1126684,1127130 /cassandra/branches/cassandra-0.7.0:1053690-1055654 /cassandra/branches/cassandra-0.8:1102793,1102850,1103861,1103886,1103922,1125005,1125622 /cassandra/tags/cassandra-0.7.0-rc3:1051699-1053689 Modified: cassandra/branches/cassandra-0.8.0/CHANGES.txt URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8.0/CHANGES.txt?rev=1127135&r1=1127134&r2=1127135&view=diff ============================================================================== --- cassandra/branches/cassandra-0.8.0/CHANGES.txt (original) +++ cassandra/branches/cassandra-0.8.0/CHANGES.txt Tue May 24 16:40:43 2011 @@ -10,6 +10,7 @@ SimpleStrategy, OldNetworkTopologyStrategy (CASSANDRA-2678) * fix exception adding validators to non-string columns (CASSANDRA-2696) * avoid instantiating DatabaseDescriptor in JDBC (CASSANDRA-2694) + * clone super columns to avoid modifying them during flush (CASSANDRA-2675) 0.8.0-rc1 Propchange: cassandra/branches/cassandra-0.8.0/contrib/ ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Tue May 24 16:40:43 2011 @@ -1,5 +1,5 @@ /cassandra/branches/cassandra-0.6/contrib:922689-1052356,1052358-1053452,1053454,1053456-1068009 -/cassandra/branches/cassandra-0.7/contrib:1026516-1126684 +/cassandra/branches/cassandra-0.7/contrib:1026516-1126684,1127130 /cassandra/branches/cassandra-0.7.0/contrib:1053690-1055654 /cassandra/branches/cassandra-0.8/contrib:1102793,1102850,1103861,1103886,1103922,1125005,1125622 /cassandra/tags/cassandra-0.7.0-rc3/contrib:1051699-1053689 Propchange: cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Tue May 24 16:40:43 2011 @@ -1,5 +1,5 @@ /cassandra/branches/cassandra-0.6/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:922689-1052356,1052358-1053452,1053454,1053456-1081914,1083000 -/cassandra/branches/cassandra-0.7/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1026516-1126684 +/cassandra/branches/cassandra-0.7/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1026516-1126684,1127130 /cassandra/branches/cassandra-0.7.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1053690-1055654 /cassandra/branches/cassandra-0.8/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1102793,1102850,1103861,1103886,1103922,1125005,1125622 /cassandra/tags/cassandra-0.7.0-rc3/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1051699-1053689 Propchange: cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Tue May 24 16:40:43 2011 @@ -1,5 +1,5 @@ /cassandra/branches/cassandra-0.6/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:922689-1052356,1052358-1053452,1053454,1053456-1081914,1083000 -/cassandra/branches/cassandra-0.7/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1026516-1126684 +/cassandra/branches/cassandra-0.7/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1026516-1126684,1127130 /cassandra/branches/cassandra-0.7.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1053690-1055654 /cassandra/branches/cassandra-0.8/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1102793,1102850,1103861,1103886,1103922,1125005,1125622 /cassandra/tags/cassandra-0.7.0-rc3/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1051699-1053689 Propchange: cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Tue May 24 16:40:43 2011 @@ -1,5 +1,5 @@ /cassandra/branches/cassandra-0.6/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:922689-1052356,1052358-1053452,1053454,1053456-1081914,1083000 -/cassandra/branches/cassandra-0.7/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1026516-1126684 +/cassandra/branches/cassandra-0.7/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1026516-1126684,1127130 /cassandra/branches/cassandra-0.7.0/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1053690-1055654 /cassandra/branches/cassandra-0.8/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1102793,1102850,1103861,1103886,1103922,1125005,1125622 /cassandra/tags/cassandra-0.7.0-rc3/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1051699-1053689 Propchange: cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Tue May 24 16:40:43 2011 @@ -1,5 +1,5 @@ /cassandra/branches/cassandra-0.6/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:922689-1052356,1052358-1053452,1053454,1053456-1081914,1083000 -/cassandra/branches/cassandra-0.7/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1026516-1126684 +/cassandra/branches/cassandra-0.7/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1026516-1126684,1127130 /cassandra/branches/cassandra-0.7.0/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1053690-1055654 /cassandra/branches/cassandra-0.8/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1102793,1102850,1103861,1103886,1103922,1125005,1125622 /cassandra/tags/cassandra-0.7.0-rc3/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1051699-1053689 Propchange: cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Tue May 24 16:40:43 2011 @@ -1,5 +1,5 @@ /cassandra/branches/cassandra-0.6/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:922689-1052356,1052358-1053452,1053454,1053456-1081914,1083000 -/cassandra/branches/cassandra-0.7/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1026516-1126684 +/cassandra/branches/cassandra-0.7/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1026516-1126684,1127130 /cassandra/branches/cassandra-0.7.0/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1053690-1055654 /cassandra/branches/cassandra-0.8/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1102793,1102850,1103861,1103886,1103922,1125005,1125622 /cassandra/tags/cassandra-0.7.0-rc3/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1051699-1053689 Modified: cassandra/branches/cassandra-0.8.0/src/java/org/apache/cassandra/db/ColumnFamily.java URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8.0/src/java/org/apache/cassandra/db/ColumnFamily.java?rev=1127135&r1=1127134&r2=1127135&view=diff ============================================================================== --- cassandra/branches/cassandra-0.8.0/src/java/org/apache/cassandra/db/ColumnFamily.java (original) +++ cassandra/branches/cassandra-0.8.0/src/java/org/apache/cassandra/db/ColumnFamily.java Tue May 24 16:40:43 2011 @@ -142,6 +142,11 @@ public class ColumnFamily implements ICo return columns.size(); } + public boolean isEmpty() + { + return columns.isEmpty(); + } + public boolean isSuper() { return getType() == ColumnFamilyType.Super; Modified: cassandra/branches/cassandra-0.8.0/src/java/org/apache/cassandra/db/filter/QueryFilter.java URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8.0/src/java/org/apache/cassandra/db/filter/QueryFilter.java?rev=1127135&r1=1127134&r2=1127135&view=diff ============================================================================== --- cassandra/branches/cassandra-0.8.0/src/java/org/apache/cassandra/db/filter/QueryFilter.java (original) +++ cassandra/branches/cassandra-0.8.0/src/java/org/apache/cassandra/db/filter/QueryFilter.java Tue May 24 16:40:43 2011 @@ -103,7 +103,19 @@ public class QueryFilter public void reduce(IColumn current) { - curCF.addColumn(current); + if (curCF.isSuper() && curCF.isEmpty()) + { + // If it is the first super column we add, we must clone it since other super column may modify + // it otherwise and it could be aliased in a memtable somewhere. We'll also don't have to care about what + // consumers make of the result (for instance CFS.getColumnFamily() call removeDeleted() on the + // result which removes column; which shouldn't be done on the original super column). + assert current instanceof SuperColumn; + curCF.addColumn(((SuperColumn)current).cloneMe()); + } + else + { + curCF.addColumn(current); + } } protected IColumn getReduced()