Merge branch 'cassandra-2.0' into cassandra-2.1

Conflicts:
        CHANGES.txt
        test/unit/org/apache/cassandra/db/compaction/CompactionsTest.java


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/86b6ec52
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/86b6ec52
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/86b6ec52

Branch: refs/heads/trunk
Commit: 86b6ec529979ceeeb2ae15704b82f18beb1258b2
Parents: 8602fe8 367c741
Author: Marcus Eriksson <[email protected]>
Authored: Tue May 27 10:43:50 2014 +0200
Committer: Marcus Eriksson <[email protected]>
Committed: Tue May 27 10:43:50 2014 +0200

----------------------------------------------------------------------
 CHANGES.txt                                     |   1 +
 doc/cql3/CQL.textile                            |  21 ++--
 pylib/cqlshlib/cql3handling.py                  |   2 +-
 .../compaction/AbstractCompactionStrategy.java  |  21 ++++
 .../db/compaction/CompactionsTest.java          | 103 ++++++++++++++++---
 5 files changed, 124 insertions(+), 24 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/86b6ec52/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index fcc1e73,6a16cae..6240e1e
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,32 -1,11 +1,33 @@@
 -2.0.9
 - * Add missing iso8601 patterns for date strings (6973)
 - * Support selecting multiple rows in a partition using IN (CASSANDRA-6875)
 - * cqlsh: always emphasize the partition key in DESC output (CASSANDRA-7274)
 +2.1.0-rc1
 + * Add tab-completion to debian nodetool packaging (CASSANDRA-6421)
 + * Change concurrent_compactors defaults (CASSANDRA-7139)
 + * Add PowerShell Windows launch scripts (CASSANDRA-7001)
 + * Make commitlog archive+restore more robust (CASSANDRA-6974)
 + * Fix marking commitlogsegments clean (CASSANDRA-6959)
 + * Add snapshot "manifest" describing files included (CASSANDRA-6326)
 + * Parallel streaming for sstableloader (CASSANDRA-3668)
 + * Fix bugs in supercolumns handling (CASSANDRA-7138)
 + * Fix ClassClassException on composite dense tables (CASSANDRA-7112)
 + * Cleanup and optimize collation and slice iterators (CASSANDRA-7107)
 + * Upgrade NBHM lib (CASSANDRA-7128)
 + * Optimize netty server (CASSANDRA-6861)
 + * Fix repair hang when given CF does not exist (CASSANDRA-7189)
 + * Allow c* to be shutdown in an embedded mode (CASSANDRA-5635)
 + * Add server side batching to native transport (CASSANDRA-5663)
 + * Make batchlog replay asynchronous (CASSANDRA-6134)
 + * remove unused classes (CASSANDRA-7197)
 + * Limit user types to the keyspace they are defined in (CASSANDRA-6643)
 + * Add validate method to CollectionType (CASSANDRA-7208)
 + * New serialization format for UDT values (CASSANDRA-7209, CASSANDRA-7261)
 + * Fix nodetool netstats (CASSANDRA-7270)
 + * Fix potential ClassCastException in HintedHandoffManager (CASSANDRA-7284)
 + * Use prepared statements internally (CASSANDRA-6975)
 + * Fix broken paging state with prepared statement (CASSANDRA-7120)
 + * Fix IllegalArgumentException in CqlStorage (CASSANDRA-7287)
 + * Allow nulls/non-existant fields in UDT (CASSANDRA-7206)
 +Merged from 2.0:
   * Copy compaction options to make sure they are reloaded (CASSANDRA-7290)
