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/92d1cfec Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/92d1cfec Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/92d1cfec Branch: refs/heads/trunk Commit: 92d1cfec24f873d3ecea6c2591b8686284b915f8 Parents: 99196cb ba71289 Author: Aleksey Yeschenko <[email protected]> Authored: Tue Aug 1 15:34:00 2017 +0100 Committer: Aleksey Yeschenko <[email protected]> Committed: Tue Aug 1 15:34:00 2017 +0100 ---------------------------------------------------------------------- CHANGES.txt | 2 + .../apache/cassandra/cql3/UpdateParameters.java | 7 ++- .../org/apache/cassandra/db/LegacyLayout.java | 23 ++++++--- .../cassandra/db/context/CounterContext.java | 52 ++++++++++++++------ .../cassandra/thrift/CassandraServer.java | 4 +- .../org/apache/cassandra/utils/CounterId.java | 3 +- .../db/context/CounterContextTest.java | 34 ++++++++++++- 7 files changed, 97 insertions(+), 28 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cassandra/blob/92d1cfec/CHANGES.txt ---------------------------------------------------------------------- diff --cc CHANGES.txt index 9c595fc,4038ac7..3f8a316 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,9 -1,5 +1,10 @@@ -3.0.15 +3.11.1 + * "ignore" option is ignored in sstableloader (CASSANDRA-13721) + * Deadlock in AbstractCommitLogSegmentManager (CASSANDRA-13652) + * Duplicate the buffer before passing it to analyser in SASI operation (CASSANDRA-13512) + * Properly evict pstmts from prepared statements cache (CASSANDRA-13641) +Merged from 3.0: + * Fix incorrect [2.1 <- 3.0] serialization of counter cells created in 2.0 (CASSANDRA-13691) * Fix invalid writetime for null cells (CASSANDRA-13711) * Fix ALTER TABLE statement to atomically propagate changes to the table and its MVs (CASSANDRA-12952) * Fixed ambiguous output of nodetool tablestats command (CASSANDRA-13722) @@@ -22,46 -20,8 +23,47 @@@ Merged from 2.2 Merged from 2.1: * Clone HeartBeatState when building gossip messages. Make its generation/version volatile (CASSANDRA-13700) + -3.0.14 +3.11.0 + * Allow native function calls in CQLSSTableWriter (CASSANDRA-12606) + * Replace string comparison with regex/number checks in MessagingService test (CASSANDRA-13216) + * Fix formatting of duration columns in CQLSH (CASSANDRA-13549) + * Fix the problem with duplicated rows when using paging with SASI (CASSANDRA-13302) + * Allow CONTAINS statements filtering on the partition key and itâs parts (CASSANDRA-13275) + * Fall back to even ranges calculation in clusters with vnodes when tokens are distributed unevenly (CASSANDRA-13229) + * Fix duration type validation to prevent overflow (CASSANDRA-13218) + * Forbid unsupported creation of SASI indexes over partition key columns (CASSANDRA-13228) + * Reject multiple values for a key in CQL grammar. (CASSANDRA-13369) + * UDA fails without input rows (CASSANDRA-13399) + * Fix compaction-stress by using daemonInitialization (CASSANDRA-13188) + * V5 protocol flags decoding broken (CASSANDRA-13443) + * Use write lock not read lock for removing sstables from compaction strategies. (CASSANDRA-13422) + * Use corePoolSize equal to maxPoolSize in JMXEnabledThreadPoolExecutors (CASSANDRA-13329) + * Avoid rebuilding SASI indexes containing no values (CASSANDRA-12962) + * Add charset to Analyser input stream (CASSANDRA-13151) + * Fix testLimitSSTables flake caused by concurrent flush (CASSANDRA-12820) + * cdc column addition strikes again (CASSANDRA-13382) + * Fix static column indexes (CASSANDRA-13277) + * DataOutputBuffer.asNewBuffer broken (CASSANDRA-13298) + * unittest CipherFactoryTest failed on MacOS (CASSANDRA-13370) + * Forbid SELECT restrictions and CREATE INDEX over non-frozen UDT columns (CASSANDRA-13247) + * Default logging we ship will incorrectly print "?:?" for "%F:%L" pattern (CASSANDRA-13317) + * Possible AssertionError in UnfilteredRowIteratorWithLowerBound (CASSANDRA-13366) + * 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) + * Delete illegal character from StandardTokenizerImpl.jflex (CASSANDRA-13417) + * Fix cqlsh automatic protocol downgrade regression (CASSANDRA-13307) + * Tracing payload not passed from QueryMessage to tracing session (CASSANDRA-12835) +Merged from 3.0: * Ensure int overflow doesn't occur when calculating large partition warning size (CASSANDRA-13172) * Ensure consistent view of partition columns between coordinator and replica in ColumnFilter (CASSANDRA-13004) * Failed unregistering mbean during drop keyspace (CASSANDRA-13346) http://git-wip-us.apache.org/repos/asf/cassandra/blob/92d1cfec/src/java/org/apache/cassandra/cql3/UpdateParameters.java ---------------------------------------------------------------------- diff --cc src/java/org/apache/cassandra/cql3/UpdateParameters.java index 88ffedd,8ff5344..25f04fb --- a/src/java/org/apache/cassandra/cql3/UpdateParameters.java +++ b/src/java/org/apache/cassandra/cql3/UpdateParameters.java @@@ -167,7 -167,10 +167,10 @@@ public class UpdateParameter // shard is due to the merging rules: if a user includes multiple updates to the same counter in a batch, those // multiple updates will be merged in the PartitionUpdate *before* they even reach CounterMutation. So we need // such update to be added together, and that's what a local shard gives us. - builder.addCell(BufferCell.live(column, timestamp, CounterContext.instance().createLocal(increment))); + // + // We set counterid to a special value to differentiate between regular pre-2.0 local shards from pre-2.1 era + // and "counter update" temporary state cells. Please see CounterContext.createUpdate() for further details. - builder.addCell(BufferCell.live(metadata, column, timestamp, CounterContext.instance().createUpdate(increment))); ++ builder.addCell(BufferCell.live(column, timestamp, CounterContext.instance().createUpdate(increment))); } public void setComplexDeletionTime(ColumnDefinition column) http://git-wip-us.apache.org/repos/asf/cassandra/blob/92d1cfec/src/java/org/apache/cassandra/db/LegacyLayout.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cassandra/blob/92d1cfec/src/java/org/apache/cassandra/thrift/CassandraServer.java ---------------------------------------------------------------------- diff --cc src/java/org/apache/cassandra/thrift/CassandraServer.java index 04a3e66,86caac3..e71f512 --- a/src/java/org/apache/cassandra/thrift/CassandraServer.java +++ b/src/java/org/apache/cassandra/thrift/CassandraServer.java @@@ -2195,9 -2169,9 +2195,9 @@@ public class CassandraServer implement LegacyLayout.LegacyCellName name = LegacyLayout.decodeCellName(metadata, column_parent.super_column, column.name); // See UpdateParameters.addCounter() for more details on this - ByteBuffer value = CounterContext.instance().createLocal(column.value); + ByteBuffer value = CounterContext.instance().createUpdate(column.value); CellPath path = name.collectionElement == null ? null : CellPath.create(name.collectionElement); - Cell cell = BufferCell.live(metadata, name.column, FBUtilities.timestampMicros(), value, path); + Cell cell = BufferCell.live(name.column, FBUtilities.timestampMicros(), value, path); PartitionUpdate update = PartitionUpdate.singleRowUpdate(metadata, key, BTreeRow.singleCellRow(name.clustering, cell)); http://git-wip-us.apache.org/repos/asf/cassandra/blob/92d1cfec/test/unit/org/apache/cassandra/db/context/CounterContextTest.java ---------------------------------------------------------------------- --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
