Merge branch 'cassandra-3.0' into cassandra-3.11
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/c3d3e1ad Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/c3d3e1ad Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/c3d3e1ad Branch: refs/heads/trunk Commit: c3d3e1ad42a6774515626c9ba46385011679a150 Parents: 8fcf837 5918375 Author: Sam Tunnicliffe <s...@beobal.com> Authored: Fri Mar 17 11:08:52 2017 +0000 Committer: Sam Tunnicliffe <s...@beobal.com> Committed: Fri Mar 17 11:08:52 2017 +0000 ---------------------------------------------------------------------- CHANGES.txt | 1 + src/java/org/apache/cassandra/db/LegacyLayout.java | 4 ++++ 2 files changed, 5 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cassandra/blob/c3d3e1ad/CHANGES.txt ---------------------------------------------------------------------- diff --cc CHANGES.txt index 7ea50db,2017b78..24e8c5f --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,18 -1,15 +1,19 @@@ -3.0.13 +3.11.0 + * Support unaligned memory access for AArch64 (CASSANDRA-13326) + * Improve SASI range iterator efficiency on intersection with an empty range (CASSANDRA-12915). + * Fix equality comparisons of columns using the duration type (CASSANDRA-13174) + * Obfuscate password in stress-graphs (CASSANDRA-12233) + * Move to FastThreadLocalThread and FastThreadLocal (CASSANDRA-13034) + * nodetool stopdaemon errors out (CASSANDRA-13030) + * Tables in system_distributed should not use gcgs of 0 (CASSANDRA-12954) + * Fix primary index calculation for SASI (CASSANDRA-12910) + * More fixes to the TokenAllocator (CASSANDRA-12990) + * NoReplicationTokenAllocator should work with zero replication factor (CASSANDRA-12983) + * Address message coalescing regression (CASSANDRA-12676) +Merged from 3.0: + * Propagate row deletions in 2i tables on upgrade (CASSANDRA-13320) * Slice.isEmpty() returns false for some empty slices (CASSANDRA-13305) * Add formatted row output to assertEmpty in CQL Tester (CASSANDRA-13238) -Merged from 2.2: - * Wrong logger name in AnticompactionTask (CASSANDRA-13343) - * Commitlog replay may fail if last mutation is within 4 bytes of end of segment (CASSANDRA-13282) - * Fix queries updating multiple time the same list (CASSANDRA-13130) - * Fix GRANT/REVOKE when keyspace isn't specified (CASSANDRA-13053) - - -3.0.12 * Prevent data loss on upgrade 2.1 - 3.0 by adding component separator to LogRecord absolute path (CASSANDRA-13294) * Improve testing on macOS by eliminating sigar logging (CASSANDRA-13233) * Cqlsh copy-from should error out when csv contains invalid data for collections (CASSANDRA-13071) http://git-wip-us.apache.org/repos/asf/cassandra/blob/c3d3e1ad/src/java/org/apache/cassandra/db/LegacyLayout.java ---------------------------------------------------------------------- diff --cc src/java/org/apache/cassandra/db/LegacyLayout.java index 3af243e,bfe3bff..e218fd1 --- a/src/java/org/apache/cassandra/db/LegacyLayout.java +++ b/src/java/org/apache/cassandra/db/LegacyLayout.java @@@ -1195,11 -1194,14 +1195,15 @@@ public abstract class LegacyLayou { // It's the row marker assert !cell.value.hasRemaining(); + // In 2.1, the row marker expired cell might have been converted into a deleted one by compaction. So, // we need to set the primary key liveness info only if the cell is not a deleted one. + // The only time in 2.x that we actually delete a row marker is in 2i tables, so in that case we do + // want to actually propagate the row deletion. (CASSANDRA-13320) if (!cell.isTombstone()) - builder.addPrimaryKeyLivenessInfo(LivenessInfo.create(cell.timestamp, cell.ttl, cell.localDeletionTime)); + builder.addPrimaryKeyLivenessInfo(LivenessInfo.withExpirationTime(cell.timestamp, cell.ttl, cell.localDeletionTime)); + else if (metadata.isIndex()) + builder.addRowDeletion(Row.Deletion.regular(new DeletionTime(cell.timestamp, cell.localDeletionTime))); } else {