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 <alek...@apache.org>
Authored: Tue Aug 23 13:32:19 2016 +0300
Committer: Aleksey Yeschenko <alek...@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
----------------------------------------------------------------------

Reply via email to