You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by al...@apache.org on 2016/08/23 10:33:41 UTC
[01/10] cassandra git commit: Move migration tasks to non-periodic
queue, assure flush executor shutdown after non-periodic executor.
Repository: cassandra
Updated Branches:
refs/heads/cassandra-2.2 93ad056ed -> 465bb5d45
refs/heads/cassandra-3.0 f255370f3 -> d0fc95312
refs/heads/cassandra-3.9 a592693dd -> 2ca8f38ef
refs/heads/trunk 48d4f6080 -> 5dda0abbf
Move migration tasks to non-periodic queue, assure flush executor shutdown after non-periodic executor.
Patch by Alex Petrov; reviewed by Joel Knighton for CASSANDRA-12251
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/465bb5d4
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/465bb5d4
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/465bb5d4
Branch: refs/heads/cassandra-2.2
Commit: 465bb5d45ccef337382592127e214a0ca16a3d88
Parents: 93ad056
Author: Alex Petrov <ol...@gmail.com>
Authored: Mon Aug 1 09:50:33 2016 +0200
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Tue Aug 23 13:31:16 2016 +0300
----------------------------------------------------------------------
CHANGES.txt | 1 +
src/java/org/apache/cassandra/service/MigrationManager.java | 2 +-
src/java/org/apache/cassandra/service/StorageService.java | 4 ++--
3 files changed, 4 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/465bb5d4/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index d28e419..a3a34c1 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
2.2.8
+ * Move migration tasks to non-periodic queue, assure flush executor shutdown after non-periodic executor (CASSANDRA-12251)
* cqlsh copy: fixed possible race in initializing feeding thread (CASSANDRA-11701)
* Only set broadcast_rpc_address on Ec2MultiRegionSnitch if it's not set (CASSANDRA-11357)
* Update StorageProxy range metrics for timeouts, failures and unavailables (CASSANDRA-9507)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/465bb5d4/src/java/org/apache/cassandra/service/MigrationManager.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/MigrationManager.java b/src/java/org/apache/cassandra/service/MigrationManager.java
index f7a2a48..4cb5ed7 100644
--- a/src/java/org/apache/cassandra/service/MigrationManager.java
+++ b/src/java/org/apache/cassandra/service/MigrationManager.java
@@ -129,7 +129,7 @@ public class MigrationManager
submitMigrationTask(endpoint);
}
};
- ScheduledExecutors.optionalTasks.schedule(runnable, MIGRATION_DELAY_IN_MS, TimeUnit.MILLISECONDS);
+ ScheduledExecutors.nonPeriodicTasks.schedule(runnable, MIGRATION_DELAY_IN_MS, TimeUnit.MILLISECONDS);
}
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/465bb5d4/src/java/org/apache/cassandra/service/StorageService.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/StorageService.java b/src/java/org/apache/cassandra/service/StorageService.java
index 3148f5e..e8ab54e 100644
--- a/src/java/org/apache/cassandra/service/StorageService.java
+++ b/src/java/org/apache/cassandra/service/StorageService.java
@@ -3903,8 +3903,6 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
// there are no segments to replay, so we force the recycling of any remaining (should be at most one)
CommitLog.instance.forceRecycleAllSegments();
- ColumnFamilyStore.shutdownPostFlushExecutor();
-
CommitLog.instance.shutdownBlocking();
// wait for miscellaneous tasks like sstable and commitlog segment deletion
@@ -3912,6 +3910,8 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
if (!ScheduledExecutors.nonPeriodicTasks.awaitTermination(1, TimeUnit.MINUTES))
logger.warn("Miscellaneous task executor still busy after one minute; proceeding with shutdown");
+ ColumnFamilyStore.shutdownPostFlushExecutor();
+
setMode(Mode.DRAINED, true);
}
[04/10] cassandra git commit: Move migration tasks to non-periodic
queue, assure flush executor shutdown after non-periodic executor.
Posted by al...@apache.org.
Move migration tasks to non-periodic queue, assure flush executor shutdown after non-periodic executor.
Patch by Alex Petrov; reviewed by Joel Knighton for CASSANDRA-12251
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/465bb5d4
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/465bb5d4
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/465bb5d4
Branch: refs/heads/trunk
Commit: 465bb5d45ccef337382592127e214a0ca16a3d88
Parents: 93ad056
Author: Alex Petrov <ol...@gmail.com>
Authored: Mon Aug 1 09:50:33 2016 +0200
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Tue Aug 23 13:31:16 2016 +0300
----------------------------------------------------------------------
CHANGES.txt | 1 +
src/java/org/apache/cassandra/service/MigrationManager.java | 2 +-
src/java/org/apache/cassandra/service/StorageService.java | 4 ++--
3 files changed, 4 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/465bb5d4/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index d28e419..a3a34c1 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
2.2.8
+ * Move migration tasks to non-periodic queue, assure flush executor shutdown after non-periodic executor (CASSANDRA-12251)
* cqlsh copy: fixed possible race in initializing feeding thread (CASSANDRA-11701)
* Only set broadcast_rpc_address on Ec2MultiRegionSnitch if it's not set (CASSANDRA-11357)
* Update StorageProxy range metrics for timeouts, failures and unavailables (CASSANDRA-9507)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/465bb5d4/src/java/org/apache/cassandra/service/MigrationManager.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/MigrationManager.java b/src/java/org/apache/cassandra/service/MigrationManager.java
index f7a2a48..4cb5ed7 100644
--- a/src/java/org/apache/cassandra/service/MigrationManager.java
+++ b/src/java/org/apache/cassandra/service/MigrationManager.java
@@ -129,7 +129,7 @@ public class MigrationManager
submitMigrationTask(endpoint);
}
};
- ScheduledExecutors.optionalTasks.schedule(runnable, MIGRATION_DELAY_IN_MS, TimeUnit.MILLISECONDS);
+ ScheduledExecutors.nonPeriodicTasks.schedule(runnable, MIGRATION_DELAY_IN_MS, TimeUnit.MILLISECONDS);
}
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/465bb5d4/src/java/org/apache/cassandra/service/StorageService.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/StorageService.java b/src/java/org/apache/cassandra/service/StorageService.java
index 3148f5e..e8ab54e 100644
--- a/src/java/org/apache/cassandra/service/StorageService.java
+++ b/src/java/org/apache/cassandra/service/StorageService.java
@@ -3903,8 +3903,6 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
// there are no segments to replay, so we force the recycling of any remaining (should be at most one)
CommitLog.instance.forceRecycleAllSegments();
- ColumnFamilyStore.shutdownPostFlushExecutor();
-
CommitLog.instance.shutdownBlocking();
// wait for miscellaneous tasks like sstable and commitlog segment deletion
@@ -3912,6 +3910,8 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
if (!ScheduledExecutors.nonPeriodicTasks.awaitTermination(1, TimeUnit.MINUTES))
logger.warn("Miscellaneous task executor still busy after one minute; proceeding with shutdown");
+ ColumnFamilyStore.shutdownPostFlushExecutor();
+
setMode(Mode.DRAINED, true);
}
[10/10] cassandra git commit: Merge branch 'cassandra-3.9' into trunk
Posted by al...@apache.org.
Merge branch 'cassandra-3.9' into trunk
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/5dda0abb
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/5dda0abb
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/5dda0abb
Branch: refs/heads/trunk
Commit: 5dda0abbfd1e3346f08fd29386bc2462a6c559c1
Parents: 48d4f60 2ca8f38
Author: Aleksey Yeschenko <al...@apache.org>
Authored: Tue Aug 23 13:33:12 2016 +0300
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Tue Aug 23 13:33:12 2016 +0300
----------------------------------------------------------------------
CHANGES.txt | 1 +
src/java/org/apache/cassandra/service/MigrationManager.java | 2 +-
src/java/org/apache/cassandra/service/StorageService.java | 4 ++--
3 files changed, 4 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/5dda0abb/CHANGES.txt
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/5dda0abb/src/java/org/apache/cassandra/service/MigrationManager.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/5dda0abb/src/java/org/apache/cassandra/service/StorageService.java
----------------------------------------------------------------------
[05/10] cassandra git commit: Merge branch 'cassandra-2.2' into
cassandra-3.0
Posted by al...@apache.org.
Merge branch 'cassandra-2.2' into cassandra-3.0
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d0fc9531
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d0fc9531
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d0fc9531
Branch: refs/heads/cassandra-3.9
Commit: d0fc95312bb17f71baa1fbf365b5ec4b7fc21342
Parents: f255370 465bb5d
Author: Aleksey Yeschenko <al...@apache.org>
Authored: Tue Aug 23 13:32:19 2016 +0300
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Tue Aug 23 13:32:19 2016 +0300
----------------------------------------------------------------------
CHANGES.txt | 1 +
src/java/org/apache/cassandra/service/MigrationManager.java | 2 +-
src/java/org/apache/cassandra/service/StorageService.java | 4 ++--
3 files changed, 4 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/d0fc9531/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 07ee59f,a3a34c1..d384fb3
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,41 -1,5 +1,42 @@@
-2.2.8
+3.0.9
+ * Add schema to snapshot manifest, add USING TIMESTAMP clause to ALTER TABLE statements (CASSANDRA-7190)
+ * Fix clean interval not sent to commit log for empty memtable flush (CASSANDRA-12436)
+ * Fix potential resource leak in RMIServerSocketFactoryImpl (CASSANDRA-12331)
+ * Backport CASSANDRA-12002 (CASSANDRA-12177)
+ * Make sure compaction stats are updated when compaction is interrupted (CASSANDRA-12100)
+ * Fix potential bad messaging service message for paged range reads
+ within mixed-version 3.x clusters (CASSANDRA-12249)
+ * Change commitlog and sstables to track dirty and clean intervals (CASSANDRA-11828)
+ * NullPointerException during compaction on table with static columns (CASSANDRA-12336)
+ * Fixed ConcurrentModificationException when reading metrics in GraphiteReporter (CASSANDRA-11823)
+ * Fix upgrade of super columns on thrift (CASSANDRA-12335)
+ * Fixed flacky BlacklistingCompactionsTest, switched to fixed size types and increased corruption size (CASSANDRA-12359)
+ * Rerun ReplicationAwareTokenAllocatorTest on failure to avoid flakiness (CASSANDRA-12277)
+ * Exception when computing read-repair for range tombstones (CASSANDRA-12263)
+ * Lost counter writes in compact table and static columns (CASSANDRA-12219)
+ * AssertionError with MVs on updating a row that isn't indexed due to a null value (CASSANDRA-12247)
+ * Disable RR and speculative retry with EACH_QUORUM reads (CASSANDRA-11980)
+ * Add option to override compaction space check (CASSANDRA-12180)
+ * Faster startup by only scanning each directory for temporary files once (CASSANDRA-12114)
+ * Respond with v1/v2 protocol header when responding to driver that attempts
+ to connect with too low of a protocol version (CASSANDRA-11464)
+ * NullPointerExpception when reading/compacting table (CASSANDRA-11988)
+ * Fix problem with undeleteable rows on upgrade to new sstable format (CASSANDRA-12144)
+ * Fix paging logic for deleted partitions with static columns (CASSANDRA-12107)
+ * Wait until the message is being send to decide which serializer must be used (CASSANDRA-11393)
+ * Fix migration of static thrift column names with non-text comparators (CASSANDRA-12147)
+ * Fix upgrading sparse tables that are incorrectly marked as dense (CASSANDRA-11315)
+ * Fix reverse queries ignoring range tombstones (CASSANDRA-11733)
+ * Avoid potential race when rebuilding CFMetaData (CASSANDRA-12098)
+ * Avoid missing sstables when getting the canonical sstables (CASSANDRA-11996)
+ * Always select the live sstables when getting sstables in bounds (CASSANDRA-11944)
+ * Fix column ordering of results with static columns for Thrift requests in
+ a mixed 2.x/3.x cluster, also fix potential non-resolved duplication of
+ those static columns in query results (CASSANDRA-12123)
+ * Avoid digest mismatch with empty but static rows (CASSANDRA-12090)
+ * Fix EOF exception when altering column type (CASSANDRA-11820)
+Merged from 2.2:
+ * Move migration tasks to non-periodic queue, assure flush executor shutdown after non-periodic executor (CASSANDRA-12251)
* cqlsh copy: fixed possible race in initializing feeding thread (CASSANDRA-11701)
* Only set broadcast_rpc_address on Ec2MultiRegionSnitch if it's not set (CASSANDRA-11357)
* Update StorageProxy range metrics for timeouts, failures and unavailables (CASSANDRA-9507)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/d0fc9531/src/java/org/apache/cassandra/service/MigrationManager.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/service/MigrationManager.java
index 0f2fd28,4cb5ed7..7c929e7
--- a/src/java/org/apache/cassandra/service/MigrationManager.java
+++ b/src/java/org/apache/cassandra/service/MigrationManager.java
@@@ -105,26 -107,29 +105,26 @@@ public class MigrationManage
{
// Include a delay to make sure we have a chance to apply any changes being
// pushed out simultaneously. See CASSANDRA-5025
- Runnable runnable = new Runnable()
+ Runnable runnable = () ->
{
- public void run()
+ // grab the latest version of the schema since it may have changed again since the initial scheduling
+ EndpointState epState = Gossiper.instance.getEndpointStateForEndpoint(endpoint);
+ if (epState == null)
{
- // grab the latest version of the schema since it may have changed again since the initial scheduling
- EndpointState epState = Gossiper.instance.getEndpointStateForEndpoint(endpoint);
- if (epState == null)
- {
- logger.debug("epState vanished for {}, not submitting migration task", endpoint);
- return;
- }
- VersionedValue value = epState.getApplicationState(ApplicationState.SCHEMA);
- UUID currentVersion = UUID.fromString(value.value);
- if (Schema.instance.getVersion().equals(currentVersion))
- {
- logger.debug("not submitting migration task for {} because our versions match", endpoint);
- return;
- }
- logger.debug("submitting migration task for {}", endpoint);
- submitMigrationTask(endpoint);
+ logger.debug("epState vanished for {}, not submitting migration task", endpoint);
+ return;
}
+ VersionedValue value = epState.getApplicationState(ApplicationState.SCHEMA);
+ UUID currentVersion = UUID.fromString(value.value);
+ if (Schema.instance.getVersion().equals(currentVersion))
+ {
+ logger.debug("not submitting migration task for {} because our versions match", endpoint);
+ return;
+ }
+ logger.debug("submitting migration task for {}", endpoint);
+ submitMigrationTask(endpoint);
};
- ScheduledExecutors.optionalTasks.schedule(runnable, MIGRATION_DELAY_IN_MS, TimeUnit.MILLISECONDS);
+ ScheduledExecutors.nonPeriodicTasks.schedule(runnable, MIGRATION_DELAY_IN_MS, TimeUnit.MILLISECONDS);
}
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/d0fc9531/src/java/org/apache/cassandra/service/StorageService.java
----------------------------------------------------------------------
[06/10] cassandra git commit: Merge branch 'cassandra-2.2' into
cassandra-3.0
Posted by al...@apache.org.
Merge branch 'cassandra-2.2' into cassandra-3.0
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d0fc9531
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d0fc9531
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d0fc9531
Branch: refs/heads/cassandra-3.0
Commit: d0fc95312bb17f71baa1fbf365b5ec4b7fc21342
Parents: f255370 465bb5d
Author: Aleksey Yeschenko <al...@apache.org>
Authored: Tue Aug 23 13:32:19 2016 +0300
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Tue Aug 23 13:32:19 2016 +0300
----------------------------------------------------------------------
CHANGES.txt | 1 +
src/java/org/apache/cassandra/service/MigrationManager.java | 2 +-
src/java/org/apache/cassandra/service/StorageService.java | 4 ++--
3 files changed, 4 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/d0fc9531/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 07ee59f,a3a34c1..d384fb3
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,41 -1,5 +1,42 @@@
-2.2.8
+3.0.9
+ * Add schema to snapshot manifest, add USING TIMESTAMP clause to ALTER TABLE statements (CASSANDRA-7190)
+ * Fix clean interval not sent to commit log for empty memtable flush (CASSANDRA-12436)
+ * Fix potential resource leak in RMIServerSocketFactoryImpl (CASSANDRA-12331)
+ * Backport CASSANDRA-12002 (CASSANDRA-12177)
+ * Make sure compaction stats are updated when compaction is interrupted (CASSANDRA-12100)
+ * Fix potential bad messaging service message for paged range reads
+ within mixed-version 3.x clusters (CASSANDRA-12249)
+ * Change commitlog and sstables to track dirty and clean intervals (CASSANDRA-11828)
+ * NullPointerException during compaction on table with static columns (CASSANDRA-12336)
+ * Fixed ConcurrentModificationException when reading metrics in GraphiteReporter (CASSANDRA-11823)
+ * Fix upgrade of super columns on thrift (CASSANDRA-12335)
+ * Fixed flacky BlacklistingCompactionsTest, switched to fixed size types and increased corruption size (CASSANDRA-12359)
+ * Rerun ReplicationAwareTokenAllocatorTest on failure to avoid flakiness (CASSANDRA-12277)
+ * Exception when computing read-repair for range tombstones (CASSANDRA-12263)
+ * Lost counter writes in compact table and static columns (CASSANDRA-12219)
+ * AssertionError with MVs on updating a row that isn't indexed due to a null value (CASSANDRA-12247)
+ * Disable RR and speculative retry with EACH_QUORUM reads (CASSANDRA-11980)
+ * Add option to override compaction space check (CASSANDRA-12180)
+ * Faster startup by only scanning each directory for temporary files once (CASSANDRA-12114)
+ * Respond with v1/v2 protocol header when responding to driver that attempts
+ to connect with too low of a protocol version (CASSANDRA-11464)
+ * NullPointerExpception when reading/compacting table (CASSANDRA-11988)
+ * Fix problem with undeleteable rows on upgrade to new sstable format (CASSANDRA-12144)
+ * Fix paging logic for deleted partitions with static columns (CASSANDRA-12107)
+ * Wait until the message is being send to decide which serializer must be used (CASSANDRA-11393)
+ * Fix migration of static thrift column names with non-text comparators (CASSANDRA-12147)
+ * Fix upgrading sparse tables that are incorrectly marked as dense (CASSANDRA-11315)
+ * Fix reverse queries ignoring range tombstones (CASSANDRA-11733)
+ * Avoid potential race when rebuilding CFMetaData (CASSANDRA-12098)
+ * Avoid missing sstables when getting the canonical sstables (CASSANDRA-11996)
+ * Always select the live sstables when getting sstables in bounds (CASSANDRA-11944)
+ * Fix column ordering of results with static columns for Thrift requests in
+ a mixed 2.x/3.x cluster, also fix potential non-resolved duplication of
+ those static columns in query results (CASSANDRA-12123)
+ * Avoid digest mismatch with empty but static rows (CASSANDRA-12090)
+ * Fix EOF exception when altering column type (CASSANDRA-11820)
+Merged from 2.2:
+ * Move migration tasks to non-periodic queue, assure flush executor shutdown after non-periodic executor (CASSANDRA-12251)
* cqlsh copy: fixed possible race in initializing feeding thread (CASSANDRA-11701)
* Only set broadcast_rpc_address on Ec2MultiRegionSnitch if it's not set (CASSANDRA-11357)
* Update StorageProxy range metrics for timeouts, failures and unavailables (CASSANDRA-9507)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/d0fc9531/src/java/org/apache/cassandra/service/MigrationManager.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/service/MigrationManager.java
index 0f2fd28,4cb5ed7..7c929e7
--- a/src/java/org/apache/cassandra/service/MigrationManager.java
+++ b/src/java/org/apache/cassandra/service/MigrationManager.java
@@@ -105,26 -107,29 +105,26 @@@ public class MigrationManage
{
// Include a delay to make sure we have a chance to apply any changes being
// pushed out simultaneously. See CASSANDRA-5025
- Runnable runnable = new Runnable()
+ Runnable runnable = () ->
{
- public void run()
+ // grab the latest version of the schema since it may have changed again since the initial scheduling
+ EndpointState epState = Gossiper.instance.getEndpointStateForEndpoint(endpoint);
+ if (epState == null)
{
- // grab the latest version of the schema since it may have changed again since the initial scheduling
- EndpointState epState = Gossiper.instance.getEndpointStateForEndpoint(endpoint);
- if (epState == null)
- {
- logger.debug("epState vanished for {}, not submitting migration task", endpoint);
- return;
- }
- VersionedValue value = epState.getApplicationState(ApplicationState.SCHEMA);
- UUID currentVersion = UUID.fromString(value.value);
- if (Schema.instance.getVersion().equals(currentVersion))
- {
- logger.debug("not submitting migration task for {} because our versions match", endpoint);
- return;
- }
- logger.debug("submitting migration task for {}", endpoint);
- submitMigrationTask(endpoint);
+ logger.debug("epState vanished for {}, not submitting migration task", endpoint);
+ return;
}
+ VersionedValue value = epState.getApplicationState(ApplicationState.SCHEMA);
+ UUID currentVersion = UUID.fromString(value.value);
+ if (Schema.instance.getVersion().equals(currentVersion))
+ {
+ logger.debug("not submitting migration task for {} because our versions match", endpoint);
+ return;
+ }
+ logger.debug("submitting migration task for {}", endpoint);
+ submitMigrationTask(endpoint);
};
- ScheduledExecutors.optionalTasks.schedule(runnable, MIGRATION_DELAY_IN_MS, TimeUnit.MILLISECONDS);
+ ScheduledExecutors.nonPeriodicTasks.schedule(runnable, MIGRATION_DELAY_IN_MS, TimeUnit.MILLISECONDS);
}
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/d0fc9531/src/java/org/apache/cassandra/service/StorageService.java
----------------------------------------------------------------------
[08/10] cassandra git commit: Merge branch 'cassandra-3.0' into
cassandra-3.9
Posted by al...@apache.org.
Merge branch 'cassandra-3.0' into cassandra-3.9
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/2ca8f38e
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/2ca8f38e
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/2ca8f38e
Branch: refs/heads/cassandra-3.9
Commit: 2ca8f38efbb199d496527d6a8c5463c653df3e34
Parents: a592693 d0fc953
Author: Aleksey Yeschenko <al...@apache.org>
Authored: Tue Aug 23 13:32:35 2016 +0300
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Tue Aug 23 13:32:35 2016 +0300
----------------------------------------------------------------------
CHANGES.txt | 1 +
src/java/org/apache/cassandra/service/MigrationManager.java | 2 +-
src/java/org/apache/cassandra/service/StorageService.java | 4 ++--
3 files changed, 4 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/2ca8f38e/CHANGES.txt
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/2ca8f38e/src/java/org/apache/cassandra/service/MigrationManager.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/2ca8f38e/src/java/org/apache/cassandra/service/StorageService.java
----------------------------------------------------------------------
[03/10] cassandra git commit: Move migration tasks to non-periodic
queue, assure flush executor shutdown after non-periodic executor.
Posted by al...@apache.org.
Move migration tasks to non-periodic queue, assure flush executor shutdown after non-periodic executor.
Patch by Alex Petrov; reviewed by Joel Knighton for CASSANDRA-12251
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/465bb5d4
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/465bb5d4
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/465bb5d4
Branch: refs/heads/cassandra-3.9
Commit: 465bb5d45ccef337382592127e214a0ca16a3d88
Parents: 93ad056
Author: Alex Petrov <ol...@gmail.com>
Authored: Mon Aug 1 09:50:33 2016 +0200
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Tue Aug 23 13:31:16 2016 +0300
----------------------------------------------------------------------
CHANGES.txt | 1 +
src/java/org/apache/cassandra/service/MigrationManager.java | 2 +-
src/java/org/apache/cassandra/service/StorageService.java | 4 ++--
3 files changed, 4 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/465bb5d4/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index d28e419..a3a34c1 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
2.2.8
+ * Move migration tasks to non-periodic queue, assure flush executor shutdown after non-periodic executor (CASSANDRA-12251)
* cqlsh copy: fixed possible race in initializing feeding thread (CASSANDRA-11701)
* Only set broadcast_rpc_address on Ec2MultiRegionSnitch if it's not set (CASSANDRA-11357)
* Update StorageProxy range metrics for timeouts, failures and unavailables (CASSANDRA-9507)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/465bb5d4/src/java/org/apache/cassandra/service/MigrationManager.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/MigrationManager.java b/src/java/org/apache/cassandra/service/MigrationManager.java
index f7a2a48..4cb5ed7 100644
--- a/src/java/org/apache/cassandra/service/MigrationManager.java
+++ b/src/java/org/apache/cassandra/service/MigrationManager.java
@@ -129,7 +129,7 @@ public class MigrationManager
submitMigrationTask(endpoint);
}
};
- ScheduledExecutors.optionalTasks.schedule(runnable, MIGRATION_DELAY_IN_MS, TimeUnit.MILLISECONDS);
+ ScheduledExecutors.nonPeriodicTasks.schedule(runnable, MIGRATION_DELAY_IN_MS, TimeUnit.MILLISECONDS);
}
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/465bb5d4/src/java/org/apache/cassandra/service/StorageService.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/StorageService.java b/src/java/org/apache/cassandra/service/StorageService.java
index 3148f5e..e8ab54e 100644
--- a/src/java/org/apache/cassandra/service/StorageService.java
+++ b/src/java/org/apache/cassandra/service/StorageService.java
@@ -3903,8 +3903,6 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
// there are no segments to replay, so we force the recycling of any remaining (should be at most one)
CommitLog.instance.forceRecycleAllSegments();
- ColumnFamilyStore.shutdownPostFlushExecutor();
-
CommitLog.instance.shutdownBlocking();
// wait for miscellaneous tasks like sstable and commitlog segment deletion
@@ -3912,6 +3910,8 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
if (!ScheduledExecutors.nonPeriodicTasks.awaitTermination(1, TimeUnit.MINUTES))
logger.warn("Miscellaneous task executor still busy after one minute; proceeding with shutdown");
+ ColumnFamilyStore.shutdownPostFlushExecutor();
+
setMode(Mode.DRAINED, true);
}
[09/10] cassandra git commit: Merge branch 'cassandra-3.0' into
cassandra-3.9
Posted by al...@apache.org.
Merge branch 'cassandra-3.0' into cassandra-3.9
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/2ca8f38e
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/2ca8f38e
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/2ca8f38e
Branch: refs/heads/trunk
Commit: 2ca8f38efbb199d496527d6a8c5463c653df3e34
Parents: a592693 d0fc953
Author: Aleksey Yeschenko <al...@apache.org>
Authored: Tue Aug 23 13:32:35 2016 +0300
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Tue Aug 23 13:32:35 2016 +0300
----------------------------------------------------------------------
CHANGES.txt | 1 +
src/java/org/apache/cassandra/service/MigrationManager.java | 2 +-
src/java/org/apache/cassandra/service/StorageService.java | 4 ++--
3 files changed, 4 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/2ca8f38e/CHANGES.txt
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/2ca8f38e/src/java/org/apache/cassandra/service/MigrationManager.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/2ca8f38e/src/java/org/apache/cassandra/service/StorageService.java
----------------------------------------------------------------------
[07/10] cassandra git commit: Merge branch 'cassandra-2.2' into
cassandra-3.0
Posted by al...@apache.org.
Merge branch 'cassandra-2.2' into cassandra-3.0
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d0fc9531
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d0fc9531
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d0fc9531
Branch: refs/heads/trunk
Commit: d0fc95312bb17f71baa1fbf365b5ec4b7fc21342
Parents: f255370 465bb5d
Author: Aleksey Yeschenko <al...@apache.org>
Authored: Tue Aug 23 13:32:19 2016 +0300
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Tue Aug 23 13:32:19 2016 +0300
----------------------------------------------------------------------
CHANGES.txt | 1 +
src/java/org/apache/cassandra/service/MigrationManager.java | 2 +-
src/java/org/apache/cassandra/service/StorageService.java | 4 ++--
3 files changed, 4 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/d0fc9531/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 07ee59f,a3a34c1..d384fb3
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,41 -1,5 +1,42 @@@
-2.2.8
+3.0.9
+ * Add schema to snapshot manifest, add USING TIMESTAMP clause to ALTER TABLE statements (CASSANDRA-7190)
+ * Fix clean interval not sent to commit log for empty memtable flush (CASSANDRA-12436)
+ * Fix potential resource leak in RMIServerSocketFactoryImpl (CASSANDRA-12331)
+ * Backport CASSANDRA-12002 (CASSANDRA-12177)
+ * Make sure compaction stats are updated when compaction is interrupted (CASSANDRA-12100)
+ * Fix potential bad messaging service message for paged range reads
+ within mixed-version 3.x clusters (CASSANDRA-12249)
+ * Change commitlog and sstables to track dirty and clean intervals (CASSANDRA-11828)
+ * NullPointerException during compaction on table with static columns (CASSANDRA-12336)
+ * Fixed ConcurrentModificationException when reading metrics in GraphiteReporter (CASSANDRA-11823)
+ * Fix upgrade of super columns on thrift (CASSANDRA-12335)
+ * Fixed flacky BlacklistingCompactionsTest, switched to fixed size types and increased corruption size (CASSANDRA-12359)
+ * Rerun ReplicationAwareTokenAllocatorTest on failure to avoid flakiness (CASSANDRA-12277)
+ * Exception when computing read-repair for range tombstones (CASSANDRA-12263)
+ * Lost counter writes in compact table and static columns (CASSANDRA-12219)
+ * AssertionError with MVs on updating a row that isn't indexed due to a null value (CASSANDRA-12247)
+ * Disable RR and speculative retry with EACH_QUORUM reads (CASSANDRA-11980)
+ * Add option to override compaction space check (CASSANDRA-12180)
+ * Faster startup by only scanning each directory for temporary files once (CASSANDRA-12114)
+ * Respond with v1/v2 protocol header when responding to driver that attempts
+ to connect with too low of a protocol version (CASSANDRA-11464)
+ * NullPointerExpception when reading/compacting table (CASSANDRA-11988)
+ * Fix problem with undeleteable rows on upgrade to new sstable format (CASSANDRA-12144)
+ * Fix paging logic for deleted partitions with static columns (CASSANDRA-12107)
+ * Wait until the message is being send to decide which serializer must be used (CASSANDRA-11393)
+ * Fix migration of static thrift column names with non-text comparators (CASSANDRA-12147)
+ * Fix upgrading sparse tables that are incorrectly marked as dense (CASSANDRA-11315)
+ * Fix reverse queries ignoring range tombstones (CASSANDRA-11733)
+ * Avoid potential race when rebuilding CFMetaData (CASSANDRA-12098)
+ * Avoid missing sstables when getting the canonical sstables (CASSANDRA-11996)
+ * Always select the live sstables when getting sstables in bounds (CASSANDRA-11944)
+ * Fix column ordering of results with static columns for Thrift requests in
+ a mixed 2.x/3.x cluster, also fix potential non-resolved duplication of
+ those static columns in query results (CASSANDRA-12123)
+ * Avoid digest mismatch with empty but static rows (CASSANDRA-12090)
+ * Fix EOF exception when altering column type (CASSANDRA-11820)
+Merged from 2.2:
+ * Move migration tasks to non-periodic queue, assure flush executor shutdown after non-periodic executor (CASSANDRA-12251)
* cqlsh copy: fixed possible race in initializing feeding thread (CASSANDRA-11701)
* Only set broadcast_rpc_address on Ec2MultiRegionSnitch if it's not set (CASSANDRA-11357)
* Update StorageProxy range metrics for timeouts, failures and unavailables (CASSANDRA-9507)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/d0fc9531/src/java/org/apache/cassandra/service/MigrationManager.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/service/MigrationManager.java
index 0f2fd28,4cb5ed7..7c929e7
--- a/src/java/org/apache/cassandra/service/MigrationManager.java
+++ b/src/java/org/apache/cassandra/service/MigrationManager.java
@@@ -105,26 -107,29 +105,26 @@@ public class MigrationManage
{
// Include a delay to make sure we have a chance to apply any changes being
// pushed out simultaneously. See CASSANDRA-5025
- Runnable runnable = new Runnable()
+ Runnable runnable = () ->
{
- public void run()
+ // grab the latest version of the schema since it may have changed again since the initial scheduling
+ EndpointState epState = Gossiper.instance.getEndpointStateForEndpoint(endpoint);
+ if (epState == null)
{
- // grab the latest version of the schema since it may have changed again since the initial scheduling
- EndpointState epState = Gossiper.instance.getEndpointStateForEndpoint(endpoint);
- if (epState == null)
- {
- logger.debug("epState vanished for {}, not submitting migration task", endpoint);
- return;
- }
- VersionedValue value = epState.getApplicationState(ApplicationState.SCHEMA);
- UUID currentVersion = UUID.fromString(value.value);
- if (Schema.instance.getVersion().equals(currentVersion))
- {
- logger.debug("not submitting migration task for {} because our versions match", endpoint);
- return;
- }
- logger.debug("submitting migration task for {}", endpoint);
- submitMigrationTask(endpoint);
+ logger.debug("epState vanished for {}, not submitting migration task", endpoint);
+ return;
}
+ VersionedValue value = epState.getApplicationState(ApplicationState.SCHEMA);
+ UUID currentVersion = UUID.fromString(value.value);
+ if (Schema.instance.getVersion().equals(currentVersion))
+ {
+ logger.debug("not submitting migration task for {} because our versions match", endpoint);
+ return;
+ }
+ logger.debug("submitting migration task for {}", endpoint);
+ submitMigrationTask(endpoint);
};
- ScheduledExecutors.optionalTasks.schedule(runnable, MIGRATION_DELAY_IN_MS, TimeUnit.MILLISECONDS);
+ ScheduledExecutors.nonPeriodicTasks.schedule(runnable, MIGRATION_DELAY_IN_MS, TimeUnit.MILLISECONDS);
}
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/d0fc9531/src/java/org/apache/cassandra/service/StorageService.java
----------------------------------------------------------------------
[02/10] cassandra git commit: Move migration tasks to non-periodic
queue, assure flush executor shutdown after non-periodic executor.
Posted by al...@apache.org.
Move migration tasks to non-periodic queue, assure flush executor shutdown after non-periodic executor.
Patch by Alex Petrov; reviewed by Joel Knighton for CASSANDRA-12251
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/465bb5d4
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/465bb5d4
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/465bb5d4
Branch: refs/heads/cassandra-3.0
Commit: 465bb5d45ccef337382592127e214a0ca16a3d88
Parents: 93ad056
Author: Alex Petrov <ol...@gmail.com>
Authored: Mon Aug 1 09:50:33 2016 +0200
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Tue Aug 23 13:31:16 2016 +0300
----------------------------------------------------------------------
CHANGES.txt | 1 +
src/java/org/apache/cassandra/service/MigrationManager.java | 2 +-
src/java/org/apache/cassandra/service/StorageService.java | 4 ++--
3 files changed, 4 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/465bb5d4/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index d28e419..a3a34c1 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
2.2.8
+ * Move migration tasks to non-periodic queue, assure flush executor shutdown after non-periodic executor (CASSANDRA-12251)
* cqlsh copy: fixed possible race in initializing feeding thread (CASSANDRA-11701)
* Only set broadcast_rpc_address on Ec2MultiRegionSnitch if it's not set (CASSANDRA-11357)
* Update StorageProxy range metrics for timeouts, failures and unavailables (CASSANDRA-9507)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/465bb5d4/src/java/org/apache/cassandra/service/MigrationManager.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/MigrationManager.java b/src/java/org/apache/cassandra/service/MigrationManager.java
index f7a2a48..4cb5ed7 100644
--- a/src/java/org/apache/cassandra/service/MigrationManager.java
+++ b/src/java/org/apache/cassandra/service/MigrationManager.java
@@ -129,7 +129,7 @@ public class MigrationManager
submitMigrationTask(endpoint);
}
};
- ScheduledExecutors.optionalTasks.schedule(runnable, MIGRATION_DELAY_IN_MS, TimeUnit.MILLISECONDS);
+ ScheduledExecutors.nonPeriodicTasks.schedule(runnable, MIGRATION_DELAY_IN_MS, TimeUnit.MILLISECONDS);
}
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/465bb5d4/src/java/org/apache/cassandra/service/StorageService.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/StorageService.java b/src/java/org/apache/cassandra/service/StorageService.java
index 3148f5e..e8ab54e 100644
--- a/src/java/org/apache/cassandra/service/StorageService.java
+++ b/src/java/org/apache/cassandra/service/StorageService.java
@@ -3903,8 +3903,6 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
// there are no segments to replay, so we force the recycling of any remaining (should be at most one)
CommitLog.instance.forceRecycleAllSegments();
- ColumnFamilyStore.shutdownPostFlushExecutor();
-
CommitLog.instance.shutdownBlocking();
// wait for miscellaneous tasks like sstable and commitlog segment deletion
@@ -3912,6 +3910,8 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
if (!ScheduledExecutors.nonPeriodicTasks.awaitTermination(1, TimeUnit.MINUTES))
logger.warn("Miscellaneous task executor still busy after one minute; proceeding with shutdown");
+ ColumnFamilyStore.shutdownPostFlushExecutor();
+
setMode(Mode.DRAINED, true);
}