+  * Add option to do more aggressive tombstone compactions (CASSANDRA-6563)
 -
 -2.0.8
   * Always reallocate buffers in HSHA (CASSANDRA-6285)
   * (Hadoop) support authentication in CqlRecordReader (CASSANDRA-7221)
   * (Hadoop) Close java driver Cluster in CQLRR.close (CASSANDRA-7228)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/86b6ec52/doc/cql3/CQL.textile
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/cassandra/blob/86b6ec52/pylib/cqlshlib/cql3handling.py
----------------------------------------------------------------------
diff --cc pylib/cqlshlib/cql3handling.py
index e4364a0,b2557fe..2710941
--- a/pylib/cqlshlib/cql3handling.py
+++ b/pylib/cqlshlib/cql3handling.py
@@@ -74,11 -79,9 +74,11 @@@ class Cql3ParsingRuleSet(CqlParsingRule
          # (CQL3 option name, schema_columnfamilies column name (or None if 
same),
          #  list of known map keys)
          ('compaction', 'compaction_strategy_options',
-             ('class', 'max_threshold', 'tombstone_compaction_interval', 
'tombstone_threshold', 'enabled')),
+             ('class', 'max_threshold', 'tombstone_compaction_interval', 
'tombstone_threshold', 'enabled', 'unchecked_tombstone_compaction')),
          ('compression', 'compression_parameters',
              ('sstable_compression', 'chunk_length_kb', 'crc_check_chance')),
 +        ('caching', None,
 +            ('rows_per_partition', 'keys')),
      )
  
      obsolete_cf_options = ()

http://git-wip-us.apache.org/repos/asf/cassandra/blob/86b6ec52/src/java/org/apache/cassandra/db/compaction/AbstractCompactionStrategy.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/cassandra/blob/86b6ec52/test/unit/org/apache/cassandra/db/compaction/CompactionsTest.java
----------------------------------------------------------------------
diff --cc test/unit/org/apache/cassandra/db/compaction/CompactionsTest.java
index 89b6ea5,98eacbf..8a24771
--- a/test/unit/org/apache/cassandra/db/compaction/CompactionsTest.java
+++ b/test/unit/org/apache/cassandra/db/compaction/CompactionsTest.java
@@@ -64,18 -66,7 +65,8 @@@ public class CompactionsTest extends Sc
          // disable compaction while flushing
          store.disableAutoCompaction();
  
-         long timestamp = System.currentTimeMillis();
-         for (int i = 0; i < 10; i++)
-         {
-             DecoratedKey key = Util.dk(Integer.toString(i));
-             Mutation rm = new Mutation(KEYSPACE1, key.getKey());
-             for (int j = 0; j < 10; j++)
-                 rm.add("Standard1", Util.cellname(Integer.toString(j)),
-                        ByteBufferUtil.EMPTY_BYTE_BUFFER,
-                        timestamp,
-                        j > 0 ? 3 : 0); // let first column never expire, 
since deleting all columns does not produce sstable
-             rm.apply();
-         }
+         long timestamp = populate(KEYSPACE1, STANDARD1, 0, 9, 3); //ttl=3s
++
          store.forceBlockingFlush();
          assertEquals(1, store.getSSTables().size());
          long originalSize = 
store.getSSTables().iterator().next().uncompressedLength();
@@@ -100,6 -91,22 +91,22 @@@
          return store;
      }
  
+     private long populate(String ks, String cf, int startRowKey, int 
endRowKey, int ttl) {
+         long timestamp = System.currentTimeMillis();
+         for (int i = startRowKey; i <= endRowKey; i++)
+         {
+             DecoratedKey key = Util.dk(Integer.toString(i));
 -            RowMutation rm = new RowMutation(ks, key.key);
++            Mutation rm = new Mutation(ks, key.getKey());
+             for (int j = 0; j < 10; j++)
 -                rm.add(cf, ByteBufferUtil.bytes(Integer.toString(j)),
++                rm.add(cf,  Util.cellname(Integer.toString(j)),
+                        ByteBufferUtil.EMPTY_BYTE_BUFFER,
+                        timestamp,
+                        j > 0 ? ttl : 0); // let first column never expire, 
since deleting all columns does not produce sstable
+             rm.apply();
+         }
+         return timestamp;
+     }
+ 
      /**
       * Test to see if sstable has enough expired columns, it is compacted 
itself.
       */

Reply via email to