Merge branch 'cassandra-2.0' into cassandra-2.1 Conflicts: CHANGES.txt src/java/org/apache/cassandra/service/CassandraDaemon.java
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/374ef3c7 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/374ef3c7 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/374ef3c7 Branch: refs/heads/cassandra-2.1 Commit: 374ef3c7a7bed81e5ad550649d96f8f9b1a96310 Parents: 83944f8 ec52e77 Author: Benedict Elliott Smith <bened...@apache.org> Authored: Tue Jun 16 16:33:10 2015 +0100 Committer: Benedict Elliott Smith <bened...@apache.org> Committed: Tue Jun 16 16:33:10 2015 +0100 ---------------------------------------------------------------------- CHANGES.txt | 2 ++ .../apache/cassandra/db/ColumnFamilyStore.java | 24 ++++++++++++++++++++ .../db/compaction/CompactionManager.java | 7 +++++- .../cassandra/service/CassandraDaemon.java | 20 ++++------------ 4 files changed, 36 insertions(+), 17 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cassandra/blob/374ef3c7/CHANGES.txt ---------------------------------------------------------------------- diff --cc CHANGES.txt index 022d868,6d031f6..858f13c --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,49 -1,7 +1,51 @@@ +2.1.7 +Merged from 2.0 + 2.0.16: + * Periodically submit background compaction tasks (CASSANDRA-9592) * Set HAS_MORE_PAGES flag to false when PagingState is null (CASSANDRA-9571) - * Backport indexed value validation fix from CASSANDRA-9057 (CASSANDRA-9564) + + +2.1.6 + * (cqlsh) Fix using COPY through SOURCE or -f (CASSANDRA-9083) + * Fix occasional lack of `system` keyspace in schema tables (CASSANDRA-8487) + * Use ProtocolError code instead of ServerError code for native protocol + error responses to unsupported protocol versions (CASSANDRA-9451) + * Default commitlog_sync_batch_window_in_ms changed to 2ms (CASSANDRA-9504) + * Fix empty partition assertion in unsorted sstable writing tools (CASSANDRA-9071) + * Ensure truncate without snapshot cannot produce corrupt responses (CASSANDRA-9388) + * Consistent error message when a table mixes counter and non-counter + columns (CASSANDRA-9492) + * Avoid getting unreadable keys during anticompaction (CASSANDRA-9508) + * (cqlsh) Better float precision by default (CASSANDRA-9224) + * Improve estimated row count (CASSANDRA-9107) + * Optimize range tombstone memory footprint (CASSANDRA-8603) + * Use configured gcgs in anticompaction (CASSANDRA-9397) + * Warn on misuse of unlogged batches (CASSANDRA-9282) + * Failure detector detects and ignores local pauses (CASSANDRA-9183) + * Add utility class to support for rate limiting a given log statement (CASSANDRA-9029) + * Add missing consistency levels to cassandra-stess (CASSANDRA-9361) + * Fix commitlog getCompletedTasks to not increment (CASSANDRA-9339) + * Fix for harmless exceptions logged as ERROR (CASSANDRA-8564) + * Delete processed sstables in sstablesplit/sstableupgrade (CASSANDRA-8606) + * Improve sstable exclusion from partition tombstones (CASSANDRA-9298) + * Validate the indexed column rather than the cell's contents for 2i (CASSANDRA-9057) + * Add support for top-k custom 2i queries (CASSANDRA-8717) + * Fix error when dropping table during compaction (CASSANDRA-9251) + * cassandra-stress supports validation operations over user profiles (CASSANDRA-8773) + * Add support for rate limiting log messages (CASSANDRA-9029) + * Log the partition key with tombstone warnings (CASSANDRA-8561) + * Reduce runWithCompactionsDisabled poll interval to 1ms (CASSANDRA-9271) + * Fix PITR commitlog replay (CASSANDRA-9195) + * GCInspector logs very different times (CASSANDRA-9124) + * Fix deleting from an empty list (CASSANDRA-9198) + * Update tuple and collection types that use a user-defined type when that UDT + is modified (CASSANDRA-9148, CASSANDRA-9192) + * Use higher timeout for prepair and snapshot in repair (CASSANDRA-9261) + * Fix anticompaction blocking ANTI_ENTROPY stage (CASSANDRA-9151) + * Repair waits for anticompaction to finish (CASSANDRA-9097) + * Fix streaming not holding ref when stream error (CASSANDRA-9295) + * Fix canonical view returning early opened SSTables (CASSANDRA-9396) +Merged from 2.0: * Don't accumulate more range than necessary in RangeTombstone.Tracker (CASSANDRA-9486) * Add broadcast and rpc addresses to system.local (CASSANDRA-9436) * Always mark sstable suspect when corrupted (CASSANDRA-9478) http://git-wip-us.apache.org/repos/asf/cassandra/blob/374ef3c7/src/java/org/apache/cassandra/db/ColumnFamilyStore.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cassandra/blob/374ef3c7/src/java/org/apache/cassandra/db/compaction/CompactionManager.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cassandra/blob/374ef3c7/src/java/org/apache/cassandra/service/CassandraDaemon.java ---------------------------------------------------------------------- diff --cc src/java/org/apache/cassandra/service/CassandraDaemon.java index 21d5249,5bffb49..f66e523 --- a/src/java/org/apache/cassandra/service/CassandraDaemon.java +++ b/src/java/org/apache/cassandra/service/CassandraDaemon.java @@@ -368,22 -411,9 +368,6 @@@ public class CassandraDaemo } } } - // start compactions in five minutes (if no flushes have occurred by then to do so) - Runnable runnable = new Runnable() - { - public void run() - { - for (Keyspace keyspaceName : Keyspace.all()) - { - for (ColumnFamilyStore cf : keyspaceName.getColumnFamilyStores()) - { - for (ColumnFamilyStore store : cf.concatWithIndexes()) - CompactionManager.instance.submitBackground(store); - } - } - } - }; - ScheduledExecutors.optionalTasks.schedule(runnable, 5, TimeUnit.MINUTES); - // schedule periodic background compaction task submission. this is simply a backstop against compactions stalling - // due to scheduling errors or race conditions - StorageService.optionalTasks.scheduleWithFixedDelay(ColumnFamilyStore.getBackgroundCompactionTaskSubmitter(), 5, 1, TimeUnit.MINUTES); SystemKeyspace.finishStartup(); @@@ -421,20 -451,13 +405,24 @@@ if (!FBUtilities.getBroadcastAddress().equals(InetAddress.getLoopbackAddress())) waitForGossipToSettle(); - // Thift ++ // schedule periodic background compaction task submission. this is simply a backstop against compactions stalling ++ // due to scheduling errors or race conditions ++ ScheduledExecutors.optionalTasks.scheduleWithFixedDelay(ColumnFamilyStore.getBackgroundCompactionTaskSubmitter(), 5, 1, TimeUnit.MINUTES); ++ + // schedule periodic dumps of table size estimates into SystemKeyspace.SIZE_ESTIMATES_CF + // set cassandra.size_recorder_interval to 0 to disable + int sizeRecorderInterval = Integer.getInteger("cassandra.size_recorder_interval", 5 * 60); + if (sizeRecorderInterval > 0) + ScheduledExecutors.optionalTasks.scheduleWithFixedDelay(SizeEstimatesRecorder.instance, 30, sizeRecorderInterval, TimeUnit.SECONDS); + + // Thrift InetAddress rpcAddr = DatabaseDescriptor.getRpcAddress(); int rpcPort = DatabaseDescriptor.getRpcPort(); - thriftServer = new ThriftServer(rpcAddr, rpcPort); + int listenBacklog = DatabaseDescriptor.getRpcListenBacklog(); + thriftServer = new ThriftServer(rpcAddr, rpcPort, listenBacklog); // Native transport - InetAddress nativeAddr = DatabaseDescriptor.getNativeTransportAddress(); + InetAddress nativeAddr = DatabaseDescriptor.getRpcAddress(); int nativePort = DatabaseDescriptor.getNativeTransportPort(); nativeServer = new org.apache.cassandra.transport.Server(nativeAddr, nativePort); }