Modified: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/CounterColumn.java URL: http://svn.apache.org/viewvc/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/CounterColumn.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/CounterColumn.java (original) +++ cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/CounterColumn.java Tue May 24 17:34:36 2011 @@ -438,23 +438,5 @@ public class CounterColumn implements or // alas, we cannot check 'value' because it's a primitive and you chose the non-beans generator. } - private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException { - try { - write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - - private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException { - try { - // it doesn't seem like you should have to do this, but java serialization is wacky, and doesn't call the default constructor. - __isset_bit_vector = new BitSet(1); - read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - }
Modified: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/CounterSuperColumn.java URL: http://svn.apache.org/viewvc/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/CounterSuperColumn.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/CounterSuperColumn.java (original) +++ cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/CounterSuperColumn.java Tue May 24 17:34:36 2011 @@ -477,21 +477,5 @@ public class CounterSuperColumn implemen } } - private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException { - try { - write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - - private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException { - try { - read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - } Modified: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/CqlResult.java URL: http://svn.apache.org/viewvc/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/CqlResult.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/CqlResult.java (original) +++ cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/CqlResult.java Tue May 24 17:34:36 2011 @@ -574,23 +574,5 @@ public class CqlResult implements org.ap } } - private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException { - try { - write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - - private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException { - try { - // it doesn't seem like you should have to do this, but java serialization is wacky, and doesn't call the default constructor. - __isset_bit_vector = new BitSet(1); - read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - } Modified: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/CqlRow.java URL: http://svn.apache.org/viewvc/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/CqlRow.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/CqlRow.java (original) +++ cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/CqlRow.java Tue May 24 17:34:36 2011 @@ -480,21 +480,5 @@ public class CqlRow implements org.apach } } - private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException { - try { - write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - - private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException { - try { - read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - } Modified: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/Deletion.java URL: http://svn.apache.org/viewvc/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/Deletion.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/Deletion.java (original) +++ cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/Deletion.java Tue May 24 17:34:36 2011 @@ -529,23 +529,5 @@ public class Deletion implements org.apa // check for required fields } - private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException { - try { - write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - - private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException { - try { - // it doesn't seem like you should have to do this, but java serialization is wacky, and doesn't call the default constructor. - __isset_bit_vector = new BitSet(1); - read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - } Modified: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/IndexClause.java URL: http://svn.apache.org/viewvc/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/IndexClause.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/IndexClause.java (original) +++ cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/IndexClause.java Tue May 24 17:34:36 2011 @@ -575,23 +575,5 @@ public class IndexClause implements org. // alas, we cannot check 'count' because it's a primitive and you chose the non-beans generator. } - private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException { - try { - write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - - private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException { - try { - // it doesn't seem like you should have to do this, but java serialization is wacky, and doesn't call the default constructor. - __isset_bit_vector = new BitSet(1); - read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - } Modified: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/IndexExpression.java URL: http://svn.apache.org/viewvc/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/IndexExpression.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/IndexExpression.java (original) +++ cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/IndexExpression.java Tue May 24 17:34:36 2011 @@ -563,21 +563,5 @@ public class IndexExpression implements } } - private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException { - try { - write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - - private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException { - try { - read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - } Modified: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java URL: http://svn.apache.org/viewvc/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java (original) +++ cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java Tue May 24 17:34:36 2011 @@ -335,21 +335,5 @@ public class InvalidRequestException ext } } - private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException { - try { - write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - - private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException { - try { - read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - } Propchange: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Tue May 24 17:34:36 2011 @@ -1,8 +1,8 @@ /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-1126686 +/cassandra/branches/cassandra-0.7/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1026516-1127143 /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:1090934-1125013,1125019-1126706 -/cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1125021-1126704 +/cassandra/branches/cassandra-0.8/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1090934-1125013,1125019-1127164 +/cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1125021-1127038 /cassandra/branches/cassandra-0.8.1/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1101014-1125018 /cassandra/tags/cassandra-0.7.0-rc3/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1051699-1053689 /cassandra/tags/cassandra-0.8.0-rc1/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1102511-1125020 Modified: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/KeyCount.java URL: http://svn.apache.org/viewvc/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/KeyCount.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/KeyCount.java (original) +++ cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/KeyCount.java Tue May 24 17:34:36 2011 @@ -438,23 +438,5 @@ public class KeyCount implements org.apa // alas, we cannot check 'count' because it's a primitive and you chose the non-beans generator. } - private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException { - try { - write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - - private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException { - try { - // it doesn't seem like you should have to do this, but java serialization is wacky, and doesn't call the default constructor. - __isset_bit_vector = new BitSet(1); - read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - } Modified: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/KeyRange.java URL: http://svn.apache.org/viewvc/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/KeyRange.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/KeyRange.java (original) +++ cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/KeyRange.java Tue May 24 17:34:36 2011 @@ -746,23 +746,5 @@ public class KeyRange implements org.apa // alas, we cannot check 'count' because it's a primitive and you chose the non-beans generator. } - private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException { - try { - write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - - private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException { - try { - // it doesn't seem like you should have to do this, but java serialization is wacky, and doesn't call the default constructor. - __isset_bit_vector = new BitSet(1); - read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - } Modified: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/KeySlice.java URL: http://svn.apache.org/viewvc/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/KeySlice.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/KeySlice.java (original) +++ cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/KeySlice.java Tue May 24 17:34:36 2011 @@ -484,21 +484,5 @@ public class KeySlice implements org.apa } } - private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException { - try { - write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - - private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException { - try { - read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - } Modified: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/KsDef.java URL: http://svn.apache.org/viewvc/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/KsDef.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/KsDef.java (original) +++ cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/KsDef.java Tue May 24 17:34:36 2011 @@ -809,23 +809,5 @@ public class KsDef implements org.apache } } - private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException { - try { - write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - - private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException { - try { - // it doesn't seem like you should have to do this, but java serialization is wacky, and doesn't call the default constructor. - __isset_bit_vector = new BitSet(1); - read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - } Modified: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/Mutation.java URL: http://svn.apache.org/viewvc/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/Mutation.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/Mutation.java (original) +++ cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/Mutation.java Tue May 24 17:34:36 2011 @@ -428,21 +428,5 @@ public class Mutation implements org.apa // check for required fields } - private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException { - try { - write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - - private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException { - try { - read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - } Modified: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java URL: http://svn.apache.org/viewvc/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java (original) +++ cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java Tue May 24 17:34:36 2011 @@ -231,21 +231,5 @@ public class NotFoundException extends E // check for required fields } - private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException { - try { - write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - - private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException { - try { - read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - } Propchange: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Tue May 24 17:34:36 2011 @@ -1,8 +1,8 @@ /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-1126686 +/cassandra/branches/cassandra-0.7/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1026516-1127143 /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:1090934-1125013,1125019-1126706 -/cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1125021-1126704 +/cassandra/branches/cassandra-0.8/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1090934-1125013,1125019-1127164 +/cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1125021-1127038 /cassandra/branches/cassandra-0.8.1/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1101014-1125018 /cassandra/tags/cassandra-0.7.0-rc3/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1051699-1053689 /cassandra/tags/cassandra-0.8.0-rc1/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1102511-1125020 Modified: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/SchemaDisagreementException.java URL: http://svn.apache.org/viewvc/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/SchemaDisagreementException.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/SchemaDisagreementException.java (original) +++ cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/SchemaDisagreementException.java Tue May 24 17:34:36 2011 @@ -231,21 +231,5 @@ public class SchemaDisagreementException // check for required fields } - private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException { - try { - write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - - private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException { - try { - read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - } Modified: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/SlicePredicate.java URL: http://svn.apache.org/viewvc/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/SlicePredicate.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/SlicePredicate.java (original) +++ cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/SlicePredicate.java Tue May 24 17:34:36 2011 @@ -473,21 +473,5 @@ public class SlicePredicate implements o // check for required fields } - private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException { - try { - write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - - private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException { - try { - read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - } Modified: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/SliceRange.java URL: http://svn.apache.org/viewvc/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/SliceRange.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/SliceRange.java (original) +++ cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/SliceRange.java Tue May 24 17:34:36 2011 @@ -659,23 +659,5 @@ public class SliceRange implements org.a // alas, we cannot check 'count' because it's a primitive and you chose the non-beans generator. } - private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException { - try { - write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - - private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException { - try { - // it doesn't seem like you should have to do this, but java serialization is wacky, and doesn't call the default constructor. - __isset_bit_vector = new BitSet(1); - read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - } Modified: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java URL: http://svn.apache.org/viewvc/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java (original) +++ cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java Tue May 24 17:34:36 2011 @@ -483,21 +483,5 @@ public class SuperColumn implements org. } } - private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException { - try { - write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - - private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException { - try { - read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - } Propchange: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Tue May 24 17:34:36 2011 @@ -1,8 +1,8 @@ /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-1126686 +/cassandra/branches/cassandra-0.7/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1026516-1127143 /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:1090934-1125013,1125019-1126706 -/cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1125021-1126704 +/cassandra/branches/cassandra-0.8/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1090934-1125013,1125019-1127164 +/cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1125021-1127038 /cassandra/branches/cassandra-0.8.1/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1101014-1125018 /cassandra/tags/cassandra-0.7.0-rc3/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1051699-1053689 /cassandra/tags/cassandra-0.8.0-rc1/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1102511-1125020 Modified: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/TimedOutException.java URL: http://svn.apache.org/viewvc/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/TimedOutException.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/TimedOutException.java (original) +++ cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/TimedOutException.java Tue May 24 17:34:36 2011 @@ -231,21 +231,5 @@ public class TimedOutException extends E // check for required fields } - private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException { - try { - write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - - private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException { - try { - read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - } Modified: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/TokenRange.java URL: http://svn.apache.org/viewvc/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/TokenRange.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/TokenRange.java (original) +++ cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/TokenRange.java Tue May 24 17:34:36 2011 @@ -562,21 +562,5 @@ public class TokenRange implements org.a } } - private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException { - try { - write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - - private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException { - try { - read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - } Modified: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/UnavailableException.java URL: http://svn.apache.org/viewvc/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/UnavailableException.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/UnavailableException.java (original) +++ cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/UnavailableException.java Tue May 24 17:34:36 2011 @@ -231,21 +231,5 @@ public class UnavailableException extend // check for required fields } - private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException { - try { - write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - - private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException { - try { - read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in))); - } catch (org.apache.thrift.TException te) { - throw new java.io.IOException(te); - } - } - } Modified: cassandra/trunk/src/java/org/apache/cassandra/config/CFMetaData.java URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/config/CFMetaData.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/src/java/org/apache/cassandra/config/CFMetaData.java (original) +++ cassandra/trunk/src/java/org/apache/cassandra/config/CFMetaData.java Tue May 24 17:34:36 2011 @@ -634,9 +634,6 @@ public final class CFMetaData applyImplicitDefaults(cf_def); - validateMinMaxCompactionThresholds(cf_def); - validateMemtableSettings(cf_def); - CFMetaData newCFMD = new CFMetaData(cf_def.keyspace, cf_def.name, cfType, @@ -670,12 +667,16 @@ public final class CFMetaData public void apply(org.apache.cassandra.db.migration.avro.CfDef cf_def) throws ConfigurationException { // validate - if (!cf_def.id.equals(cfId)) - throw new ConfigurationException("ids do not match."); if (!cf_def.keyspace.toString().equals(ksName)) - throw new ConfigurationException("keyspaces do not match."); + throw new ConfigurationException(String.format("Keyspace mismatch (found %s; expected %s)", + cf_def.keyspace, tableName)); if (!cf_def.name.toString().equals(cfName)) - throw new ConfigurationException("names do not match."); + throw new ConfigurationException(String.format("Column family mismatch (found %s; expected %s)", + cf_def.name, cfName)); + if (!cf_def.id.equals(cfId)) + throw new ConfigurationException(String.format("Column family ID mismatch (found %s; expected %s)", + cf_def.id, cfId)); + if (!cf_def.column_type.toString().equals(cfType.name())) throw new ConfigurationException("types do not match."); if (comparator != TypeParser.parse(cf_def.comparator_type)) @@ -691,7 +692,6 @@ public final class CFMetaData validateMinMaxCompactionThresholds(cf_def); validateMemtableSettings(cf_def); - validateAliasCompares(cf_def); comment = enforceCommentNotNull(cf_def.comment); rowCacheSize = cf_def.row_cache_size; @@ -885,36 +885,6 @@ public final class CFMetaData return newDef; } - public static void validateMinMaxCompactionThresholds(org.apache.cassandra.thrift.CfDef cf_def) throws ConfigurationException - { - if (cf_def.isSetMin_compaction_threshold() && cf_def.isSetMax_compaction_threshold()) - { - if ((cf_def.min_compaction_threshold > cf_def.max_compaction_threshold) && - cf_def.max_compaction_threshold != 0) - { - throw new ConfigurationException("min_compaction_threshold cannot be greater than max_compaction_threshold"); - } - } - else if (cf_def.isSetMin_compaction_threshold()) - { - if (cf_def.min_compaction_threshold > DEFAULT_MAX_COMPACTION_THRESHOLD) - { - throw new ConfigurationException("min_compaction_threshold cannot be greather than max_compaction_threshold (default " + - DEFAULT_MAX_COMPACTION_THRESHOLD + ")"); - } - } - else if (cf_def.isSetMax_compaction_threshold()) - { - if (cf_def.max_compaction_threshold < DEFAULT_MIN_COMPACTION_THRESHOLD && cf_def.max_compaction_threshold != 0) { - throw new ConfigurationException("max_compaction_threshold cannot be less than min_compaction_threshold"); - } - } - else - { - //Defaults are valid. - } - } - public static void validateMinMaxCompactionThresholds(org.apache.cassandra.db.migration.avro.CfDef cf_def) throws ConfigurationException { if (cf_def.min_compaction_threshold != null && cf_def.max_compaction_threshold != null) @@ -945,16 +915,6 @@ public final class CFMetaData } } - public static void validateMemtableSettings(org.apache.cassandra.thrift.CfDef cf_def) throws ConfigurationException - { - if (cf_def.isSetMemtable_flush_after_mins()) - DatabaseDescriptor.validateMemtableFlushPeriod(cf_def.memtable_flush_after_mins); - if (cf_def.isSetMemtable_throughput_in_mb()) - DatabaseDescriptor.validateMemtableThroughput(cf_def.memtable_throughput_in_mb); - if (cf_def.isSetMemtable_operations_in_millions()) - DatabaseDescriptor.validateMemtableOperations(cf_def.memtable_operations_in_millions); - } - public static void validateMemtableSettings(org.apache.cassandra.db.migration.avro.CfDef cf_def) throws ConfigurationException { if (cf_def.memtable_flush_after_mins != null) @@ -965,13 +925,6 @@ public final class CFMetaData DatabaseDescriptor.validateMemtableOperations(cf_def.memtable_operations_in_millions); } - public static void validateAliasCompares(org.apache.cassandra.db.migration.avro.CfDef cf_def) throws ConfigurationException - { - AbstractType comparator = TypeParser.parse(cf_def.comparator_type); - if (cf_def.key_alias != null) - comparator.validate(cf_def.key_alias); - } - public ColumnDefinition getColumnDefinition(ByteBuffer name) { return column_metadata.get(name); Modified: cassandra/trunk/src/java/org/apache/cassandra/config/Config.java URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/config/Config.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/src/java/org/apache/cassandra/config/Config.java (original) +++ cassandra/trunk/src/java/org/apache/cassandra/config/Config.java Tue May 24 17:34:36 2011 @@ -77,8 +77,6 @@ public class Config public Boolean snapshot_before_compaction = false; public Integer compaction_thread_priority = Thread.MIN_PRIORITY; - public Integer binary_memtable_throughput_in_mb = 256; - /* if the size of columns or super-columns are more than this, indexing will kick in */ public Integer column_index_size_in_kb = 64; public Integer in_memory_compaction_limit_in_mb = 256; Modified: cassandra/trunk/src/java/org/apache/cassandra/config/DatabaseDescriptor.java URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/config/DatabaseDescriptor.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/src/java/org/apache/cassandra/config/DatabaseDescriptor.java (original) +++ cassandra/trunk/src/java/org/apache/cassandra/config/DatabaseDescriptor.java Tue May 24 17:34:36 2011 @@ -937,11 +937,6 @@ public class DatabaseDescriptor return conf.sliced_buffer_size_in_kb; } - public static int getBMTThreshold() - { - return conf.binary_memtable_throughput_in_mb; - } - public static int getCompactionThreadPriority() { return conf.compaction_thread_priority; Modified: cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamily.java URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamily.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamily.java (original) +++ cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamily.java Tue May 24 17:34:36 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/trunk/src/java/org/apache/cassandra/db/ColumnFamilyStore.java URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamilyStore.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamilyStore.java (original) +++ cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamilyStore.java Tue May 24 17:34:36 2011 @@ -25,7 +25,6 @@ import java.util.*; import java.util.concurrent.*; import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicLong; -import java.util.concurrent.atomic.AtomicReference; import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; import java.util.regex.Pattern; @@ -72,13 +71,10 @@ public class ColumnFamilyStore implement private static Logger logger = LoggerFactory.getLogger(ColumnFamilyStore.class); /* - * submitFlush first puts [Binary]Memtable.getSortedContents on the flushSorter executor, - * which then puts the sorted results on the writer executor. This is because sorting is CPU-bound, - * and writing is disk-bound; we want to be able to do both at once. When the write is complete, + * maybeSwitchMemtable puts Memtable.getSortedContents on the writer executor. When the write is complete, * we turn the writer into an SSTableReader and add it to ssTables_ where it is available for reads. * - * For BinaryMemtable that's about all that happens. For live Memtables there are two other things - * that switchMemtable does (which should be the only caller of submitFlush in this case). + * There are two other things that maybeSwitchMemtable does. * First, it puts the Memtable into memtablesPendingFlush, where it stays until the flush is complete * and it's been added as an SSTableReader to ssTables_. Second, it adds an entry to commitLogUpdater * that waits for the flush to complete, then calls onMemtableFlush. This allows multiple flushes @@ -86,13 +82,6 @@ public class ColumnFamilyStore implement * which is necessary for replay in case of a restart since CommitLog assumes that when onMF is * called, all data up to the given context has been persisted to SSTables. */ - private static final ExecutorService flushSorter - = new JMXEnabledThreadPoolExecutor(Runtime.getRuntime().availableProcessors(), - StageManager.KEEPALIVE, - TimeUnit.SECONDS, - new LinkedBlockingQueue<Runnable>(Runtime.getRuntime().availableProcessors()), - new NamedThreadFactory("FlushSorter"), - "internal"); private static final ExecutorService flushWriter = new JMXEnabledThreadPoolExecutor(DatabaseDescriptor.getFlushWriters(), StageManager.KEEPALIVE, @@ -134,9 +123,6 @@ public class ColumnFamilyStore implement private final ConcurrentSkipListMap<ByteBuffer, ColumnFamilyStore> indexedColumns; - // TODO binarymemtable ops are not threadsafe (do they need to be?) - private AtomicReference<BinaryMemtable> binaryMemtable; - private LatencyTracker readStats = new LatencyTracker(); private LatencyTracker writeStats = new LatencyTracker(); @@ -257,7 +243,6 @@ public class ColumnFamilyStore implement this.keyCacheSaveInSeconds = new DefaultInteger(metadata.getKeyCacheSavePeriodInSeconds()); this.partitioner = partitioner; fileIndexGenerator.set(generation); - binaryMemtable = new AtomicReference<BinaryMemtable>(new BinaryMemtable(this)); if (logger.isDebugEnabled()) logger.debug("Starting CFS {}", columnFamily); @@ -658,7 +643,11 @@ public class ColumnFamilyStore implement } final CountDownLatch latch = new CountDownLatch(icc.size()); for (ColumnFamilyStore cfs : icc) - submitFlush(cfs.data.switchMemtable(), latch, ctx); + { + Memtable memtable = cfs.data.switchMemtable(); + logger.info("Enqueuing flush of {}", memtable); + memtable.flushAndSignal(latch, flushWriter, ctx); + } // we marked our memtable as frozen as part of the concurrency control, // so even if there was nothing to flush we need to switch it out @@ -699,12 +688,6 @@ public class ColumnFamilyStore implement : DatabaseDescriptor.getCFMetaData(metadata.cfId) == null; } - void switchBinaryMemtable(DecoratedKey key, ByteBuffer buffer) - { - binaryMemtable.set(new BinaryMemtable(this)); - binaryMemtable.get().put(key, buffer); - } - public void forceFlushIfExpired() { if (getMemtableThreadSafe().isExpired()) @@ -735,14 +718,6 @@ public class ColumnFamilyStore implement future.get(); } - public void forceFlushBinary() - { - if (binaryMemtable.get().isClean()) - return; - - submitFlush(binaryMemtable.get(), new CountDownLatch(1), null); - } - public void updateRowCache(DecoratedKey key, ColumnFamily columnFamily) { if (rowCache.isPutCopying()) @@ -793,20 +768,6 @@ public class ColumnFamilyStore implement return flushRequested ? mt : null; } - /* - * Insert/Update the column family for this key. param @ lock - lock that - * Caller is responsible for acquiring Table.flusherLock! - * param @ lock - lock that needs to be used. - * needs to be used. param @ key - key for update/insert param @ - * columnFamily - columnFamily changes - */ - void applyBinary(DecoratedKey key, ByteBuffer buffer) - { - long start = System.nanoTime(); - binaryMemtable.get().put(key, buffer); - writeStats.addNano(System.nanoTime() - start); - } - public static ColumnFamily removeDeletedCF(ColumnFamily cf, int gcBefore) { // in case of a timestamp tie, tombstones get priority over non-tombstones. @@ -998,21 +959,6 @@ public class ColumnFamilyStore implement } } - /** - * submits flush sort on the flushSorter executor, which will in turn submit to flushWriter when sorted. - * TODO because our executors use CallerRunsPolicy, when flushSorter fills up, no writes will proceed - * because the next flush will start executing on the caller, mutation-stage thread that has the - * flush write lock held. (writes aquire this as a read lock before proceeding.) - * This is good, because it backpressures flushes, but bad, because we can't write until that last - * flushing thread finishes sorting, which will almost always be longer than any of the flushSorter threads proper - * (since, by definition, it started last). - */ - void submitFlush(IFlushable flushable, CountDownLatch latch, ReplayPosition context) - { - logger.info("Enqueuing flush of {}", flushable); - flushable.flushAndSignal(latch, flushSorter, flushWriter, context); - } - public long getMemtableColumnsCount() { return getMemtableThreadSafe().getOperations(); Modified: cassandra/trunk/src/java/org/apache/cassandra/db/CompactionManager.java URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/db/CompactionManager.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/src/java/org/apache/cassandra/db/CompactionManager.java (original) +++ cassandra/trunk/src/java/org/apache/cassandra/db/CompactionManager.java Tue May 24 17:34:36 2011 @@ -490,6 +490,12 @@ public class CompactionManager implement int doCompaction(ColumnFamilyStore cfs, Collection<SSTableReader> sstables, int gcBefore) throws IOException { + if (sstables.size() < 2) + { + logger.info("Nothing to compact in " + cfs.getColumnFamilyName() + "; use forceUserDefinedCompaction if you wish to force compaction of single sstables (e.g. for tombstone collection)"); + return 0; + } + Table table = cfs.table; // If the compaction file path is null that means we have no space left for this compaction. Modified: cassandra/trunk/src/java/org/apache/cassandra/db/Memtable.java URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/db/Memtable.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/src/java/org/apache/cassandra/db/Memtable.java (original) +++ cassandra/trunk/src/java/org/apache/cassandra/db/Memtable.java Tue May 24 17:34:36 2011 @@ -46,7 +46,7 @@ import org.apache.cassandra.io.sstable.S import org.apache.cassandra.utils.WrappedRunnable; import org.github.jamm.MemoryMeter; -public class Memtable implements Comparable<Memtable>, IFlushable +public class Memtable implements Comparable<Memtable> { private static final Logger logger = LoggerFactory.getLogger(Memtable.class); @@ -256,7 +256,7 @@ public class Memtable implements Compara return ssTable; } - public void flushAndSignal(final CountDownLatch latch, ExecutorService sorter, final ExecutorService writer, final ReplayPosition context) + public void flushAndSignal(final CountDownLatch latch, ExecutorService writer, final ReplayPosition context) { writer.execute(new WrappedRunnable() { Modified: cassandra/trunk/src/java/org/apache/cassandra/db/filter/QueryFilter.java URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/db/filter/QueryFilter.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/src/java/org/apache/cassandra/db/filter/QueryFilter.java (original) +++ cassandra/trunk/src/java/org/apache/cassandra/db/filter/QueryFilter.java Tue May 24 17:34:36 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() Modified: cassandra/trunk/src/java/org/apache/cassandra/thrift/ThriftValidation.java URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/thrift/ThriftValidation.java?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/src/java/org/apache/cassandra/thrift/ThriftValidation.java (original) +++ cassandra/trunk/src/java/org/apache/cassandra/thrift/ThriftValidation.java Tue May 24 17:34:36 2011 @@ -577,6 +577,8 @@ public class ThriftValidation if (cfType == ColumnFamilyType.Super && c.index_type != null) throw new InvalidRequestException("Secondary indexes are not supported on supercolumns"); } + validateMinMaxCompactionThresholds(cf_def); + validateMemtableSettings(cf_def); } catch (ConfigurationException e) { @@ -602,4 +604,45 @@ public class ThriftValidation Class<? extends AbstractReplicationStrategy> cls = AbstractReplicationStrategy.getClass(ks_def.strategy_class); AbstractReplicationStrategy.createReplicationStrategy(ks_def.name, cls, tmd, eps, options); } + + public static void validateMinMaxCompactionThresholds(org.apache.cassandra.thrift.CfDef cf_def) throws ConfigurationException + { + if (cf_def.isSetMin_compaction_threshold() && cf_def.isSetMax_compaction_threshold()) + { + if ((cf_def.min_compaction_threshold > cf_def.max_compaction_threshold) + && cf_def.max_compaction_threshold != 0) + { + throw new ConfigurationException("min_compaction_threshold cannot be greater than max_compaction_threshold"); + } + } + else if (cf_def.isSetMin_compaction_threshold()) + { + if (cf_def.min_compaction_threshold > CFMetaData.DEFAULT_MAX_COMPACTION_THRESHOLD) + { + throw new ConfigurationException(String.format("min_compaction_threshold cannot be greather than max_compaction_threshold (default %d)", + CFMetaData.DEFAULT_MAX_COMPACTION_THRESHOLD)); + } + } + else if (cf_def.isSetMax_compaction_threshold()) + { + if (cf_def.max_compaction_threshold < CFMetaData.DEFAULT_MIN_COMPACTION_THRESHOLD && cf_def.max_compaction_threshold != 0) + { + throw new ConfigurationException("max_compaction_threshold cannot be less than min_compaction_threshold"); + } + } + else + { + //Defaults are valid. + } + } + + public static void validateMemtableSettings(org.apache.cassandra.thrift.CfDef cf_def) throws ConfigurationException + { + if (cf_def.isSetMemtable_flush_after_mins()) + DatabaseDescriptor.validateMemtableFlushPeriod(cf_def.memtable_flush_after_mins); + if (cf_def.isSetMemtable_throughput_in_mb()) + DatabaseDescriptor.validateMemtableThroughput(cf_def.memtable_throughput_in_mb); + if (cf_def.isSetMemtable_operations_in_millions()) + DatabaseDescriptor.validateMemtableOperations(cf_def.memtable_operations_in_millions); + } } Modified: cassandra/trunk/test/system/test_thrift_server.py URL: http://svn.apache.org/viewvc/cassandra/trunk/test/system/test_thrift_server.py?rev=1127165&r1=1127164&r2=1127165&view=diff ============================================================================== --- cassandra/trunk/test/system/test_thrift_server.py (original) +++ cassandra/trunk/test/system/test_thrift_server.py Tue May 24 17:34:36 2011 @@ -1393,6 +1393,21 @@ class TestMutations(ThriftTester): assert 'NewColumnFamily' not in [x.name for x in ks1.cf_defs] assert 'Standard1' in [x.name for x in ks1.cf_defs] + # Make a LongType CF and add a validator + newcf = CfDef('Keyspace1', 'NewLongColumnFamily', comparator_type='LongType') + client.system_add_column_family(newcf) + + three = _i64(3) + cd = ColumnDef(three, 'LongType', None, None) + ks1 = client.describe_keyspace('Keyspace1') + modified_cf = [x for x in ks1.cf_defs if x.name=='NewLongColumnFamily'][0] + modified_cf.column_metadata = [cd] + client.system_update_column_family(modified_cf) + + ks1 = client.describe_keyspace('Keyspace1') + server_cf = [x for x in ks1.cf_defs if x.name=='NewLongColumnFamily'][0] + assert server_cf.column_metadata[0].name == _i64(3), server_cf.column_metadata + def test_dynamic_indexes_creation_deletion(self): _set_keyspace('Keyspace1') cfdef = CfDef('Keyspace1', 'BlankCF')
