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.
*/