[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d9158346 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d9158346 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d9158346 Branch: refs/heads/trunk Commit: d9158346943a8728d1457ca0eb015d92cfc2fa13 Parents: 35a7194 cb21f28 Author: Sam TunnicliffeAuthored: Wed Feb 3 12:03:52 2016 + Committer: Sam Tunnicliffe Committed: Wed Feb 3 12:03:52 2016 + -- CHANGES.txt | 1 + src/java/org/apache/cassandra/config/Schema.java | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/d9158346/CHANGES.txt -- diff --cc CHANGES.txt index 5119626,6e313c3..2b67b90 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,8 -1,5 +1,9 @@@ -3.0.3 +3.3 + * Avoid infinite loop if owned range is smaller than number of + data dirs (CASSANDRA-11034) + * Avoid bootstrap hanging when existing nodes have no data to stream (CASSANDRA-11010) +Merged from 3.0: + * Remove double initialization of newly added tables (CASSANDRA-11027) * Filter keys searcher results by target range (CASSANDRA-11104) * Fix deserialization of legacy read commands (CASSANDRA-11087) * Fix incorrect computation of deletion time in sstable metadata (CASSANDRA-11102)
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/233e785b Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/233e785b Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/233e785b Branch: refs/heads/trunk Commit: 233e785bdf1a0b75d36e3fec4ed10256f12eca04 Parents: d7bea00 c4d83f1 Author: Carl YeksigianAuthored: Wed Feb 3 08:34:14 2016 -0500 Committer: Carl Yeksigian Committed: Wed Feb 3 08:34:14 2016 -0500 -- src/java/org/apache/cassandra/db/Mutation.java | 27 - 1 file changed, 16 insertions(+), 11 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/233e785b/src/java/org/apache/cassandra/db/Mutation.java --
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/de24ee94 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/de24ee94 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/de24ee94 Branch: refs/heads/trunk Commit: de24ee94f355042f24f04c3dec8c1c5e4ec3 Parents: 78fe8c4 5f1e4bc Author: Carl YeksigianAuthored: Wed Feb 3 09:29:20 2016 -0500 Committer: Carl Yeksigian Committed: Wed Feb 3 09:29:20 2016 -0500 -- src/java/org/apache/cassandra/db/Mutation.java| 3 ++- .../cassandra/db/commitlog/CommitLogReplayer.java | 14 -- .../apache/cassandra/service/paxos/PaxosState.java| 3 ++- 3 files changed, 16 insertions(+), 4 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/de24ee94/src/java/org/apache/cassandra/db/Mutation.java -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/de24ee94/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java -- diff --cc src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java index 55bdf07,33750f8..985a036 --- a/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java +++ b/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java @@@ -30,8 -30,8 +30,9 @@@ import java.util.concurrent.Future import java.util.concurrent.atomic.AtomicInteger; import java.util.zip.CRC32; +import com.google.common.annotations.VisibleForTesting; import com.google.common.base.Predicate; + import com.google.common.base.Throwables; import com.google.common.collect.HashMultimap; import com.google.common.collect.Iterables; import com.google.common.collect.Multimap; @@@ -90,65 -85,6 +91,74 @@@ public class CommitLogReplaye private final ReplayFilter replayFilter; private final CommitLogArchiver archiver; +/* + * Wrapper around initiating mutations read from the log to make it possible + * to spy on initiated mutations for test + */ +@VisibleForTesting +public static class MutationInitiator +{ +protected Future initiateMutation(final Mutation mutation, + final long segmentId, + final int serializedSize, + final long entryLocation, + final CommitLogReplayer clr) +{ +Runnable runnable = new WrappedRunnable() +{ - public void runMayThrow() throws ExecutionException ++public void runMayThrow() +{ +if (Schema.instance.getKSMetaData(mutation.getKeyspaceName()) == null) +return; +if (clr.pointInTimeExceeded(mutation)) +return; + +final Keyspace keyspace = Keyspace.open(mutation.getKeyspaceName()); + +// Rebuild the mutation, omitting column families that +//a) the user has requested that we ignore, +//b) have already been flushed, +// or c) are part of a cf that was dropped. +// Keep in mind that the cf.name() is suspect. do every thing based on the cfid instead. +Mutation newMutation = null; +for (PartitionUpdate update : clr.replayFilter.filter(mutation)) +{ +if (Schema.instance.getCF(update.metadata().cfId) == null) +continue; // dropped + +ReplayPosition rp = clr.cfPositions.get(update.metadata().cfId); + +// replay if current segment is newer than last flushed one or, +// if it is the last known segment, if we are after the replay position +if (segmentId > rp.segment || (segmentId == rp.segment && entryLocation > rp.position)) +{ +if (newMutation == null) +newMutation = new Mutation(mutation.getKeyspaceName(), mutation.key()); +newMutation.add(update); +clr.replayedCount.incrementAndGet(); +} +} +if (newMutation != null) +{ +assert !newMutation.isEmpty(); -
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/5669c696 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/5669c696 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/5669c696 Branch: refs/heads/trunk Commit: 5669c6967bbdd540f27aeebf5a2c258bc4defbe3 Parents: de24ee9 b9bdd9e Author: Carl YeksigianAuthored: Wed Feb 3 09:44:01 2016 -0500 Committer: Carl Yeksigian Committed: Wed Feb 3 09:44:01 2016 -0500 -- src/java/org/apache/cassandra/db/Mutation.java| 2 +- src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java | 2 +- src/java/org/apache/cassandra/service/paxos/PaxosState.java | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/5669c696/src/java/org/apache/cassandra/db/Mutation.java -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/5669c696/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java -- diff --cc src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java index 985a036,7169b2f..e0518a9 --- a/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java +++ b/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java @@@ -91,74 -85,6 +91,74 @@@ public class CommitLogReplaye private final ReplayFilter replayFilter; private final CommitLogArchiver archiver; +/* + * Wrapper around initiating mutations read from the log to make it possible + * to spy on initiated mutations for test + */ +@VisibleForTesting +public static class MutationInitiator +{ +protected Future initiateMutation(final Mutation mutation, + final long segmentId, + final int serializedSize, + final long entryLocation, + final CommitLogReplayer clr) +{ +Runnable runnable = new WrappedRunnable() +{ +public void runMayThrow() +{ +if (Schema.instance.getKSMetaData(mutation.getKeyspaceName()) == null) +return; +if (clr.pointInTimeExceeded(mutation)) +return; + +final Keyspace keyspace = Keyspace.open(mutation.getKeyspaceName()); + +// Rebuild the mutation, omitting column families that +//a) the user has requested that we ignore, +//b) have already been flushed, +// or c) are part of a cf that was dropped. +// Keep in mind that the cf.name() is suspect. do every thing based on the cfid instead. +Mutation newMutation = null; +for (PartitionUpdate update : clr.replayFilter.filter(mutation)) +{ +if (Schema.instance.getCF(update.metadata().cfId) == null) +continue; // dropped + +ReplayPosition rp = clr.cfPositions.get(update.metadata().cfId); + +// replay if current segment is newer than last flushed one or, +// if it is the last known segment, if we are after the replay position +if (segmentId > rp.segment || (segmentId == rp.segment && entryLocation > rp.position)) +{ +if (newMutation == null) +newMutation = new Mutation(mutation.getKeyspaceName(), mutation.key()); +newMutation.add(update); +clr.replayedCount.incrementAndGet(); +} +} +if (newMutation != null) +{ +assert !newMutation.isEmpty(); + +try +{ + Uninterruptibles.getUninterruptibly(Keyspace.open(newMutation.getKeyspaceName()).applyFromCommitLog(newMutation)); +} +catch (ExecutionException e) +{ - Throwables.propagate(e.getCause()); ++throw Throwables.propagate(e.getCause()); +} + +
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/f70c3538 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/f70c3538 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/f70c3538 Branch: refs/heads/trunk Commit: f70c353852fa29622d573a0824fcdb90c0742306 Parents: e96fae3 b21df5b Author: Sam TunnicliffeAuthored: Tue Feb 2 14:34:51 2016 + Committer: Sam Tunnicliffe Committed: Tue Feb 2 14:38:45 2016 + -- CHANGES.txt| 1 + src/java/org/apache/cassandra/db/ReadCommand.java | 17 - .../cassandra/db/ReadCommandVerbHandler.java | 2 +- 3 files changed, 18 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/f70c3538/CHANGES.txt -- diff --cc CHANGES.txt index 53208c0,dcbce5b..b67fae2 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,8 -1,5 +1,9 @@@ -3.0.3 +3.3 + * Avoid infinite loop if owned range is smaller than number of + data dirs (CASSANDRA-11034) + * Avoid bootstrap hanging when existing nodes have no data to stream (CASSANDRA-11010) +Merged from 3.0: + * Fix deserialization of legacy read commands (CASSANDRA-11087) * Fix incorrect computation of deletion time in sstable metadata (CASSANDRA-11102) * Avoid memory leak when collecting sstable metadata (CASSANDRA-11026) * Mutations do not block for completion under view lock contention (CASSANDRA-10779) http://git-wip-us.apache.org/repos/asf/cassandra/blob/f70c3538/src/java/org/apache/cassandra/db/ReadCommand.java -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/f70c3538/src/java/org/apache/cassandra/db/ReadCommandVerbHandler.java -- diff --cc src/java/org/apache/cassandra/db/ReadCommandVerbHandler.java index 42cd309,9cde8dc..e2a9678 --- a/src/java/org/apache/cassandra/db/ReadCommandVerbHandler.java +++ b/src/java/org/apache/cassandra/db/ReadCommandVerbHandler.java @@@ -50,15 -47,9 +50,15 @@@ public class ReadCommandVerbHandler imp response = command.createResponse(iterator); } -MessageOut reply = new MessageOut<>(MessagingService.Verb.REQUEST_RESPONSE, response, serializer()); +if (!command.complete()) +{ +Tracing.trace("Discarding partial response to {} (timed out)", message.from); +MessagingService.instance().incrementDroppedMessages(message, System.currentTimeMillis() - message.constructionTime.timestamp); +return; +} Tracing.trace("Enqueuing response to {}", message.from); - MessageOut reply = new MessageOut<>(MessagingService.Verb.REQUEST_RESPONSE, response, ReadResponse.serializer); ++MessageOut reply = new MessageOut<>(MessagingService.Verb.REQUEST_RESPONSE, response, serializer()); MessagingService.instance().sendReply(reply, id, message.from); } }
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/c5feeda6 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/c5feeda6 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/c5feeda6 Branch: refs/heads/trunk Commit: c5feeda6a968284d15f2baaf95b871fcced32284 Parents: f70c353 f51e983 Author: Sam TunnicliffeAuthored: Tue Feb 2 15:44:50 2016 + Committer: Sam Tunnicliffe Committed: Tue Feb 2 15:44:50 2016 + -- CHANGES.txt| 1 + .../org/apache/cassandra/index/internal/keys/KeysSearcher.java | 2 ++ 2 files changed, 3 insertions(+) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/c5feeda6/CHANGES.txt -- diff --cc CHANGES.txt index b67fae2,ef0da4c..5119626 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,8 -1,5 +1,9 @@@ -3.0.3 +3.3 + * Avoid infinite loop if owned range is smaller than number of + data dirs (CASSANDRA-11034) + * Avoid bootstrap hanging when existing nodes have no data to stream (CASSANDRA-11010) +Merged from 3.0: + * Filter keys searcher results by target range (CASSANDRA-11104) * Fix deserialization of legacy read commands (CASSANDRA-11087) * Fix incorrect computation of deletion time in sstable metadata (CASSANDRA-11102) * Avoid memory leak when collecting sstable metadata (CASSANDRA-11026) http://git-wip-us.apache.org/repos/asf/cassandra/blob/c5feeda6/src/java/org/apache/cassandra/index/internal/keys/KeysSearcher.java --
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/a7125d2a Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/a7125d2a Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/a7125d2a Branch: refs/heads/trunk Commit: a7125d2a2af02e68de53fa0e6b01383daac27140 Parents: 30d3b29 c83d108 Author: Sylvain LebresneAuthored: Tue Feb 2 14:20:33 2016 +0100 Committer: Sylvain Lebresne Committed: Tue Feb 2 14:20:33 2016 +0100 -- CHANGES.txt | 1 + .../io/sstable/metadata/MetadataCollector.java | 12 ++-- 2 files changed, 11 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/a7125d2a/CHANGES.txt -- diff --cc CHANGES.txt index bad296b,da6f5cc..2600d56 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,8 -1,5 +1,9 @@@ -3.0.3 +3.3 + * Avoid infinite loop if owned range is smaller than number of + data dirs (CASSANDRA-11034) + * Avoid bootstrap hanging when existing nodes have no data to stream (CASSANDRA-11010) +Merged from 3.0: + * Avoid memory leak when collecting sstable metadata (CASSANDRA-11026) * Mutations do not block for completion under view lock contention (CASSANDRA-10779) * Invalidate legacy schema tables when unloading them (CASSANDRA-11071) * (cqlsh) handle INSERT and UPDATE statements with LWT conditions correctly
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/8996b64e Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/8996b64e Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/8996b64e Branch: refs/heads/trunk Commit: 8996b64e43a3a89dd0648f584298e2e65383b0c3 Parents: a7125d2 df3d0b0 Author: Sylvain LebresneAuthored: Tue Feb 2 14:22:59 2016 +0100 Committer: Sylvain Lebresne Committed: Tue Feb 2 14:22:59 2016 +0100 -- CHANGES.txt | 1 + .../cassandra/io/sstable/metadata/MetadataCollector.java | 7 ++- .../org/apache/cassandra/db/compaction/TTLExpiryTest.java | 2 ++ 3 files changed, 5 insertions(+), 5 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/8996b64e/CHANGES.txt -- diff --cc CHANGES.txt index 2600d56,3423927..c0acd3d --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,8 -1,5 +1,9 @@@ -3.0.3 +3.3 + * Avoid infinite loop if owned range is smaller than number of + data dirs (CASSANDRA-11034) + * Avoid bootstrap hanging when existing nodes have no data to stream (CASSANDRA-11010) +Merged from 3.0: + * Fix incorrect computation of deletion time in sstable metadata (CASSANDRA-11102) * Avoid memory leak when collecting sstable metadata (CASSANDRA-11026) * Mutations do not block for completion under view lock contention (CASSANDRA-10779) * Invalidate legacy schema tables when unloading them (CASSANDRA-11071) http://git-wip-us.apache.org/repos/asf/cassandra/blob/8996b64e/test/unit/org/apache/cassandra/db/compaction/TTLExpiryTest.java --
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/fddace61 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/fddace61 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/fddace61 Branch: refs/heads/trunk Commit: fddace61e53e1c2f8d221db541f183b8acf1cbe4 Parents: 8996b64 bc3ea66 Author: Sylvain LebresneAuthored: Tue Feb 2 14:39:52 2016 +0100 Committer: Sylvain Lebresne Committed: Tue Feb 2 14:39:52 2016 +0100 -- .../cql3/validation/operations/DeleteTest.java | 29 1 file changed, 29 insertions(+) --
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/2e965f0e Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/2e965f0e Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/2e965f0e Branch: refs/heads/trunk Commit: 2e965f0e43ef0d7d282338fca130b4b545effe7b Parents: 4d5873d 839a5ba Author: Carl YeksigianAuthored: Mon Feb 1 17:01:03 2016 -0500 Committer: Carl Yeksigian Committed: Mon Feb 1 17:01:03 2016 -0500 -- CHANGES.txt | 1 + src/java/org/apache/cassandra/db/Keyspace.java | 32 +--- src/java/org/apache/cassandra/db/Mutation.java | 19 ++-- .../cassandra/db/MutationVerbHandler.java | 25 --- .../db/commitlog/CommitLogReplayer.java | 4 ++- .../cassandra/service/paxos/PaxosState.java | 12 ++-- 6 files changed, 72 insertions(+), 21 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/2e965f0e/CHANGES.txt -- diff --cc CHANGES.txt index aa4f981,bed8703..bad296b --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,8 -1,5 +1,9 @@@ -3.0.3 +3.3 + * Avoid infinite loop if owned range is smaller than number of + data dirs (CASSANDRA-11034) + * Avoid bootstrap hanging when existing nodes have no data to stream (CASSANDRA-11010) +Merged from 3.0: + * Mutations do not block for completion under view lock contention (CASSANDRA-10779) * Invalidate legacy schema tables when unloading them (CASSANDRA-11071) * (cqlsh) handle INSERT and UPDATE statements with LWT conditions correctly (CASSANDRA-11003) http://git-wip-us.apache.org/repos/asf/cassandra/blob/2e965f0e/src/java/org/apache/cassandra/db/Mutation.java -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/2e965f0e/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java -- diff --cc src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java index e97b36e,b4472ed..3a9f5e6 --- a/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java +++ b/src/java/org/apache/cassandra/db/commitlog/CommitLogReplayer.java @@@ -88,65 -84,6 +90,65 @@@ public class CommitLogReplaye private final ReplayFilter replayFilter; private final CommitLogArchiver archiver; +/* + * Wrapper around initiating mutations read from the log to make it possible + * to spy on initiated mutations for test + */ +@VisibleForTesting +public static class MutationInitiator +{ +protected Future initiateMutation(final Mutation mutation, + final long segmentId, + final int serializedSize, + final long entryLocation, + final CommitLogReplayer clr) +{ +Runnable runnable = new WrappedRunnable() +{ +public void runMayThrow() throws IOException +{ +if (Schema.instance.getKSMetaData(mutation.getKeyspaceName()) == null) +return; +if (clr.pointInTimeExceeded(mutation)) +return; + +final Keyspace keyspace = Keyspace.open(mutation.getKeyspaceName()); + +// Rebuild the mutation, omitting column families that +//a) the user has requested that we ignore, +//b) have already been flushed, +// or c) are part of a cf that was dropped. +// Keep in mind that the cf.name() is suspect. do every thing based on the cfid instead. +Mutation newMutation = null; +for (PartitionUpdate update : clr.replayFilter.filter(mutation)) +{ +if (Schema.instance.getCF(update.metadata().cfId) == null) +continue; // dropped + +ReplayPosition rp = clr.cfPositions.get(update.metadata().cfId); + +// replay if current segment is newer than last flushed one or, +// if it is the last known segment, if we are after the replay position +if (segmentId > rp.segment || (segmentId == rp.segment && entryLocation > rp.position)) +{ +if (newMutation == null) +
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/bdcc059a Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/bdcc059a Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/bdcc059a Branch: refs/heads/trunk Commit: bdcc059a477fd17a90e5d48ac8256a8dc5798c1f Parents: 8bc8fa3 b554cb3 Author: Sam TunnicliffeAuthored: Mon Feb 1 08:44:54 2016 + Committer: Sam Tunnicliffe Committed: Mon Feb 1 08:44:54 2016 + -- CHANGES.txt| 1 + src/java/org/apache/cassandra/schema/LegacySchemaMigrator.java | 1 + 2 files changed, 2 insertions(+) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/bdcc059a/CHANGES.txt -- diff --cc CHANGES.txt index 9d58926,7a42916..394faaf --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,8 -1,5 +1,9 @@@ -3.0.3 +3.3 + * Avoid infinite loop if owned range is smaller than number of + data dirs (CASSANDRA-11034) + * Avoid bootstrap hanging when existing nodes have no data to stream (CASSANDRA-11010) +Merged from 3.0: + * Invalidate legacy schema tables when unloading them (CASSANDRA-11071) * (cqlsh) handle INSERT and UPDATE statements with LWT conditions correctly (CASSANDRA-11003) * Fix DISTINCT queries in mixed version clusters (CASSANDRA-10762)
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/58c70617 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/58c70617 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/58c70617 Branch: refs/heads/trunk Commit: 58c706177045a445fd6d9c14e435d346974edef3 Parents: 591cd9e eb12770 Author: Sam TunnicliffeAuthored: Wed Jan 27 11:50:56 2016 + Committer: Sam Tunnicliffe Committed: Wed Jan 27 11:50:56 2016 + -- CHANGES.txt | 1 + .../cassandra/schema/LegacySchemaMigrator.java | 22 +++ .../schema/LegacySchemaMigratorTest.java| 39 3 files changed, 62 insertions(+) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/58c70617/CHANGES.txt -- diff --cc CHANGES.txt index c7680a9,c99438f..89749f8 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,6 -1,5 +1,7 @@@ -3.0.3 +3.3 + * Avoid bootstrap hanging when existing nodes have no data to stream (CASSANDRA-11010) +Merged from 3.0: + * Migrate build status for indexes along with legacy schema (CASSANDRA-11046) * Ensure SSTables for legacy KEYS indexes can be read (CASSANDRA-11045) * Added support for IBM zSystems architecture (CASSANDRA-11054) * Update CQL documentation (CASSANDRA-10899)
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/591cd9e0 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/591cd9e0 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/591cd9e0 Branch: refs/heads/trunk Commit: 591cd9e05eba945968aad4b14a51db95c136c88b Parents: a2fbe18 5ec40a3 Author: Sam TunnicliffeAuthored: Wed Jan 27 11:09:18 2016 + Committer: Sam Tunnicliffe Committed: Wed Jan 27 11:09:18 2016 + -- CHANGES.txt | 4 +- .../org/apache/cassandra/db/LegacyLayout.java | 2 +- .../index/internal/CassandraIndex.java | 39 3 files changed, 35 insertions(+), 10 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/591cd9e0/CHANGES.txt -- diff --cc CHANGES.txt index bac9a03,024aaa0..c7680a9 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,6 -1,5 +1,7 @@@ -3.0.3 +3.3 + * Avoid bootstrap hanging when existing nodes have no data to stream (CASSANDRA-11010) +Merged from 3.0: + * Ensure SSTables for legacy KEYS indexes can be read (CASSANDRA-11045) * Added support for IBM zSystems architecture (CASSANDRA-11054) * Update CQL documentation (CASSANDRA-10899) * Check the column name, not cell name, for dropped columns when reading @@@ -350,7 -318,7 +351,8 @@@ Merged from 2.2 * Fall back to 1/4 commitlog volume for commitlog_total_space on small disks (CASSANDRA-10199) Merged from 2.1: -- * Added configurable warning threshold for GC duration (CASSANDRA-8907) ++ * ure SSTables for legacy KEYS indexes can be read (CASSANDRA-11045) ++dded configurable warning threshold for GC duration (CASSANDRA-8907) * Fix handling of streaming EOF (CASSANDRA-10206) * Only check KeyCache when it is enabled * Change streaming_socket_timeout_in_ms default to 1 hour (CASSANDRA-8611) http://git-wip-us.apache.org/repos/asf/cassandra/blob/591cd9e0/src/java/org/apache/cassandra/db/LegacyLayout.java -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/591cd9e0/src/java/org/apache/cassandra/index/internal/CassandraIndex.java --
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/59560005 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/59560005 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/59560005 Branch: refs/heads/trunk Commit: 5956000507ce41e969373c3e8f4d84107b4212dd Parents: 58c7061 3e37b4a Author: Sylvain LebresneAuthored: Wed Jan 27 15:49:45 2016 +0100 Committer: Sylvain Lebresne Committed: Wed Jan 27 15:49:45 2016 +0100 -- CHANGES.txt | 1 + .../org/apache/cassandra/db/LegacyLayout.java | 53 - .../org/apache/cassandra/db/ReadCommand.java| 54 + .../cassandra/db/ReadCommandVerbHandler.java| 2 +- .../org/apache/cassandra/db/ReadResponse.java | 110 --- .../apache/cassandra/db/filter/DataLimits.java | 16 ++- .../db/partitions/PartitionUpdate.java | 4 +- .../UnfilteredPartitionIterators.java | 6 +- .../db/rows/UnfilteredRowIterators.java | 6 +- .../org/apache/cassandra/repair/Validator.java | 2 +- .../apache/cassandra/service/DataResolver.java | 6 +- .../cassandra/service/DigestResolver.java | 6 +- .../apache/cassandra/service/StorageProxy.java | 2 +- .../cassandra/cache/CacheProviderTest.java | 4 +- .../org/apache/cassandra/db/PartitionTest.java | 18 +-- .../apache/cassandra/db/ReadResponseTest.java | 10 +- .../db/SinglePartitionSliceCommandTest.java | 14 +-- .../rows/DigestBackwardCompatibilityTest.java | 5 +- .../cassandra/service/DataResolverTest.java | 2 +- 19 files changed, 191 insertions(+), 130 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/59560005/CHANGES.txt -- diff --cc CHANGES.txt index 89749f8,8daeb2d..c78dd10 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,6 -1,5 +1,7 @@@ -3.0.3 +3.3 + * Avoid bootstrap hanging when existing nodes have no data to stream (CASSANDRA-11010) +Merged from 3.0: + * Fix DISTINCT queries in mixed version clusters (CASSANDRA-10762) * Migrate build status for indexes along with legacy schema (CASSANDRA-11046) * Ensure SSTables for legacy KEYS indexes can be read (CASSANDRA-11045) * Added support for IBM zSystems architecture (CASSANDRA-11054) http://git-wip-us.apache.org/repos/asf/cassandra/blob/59560005/src/java/org/apache/cassandra/db/LegacyLayout.java -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/59560005/src/java/org/apache/cassandra/db/ReadCommand.java -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/59560005/src/java/org/apache/cassandra/db/ReadCommandVerbHandler.java -- diff --cc src/java/org/apache/cassandra/db/ReadCommandVerbHandler.java index b2fb876,9cde8dc..42cd309 --- a/src/java/org/apache/cassandra/db/ReadCommandVerbHandler.java +++ b/src/java/org/apache/cassandra/db/ReadCommandVerbHandler.java @@@ -41,24 -41,15 +41,24 @@@ public class ReadCommandVerbHandler imp } ReadCommand command = message.payload; +command.setMonitoringTime(message.constructionTime, message.getTimeout()); + ReadResponse response; -try (ReadOrderGroup opGroup = command.startOrderGroup(); UnfilteredPartitionIterator iterator = command.executeLocally(opGroup)) +try (ReadExecutionController executionController = command.executionController(); + UnfilteredPartitionIterator iterator = command.executeLocally(executionController)) { - response = command.createResponse(iterator, command.columnFilter()); + response = command.createResponse(iterator); } -MessageOut reply = new MessageOut<>(MessagingService.Verb.REQUEST_RESPONSE, response, serializer()); +if (!command.complete()) +{ +Tracing.trace("Discarding partial response to {} (timed out)", message.from); +MessagingService.instance().incrementDroppedMessages(message, System.currentTimeMillis() - message.constructionTime.timestamp); +return; +} Tracing.trace("Enqueuing response to {}", message.from); +MessageOut reply = new MessageOut<>(MessagingService.Verb.REQUEST_RESPONSE, response, ReadResponse.serializer); MessagingService.instance().sendReply(reply, id, message.from); } }
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/c146983e Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/c146983e Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/c146983e Branch: refs/heads/trunk Commit: c146983e4ea6ff0517f384c1f5b6e3b2636bfaa4 Parents: f217428 f3668e1 Author: Benedict Elliott SmithAuthored: Tue Jan 26 13:29:05 2016 + Committer: Benedict Elliott Smith Committed: Tue Jan 26 13:29:05 2016 + -- .../apache/cassandra/utils/NoSpamLogger.java| 25 +- .../apache/cassandra/utils/concurrent/Ref.java | 212 ++- .../cassandra/utils/NoSpamLoggerTest.java | 8 + .../utils/concurrent/RefCountedTest.java| 272 +++ 4 files changed, 497 insertions(+), 20 deletions(-) --
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/dd816b3d Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/dd816b3d Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/dd816b3d Branch: refs/heads/trunk Commit: dd816b3d7cf213d1b0c4dbebb1761a7ce38280a9 Parents: 94c4bdb d2b7051 Author: Sylvain LebresneAuthored: Fri Jan 22 18:02:29 2016 +0100 Committer: Sylvain Lebresne Committed: Fri Jan 22 18:02:29 2016 +0100 -- CHANGES.txt | 2 -- src/java/org/apache/cassandra/schema/SchemaKeyspace.java | 2 +- 2 files changed, 1 insertion(+), 3 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/dd816b3d/CHANGES.txt -- diff --cc CHANGES.txt index 6b25d10,4a0bca8..94b723c --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,8 -1,4 +1,6 @@@ -3.0.3 +3.3 + * Avoid bootstrap hanging when existing nodes have no data to stream (CASSANDRA-11010) +Merged from 3.0: - * Add dropped_columns to the list of schema table so it gets handled -properly (CASSANDRA-11050) * Update CQL documentation (CASSANDRA-10899) * Check the column name, not cell name, for dropped columns when reading legacy sstables (CASSANDRA-11018) http://git-wip-us.apache.org/repos/asf/cassandra/blob/dd816b3d/src/java/org/apache/cassandra/schema/SchemaKeyspace.java --
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/94c4bdb6 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/94c4bdb6 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/94c4bdb6 Branch: refs/heads/trunk Commit: 94c4bdb6f1d1524325de5b0805541b1575a73dcb Parents: 7074dda b214722 Author: Sylvain LebresneAuthored: Fri Jan 22 16:55:58 2016 +0100 Committer: Sylvain Lebresne Committed: Fri Jan 22 16:55:58 2016 +0100 -- CHANGES.txt | 2 ++ src/java/org/apache/cassandra/schema/SchemaKeyspace.java | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/94c4bdb6/CHANGES.txt -- diff --cc CHANGES.txt index 94b723c,8bfb1d1..6b25d10 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,6 -1,6 +1,8 @@@ -3.0.3 +3.3 + * Avoid bootstrap hanging when existing nodes have no data to stream (CASSANDRA-11010) +Merged from 3.0: + * Add dropped_columns to the list of schema table so it gets handled +properly (CASSANDRA-11050) * Update CQL documentation (CASSANDRA-10899) * Check the column name, not cell name, for dropped columns when reading legacy sstables (CASSANDRA-11018) http://git-wip-us.apache.org/repos/asf/cassandra/blob/94c4bdb6/src/java/org/apache/cassandra/schema/SchemaKeyspace.java --
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/456581e5 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/456581e5 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/456581e5 Branch: refs/heads/trunk Commit: 456581e54b4211216db16ddd203a325f8a309aeb Parents: 289ad77 c7cbde2 Author: Sam TunnicliffeAuthored: Tue Jan 19 08:58:21 2016 + Committer: Sam Tunnicliffe Committed: Tue Jan 19 08:58:21 2016 + -- CHANGES.txt | 1 + .../index/internal/CassandraIndex.java | 7 ++ .../validation/entities/SecondaryIndexTest.java | 24 3 files changed, 32 insertions(+) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/456581e5/CHANGES.txt -- diff --cc CHANGES.txt index 2c19a1b,9c0ab85..4965920 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,6 -1,5 +1,7 @@@ -3.0.3 +3.3 + * Avoid bootstrap hanging when existing nodes have no data to stream (CASSANDRA-11010) +Merged from 3.0: + * Don't attempt to index clustering values of static rows (CASSANDRA-11021) * Remove checksum files after replaying hints (CASSANDRA-10947) * Support passing base table metadata to custom 2i validation (CASSANDRA-10924) * Ensure stale index entries are purged during reads (CASSANDRA-11013) http://git-wip-us.apache.org/repos/asf/cassandra/blob/456581e5/src/java/org/apache/cassandra/index/internal/CassandraIndex.java --
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/ef32d629 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/ef32d629 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/ef32d629 Branch: refs/heads/trunk Commit: ef32d629d5f549394bab164ed04a44b76db1b4c2 Parents: 456581e c1a113a Author: Sylvain LebresneAuthored: Tue Jan 19 11:02:22 2016 +0100 Committer: Sylvain Lebresne Committed: Tue Jan 19 11:02:22 2016 +0100 -- CHANGES.txt| 2 ++ src/java/org/apache/cassandra/db/LegacyLayout.java | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/ef32d629/CHANGES.txt -- diff --cc CHANGES.txt index 4965920,04d0354..b70464f --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,6 -1,6 +1,8 @@@ -3.0.3 +3.3 + * Avoid bootstrap hanging when existing nodes have no data to stream (CASSANDRA-11010) +Merged from 3.0: + * Check the column name, not cell name, for dropped columns when reading +legacy sstables (CASSANDRA-11018) * Don't attempt to index clustering values of static rows (CASSANDRA-11021) * Remove checksum files after replaying hints (CASSANDRA-10947) * Support passing base table metadata to custom 2i validation (CASSANDRA-10924) http://git-wip-us.apache.org/repos/asf/cassandra/blob/ef32d629/src/java/org/apache/cassandra/db/LegacyLayout.java --
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/501f75bf Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/501f75bf Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/501f75bf Branch: refs/heads/trunk Commit: 501f75bf99b62f94839de995a8e778aabb500523 Parents: b48d71c 5e5ea772 Author: Sam TunnicliffeAuthored: Fri Jan 15 11:29:22 2016 + Committer: Sam Tunnicliffe Committed: Fri Jan 15 11:29:22 2016 + -- CHANGES.txt | 1 + .../org/apache/cassandra/config/CFMetaData.java | 2 +- src/java/org/apache/cassandra/index/Index.java | 21 +--- .../apache/cassandra/schema/IndexMetadata.java | 20 +-- .../apache/cassandra/index/CustomIndexTest.java | 57 5 files changed, 88 insertions(+), 13 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/501f75bf/CHANGES.txt -- diff --cc CHANGES.txt index 9bc1349,ff607a5..991077d --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,9 -1,6 +1,10 @@@ -3.0.3 +3.3 + * Avoid bootstrap hanging when existing nodes have no data to stream (CASSANDRA-11010) +Merged from 3.0: + * Support passing base table metadata to custom 2i validation (CASSANDRA-10924) * Ensure stale index entries are purged during reads (CASSANDRA-11013) + * (cqlsh) Also apply --connect-timeout to control connection + timeout (CASSANDRA-10959) * Fix AssertionError when removing from list using UPDATE (CASSANDRA-10954) * Fix UnsupportedOperationException when reading old sstable with range tombstone (CASSANDRA-10743) http://git-wip-us.apache.org/repos/asf/cassandra/blob/501f75bf/src/java/org/apache/cassandra/config/CFMetaData.java -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/501f75bf/src/java/org/apache/cassandra/index/Index.java -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/501f75bf/src/java/org/apache/cassandra/schema/IndexMetadata.java -- diff --cc src/java/org/apache/cassandra/schema/IndexMetadata.java index 59ac1cf,7c60a64..04e06ab --- a/src/java/org/apache/cassandra/schema/IndexMetadata.java +++ b/src/java/org/apache/cassandra/schema/IndexMetadata.java @@@ -138,12 -133,12 +138,12 @@@ public final class IndexMetadat public static String getDefaultIndexName(String cfName, String root) { if (root == null) -return (cfName + "_" + "idx").replaceAll("\\W", ""); +return PATTERN_NON_WORD_CHAR.matcher(cfName + "_" + "idx").replaceAll(""); else -return (cfName + "_" + root + "_idx").replaceAll("\\W", ""); +return PATTERN_NON_WORD_CHAR.matcher(cfName + "_" + root + "_idx").replaceAll(""); } - public void validate() + public void validate(CFMetaData cfm) { if (!isNameValid(name)) throw new ConfigurationException("Illegal index name " + name); http://git-wip-us.apache.org/repos/asf/cassandra/blob/501f75bf/test/unit/org/apache/cassandra/index/CustomIndexTest.java --
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/597729d9 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/597729d9 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/597729d9 Branch: refs/heads/trunk Commit: 597729d9d7ac6ac5f278dbb01b71e0ce977edd4f Parents: d781923 a029976 Author: Aleksey YeschenkoAuthored: Fri Jan 15 15:06:51 2016 + Committer: Aleksey Yeschenko Committed: Fri Jan 15 15:06:51 2016 + -- CHANGES.txt| 1 + src/java/org/apache/cassandra/hints/HintsDispatchExecutor.java | 3 +-- src/java/org/apache/cassandra/hints/HintsStore.java| 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/597729d9/CHANGES.txt -- diff --cc CHANGES.txt index 950aaaf,478fe08..c7a5c23 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,10 -1,7 +1,11 @@@ -3.0.3 +3.3 + * Avoid bootstrap hanging when existing nodes have no data to stream (CASSANDRA-11010) +Merged from 3.0: + * Remove checksum files after replaying hints (CASSANDRA-10947) * Support passing base table metadata to custom 2i validation (CASSANDRA-10924) * Ensure stale index entries are purged during reads (CASSANDRA-11013) + * (cqlsh) Also apply --connect-timeout to control connection + timeout (CASSANDRA-10959) * Fix AssertionError when removing from list using UPDATE (CASSANDRA-10954) * Fix UnsupportedOperationException when reading old sstable with range tombstone (CASSANDRA-10743)
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/10207793 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/10207793 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/10207793 Branch: refs/heads/trunk Commit: 10207793da3f8bfaa1348c70f21be744724bd54a Parents: 93f6529 06960d7 Author: Sam TunnicliffeAuthored: Thu Jan 14 14:13:23 2016 + Committer: Sam Tunnicliffe Committed: Thu Jan 14 14:13:23 2016 + -- CHANGES.txt | 1 + .../internal/composites/CompositesSearcher.java | 2 +- test/unit/org/apache/cassandra/Util.java| 32 .../apache/cassandra/db/SecondaryIndexTest.java | 18 +++ .../org/apache/cassandra/index/StubIndex.java | 27 ++--- 5 files changed, 54 insertions(+), 26 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/10207793/CHANGES.txt -- diff --cc CHANGES.txt index 85bc100,143ed2d..447b857 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,7 -1,5 +1,8 @@@ -3.0.3 +3.3 +Merged from 3.0: + * Ensure stale index entries are purged during reads (CASSANDRA-11013) + * (cqlsh) Also apply --connect-timeout to control connection + timeout (CASSANDRA-10959) * Fix AssertionError when removing from list using UPDATE (CASSANDRA-10954) * Fix UnsupportedOperationException when reading old sstable with range tombstone (CASSANDRA-10743) http://git-wip-us.apache.org/repos/asf/cassandra/blob/10207793/src/java/org/apache/cassandra/index/internal/composites/CompositesSearcher.java -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/10207793/test/unit/org/apache/cassandra/Util.java -- diff --cc test/unit/org/apache/cassandra/Util.java index 55fa824,7ce8f04..87a07b0 --- a/test/unit/org/apache/cassandra/Util.java +++ b/test/unit/org/apache/cassandra/Util.java @@@ -571,4 -564,35 +572,35 @@@ public class Uti return content.hasNext() ? content.next() : endOfData(); } } + + public static UnfilteredPartitionIterator executeLocally(PartitionRangeReadCommand command, + ColumnFamilyStore cfs, - ReadOrderGroup orderGroup) ++ ReadExecutionController controller) + { -return new InternalPartitionRangeReadCommand(command).queryStorageInternal(cfs, orderGroup); ++return new InternalPartitionRangeReadCommand(command).queryStorageInternal(cfs, controller); + } + + private static final class InternalPartitionRangeReadCommand extends PartitionRangeReadCommand + { + + private InternalPartitionRangeReadCommand(PartitionRangeReadCommand original) + { + super(original.isDigestQuery(), + original.digestVersion(), + original.isForThrift(), + original.metadata(), + original.nowInSec(), + original.columnFilter(), + original.rowFilter(), + original.limits(), + original.dataRange(), + Optional.empty()); + } + + private UnfilteredPartitionIterator queryStorageInternal(ColumnFamilyStore cfs, - ReadOrderGroup orderGroup) ++ ReadExecutionController controller) + { -return queryStorage(cfs, orderGroup); ++return queryStorage(cfs, controller); + } + } } http://git-wip-us.apache.org/repos/asf/cassandra/blob/10207793/test/unit/org/apache/cassandra/db/SecondaryIndexTest.java -- diff --cc test/unit/org/apache/cassandra/db/SecondaryIndexTest.java index cfa0e9e,bbccc48..ee01a47 --- a/test/unit/org/apache/cassandra/db/SecondaryIndexTest.java +++ b/test/unit/org/apache/cassandra/db/SecondaryIndexTest.java @@@ -509,4 -515,15 +516,15 @@@ public class SecondaryIndexTes assertEquals(count, Util.size(iter)); } } + + private void assertIndexCfsIsEmpty(ColumnFamilyStore indexCfs) + { + PartitionRangeReadCommand command = (PartitionRangeReadCommand)Util.cmd(indexCfs).build(); -try (ReadOrderGroup orderGroup = command.startOrderGroup(); -
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/2d0863c6 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/2d0863c6 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/2d0863c6 Branch: refs/heads/trunk Commit: 2d0863c6d4192c263e8c303ba9e581b1bc5780ed Parents: 663f765 f4037f9 Author: Sylvain LebresneAuthored: Tue Jan 12 14:18:30 2016 +0100 Committer: Sylvain Lebresne Committed: Tue Jan 12 14:18:30 2016 +0100 -- CHANGES.txt | 2 ++ src/java/org/apache/cassandra/db/rows/BTreeRow.java | 15 +++ 2 files changed, 13 insertions(+), 4 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/2d0863c6/CHANGES.txt -- diff --cc CHANGES.txt index a650448,da5ed26..2a13ef6 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,15 -1,8 +1,17 @@@ -3.0.3 +3.3 +Merged from 3.0: + * Fix UnsupportedOperationException when reading old sstable with range +tombstone (CASSANDRA-10743) * MV should use the maximum timestamp of the primary key (CASSANDRA-10910) * Fix potential assertion error during compaction (CASSANDRA-10944) + +3.2 + * Make sure tokens don't exist in several data directories (CASSANDRA-6696) + * Add requireAuthorization method to IAuthorizer (CASSANDRA-10852) + * Move static JVM options to conf/jvm.options file (CASSANDRA-10494) + * Fix CassandraVersion to accept x.y version string (CASSANDRA-10931) + * Add forceUserDefinedCleanup to allow more flexible cleanup (CASSANDRA-10708) + * (cqlsh) allow setting TTL with COPY (CASSANDRA-9494) * Fix counting of received sstables in streaming (CASSANDRA-10949) * Implement hints compression (CASSANDRA-9428) * Fix potential assertion error when reading static columns (CASSANDRA-10903)
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/2318f76c Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/2318f76c Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/2318f76c Branch: refs/heads/trunk Commit: 2318f76c8ea739b484e77ff3d2d52d279b084e8b Parents: 2d0863c 4c7b06b Author: Sylvain LebresneAuthored: Tue Jan 12 16:51:50 2016 +0100 Committer: Sylvain Lebresne Committed: Tue Jan 12 16:51:50 2016 +0100 -- CHANGES.txt | 1 + src/java/org/apache/cassandra/cql3/Lists.java | 2 +- .../cql3/validation/entities/CollectionsTest.java | 12 3 files changed, 14 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/2318f76c/CHANGES.txt -- diff --cc CHANGES.txt index 2a13ef6,6daf7f9..50dc106 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,5 -1,5 +1,6 @@@ -3.0.3 +3.3 +Merged from 3.0: + * Fix AssertionError when removing from list using UPDATE (CASSANDRA-10954) * Fix UnsupportedOperationException when reading old sstable with range tombstone (CASSANDRA-10743) * MV should use the maximum timestamp of the primary key (CASSANDRA-10910) http://git-wip-us.apache.org/repos/asf/cassandra/blob/2318f76c/src/java/org/apache/cassandra/cql3/Lists.java -- diff --cc src/java/org/apache/cassandra/cql3/Lists.java index 43a97ae,18b382b..17c1575 --- a/src/java/org/apache/cassandra/cql3/Lists.java +++ b/src/java/org/apache/cassandra/cql3/Lists.java @@@ -356,9 -356,10 +356,9 @@@ public abstract class List if (idx < 0 || idx >= existingSize) throw new InvalidRequestException(String.format("List index %d out of bound, list has size %d", idx, existingSize)); -CellPath elementPath = existingRow.getComplexColumnData(column).getCellByIndex(idx).path(); if (value == null) { - params.addTombstone(column); + params.addTombstone(column, elementPath); } else if (value != ByteBufferUtil.UNSET_BYTE_BUFFER) {
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/10c1e65d Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/10c1e65d Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/10c1e65d Branch: refs/heads/trunk Commit: 10c1e65db81a0c24081562c25d07f758ae6e3045 Parents: bd2785e 12b6c0a Author: Sylvain LebresneAuthored: Wed Jan 6 10:44:36 2016 +0100 Committer: Sylvain Lebresne Committed: Wed Jan 6 10:44:36 2016 +0100 -- src/java/org/apache/cassandra/db/rows/Row.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) --
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/7fbc39b7 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/7fbc39b7 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/7fbc39b7 Branch: refs/heads/trunk Commit: 7fbc39b743f7a08cb03f6b83bebe34c1bc342b9a Parents: 10c1e65 f937c8b Author: Sylvain LebresneAuthored: Wed Jan 6 14:44:45 2016 +0100 Committer: Sylvain Lebresne Committed: Wed Jan 6 14:44:45 2016 +0100 -- conf/cassandra-env.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/7fbc39b7/conf/cassandra-env.sh --
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/a7854fdd Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/a7854fdd Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/a7854fdd Branch: refs/heads/trunk Commit: a7854fdd339d3322c3ad66a254925311cedb1f91 Parents: 91aeb26 e9e127a Author: Carl YeksigianAuthored: Wed Jan 6 11:54:24 2016 -0500 Committer: Carl Yeksigian Committed: Wed Jan 6 11:54:24 2016 -0500 -- CHANGES.txt | 1 + 1 file changed, 1 insertion(+) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/a7854fdd/CHANGES.txt -- diff --cc CHANGES.txt index 10a72c8,cf872d9..77531af --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,14 -1,6 +1,15 @@@ -3.0.3 +3.3 +Merged from 3.0: + * MV should use the maximum timestamp of the primary key (CASSANDRA-10910) * Fix potential assertion error during compaction (CASSANDRA-10944) + +3.2 + * Make sure tokens don't exist in several data directories (CASSANDRA-6696) + * Add requireAuthorization method to IAuthorizer (CASSANDRA-10852) + * Move static JVM options to conf/jvm.options file (CASSANDRA-10494) + * Fix CassandraVersion to accept x.y version string (CASSANDRA-10931) + * Add forceUserDefinedCleanup to allow more flexible cleanup (CASSANDRA-10708) + * (cqlsh) allow setting TTL with COPY (CASSANDRA-9494) * Fix counting of received sstables in streaming (CASSANDRA-10949) * Implement hints compression (CASSANDRA-9428) * Fix potential assertion error when reading static columns (CASSANDRA-10903)
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/91aeb263 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/91aeb263 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/91aeb263 Branch: refs/heads/trunk Commit: 91aeb2637ebec72992de67e02f48d3597b15219f Parents: 7fbc39b 70c08ec Author: Carl YeksigianAuthored: Wed Jan 6 10:43:35 2016 -0500 Committer: Carl Yeksigian Committed: Wed Jan 6 10:43:35 2016 -0500 -- .../apache/cassandra/db/view/TemporalRow.java | 65 ++-- .../org/apache/cassandra/cql3/ViewTest.java | 30 + 2 files changed, 76 insertions(+), 19 deletions(-) --
[4/6] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.3
Merge branch 'cassandra-3.0' into cassandra-3.3 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/dbd5ce10 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/dbd5ce10 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/dbd5ce10 Branch: refs/heads/trunk Commit: dbd5ce104a7e59c2cf61273212e26ed7f02dde73 Parents: fd5b1de 1d7bacc Author: Sylvain LebresneAuthored: Tue Jan 5 15:17:44 2016 +0100 Committer: Sylvain Lebresne Committed: Tue Jan 5 15:17:44 2016 +0100 -- CHANGES.txt | 4 ++ .../org/apache/cassandra/db/ReadCommand.java| 2 +- .../db/compaction/CompactionIterator.java | 6 +-- .../cassandra/db/partitions/PurgeFunction.java | 12 ++--- .../apache/cassandra/db/rows/BufferCell.java| 2 +- .../cassandra/db/compaction/TTLExpiryTest.java | 47 ++-- 6 files changed, 49 insertions(+), 24 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/dbd5ce10/CHANGES.txt -- diff --cc CHANGES.txt index 5ce44a3,23edbbf..b8174d4 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,9 -1,5 +1,13 @@@ -3.0.3 ++3.3 ++Merged from 3.0: + * Fix potential assertion error during compaction (CASSANDRA-10944) ++ +3.2 + * Add requireAuthorization method to IAuthorizer (CASSANDRA-10852) + * Move static JVM options to conf/jvm.options file (CASSANDRA-10494) + * Fix CassandraVersion to accept x.y version string (CASSANDRA-10931) + * Add forceUserDefinedCleanup to allow more flexible cleanup (CASSANDRA-10708) + * (cqlsh) allow setting TTL with COPY (CASSANDRA-9494) * Fix counting of received sstables in streaming (CASSANDRA-10949) * Implement hints compression (CASSANDRA-9428) * Fix potential assertion error when reading static columns (CASSANDRA-10903) http://git-wip-us.apache.org/repos/asf/cassandra/blob/dbd5ce10/src/java/org/apache/cassandra/db/ReadCommand.java --