Merge branch 'cassandra-2.1' into cassandra-2.2
Conflicts:
CHANGES.txt
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/75e85b96
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/75e85b96
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/75e85b96
Branch: refs/heads/trunk
Commit: 75e85b961a9d6cb04223358cb52de3c675ab090c
Parents: 02a7c34 fe65707
Author: Sylvain Lebresne <[email protected]>
Authored: Mon Jun 29 09:30:10 2015 +0200
Committer: Sylvain Lebresne <[email protected]>
Committed: Mon Jun 29 09:30:10 2015 +0200
----------------------------------------------------------------------
CHANGES.txt | 1 +
.../cql3/statements/ModificationStatement.java | 4 +---
.../apache/cassandra/service/ClientState.java | 19 ++++++++++---------
.../apache/cassandra/service/StorageProxy.java | 19 +++++++------------
src/java/org/apache/cassandra/utils/UUIDGen.java | 7 +++++++
5 files changed, 26 insertions(+), 24 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/75e85b96/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 8f4f752,7aee45b..e58d524
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,29 -1,11 +1,30 @@@
-2.1.8
+2.2
+ * Allow JMX over SSL directly from nodetool (CASSANDRA-9090)
+ * Update cqlsh for UDFs (CASSANDRA-7556)
+ * Change Windows kernel default timer resolution (CASSANDRA-9634)
+ * Deprected sstable2json and json2sstable (CASSANDRA-9618)
+ * Allow native functions in user-defined aggregates (CASSANDRA-9542)
+ * Don't repair system_distributed by default (CASSANDRA-9621)
+ * Fix mixing min, max, and count aggregates for blob type (CASSANRA-9622)
+ * Rename class for DATE type in Java driver (CASSANDRA-9563)
+ * Duplicate compilation of UDFs on coordinator (CASSANDRA-9475)
+ * Fix connection leak in CqlRecordWriter (CASSANDRA-9576)
+ * Mlockall before opening system sstables & remove boot_without_jna option
(CASSANDRA-9573)
+ * Add functions to convert timeuuid to date or time, deprecate dateOf and
unixTimestampOf (CASSANDRA-9229)
+ * Make sure we cancel non-compacting sstables from LifecycleTransaction
(CASSANDRA-9566)
+ * Fix deprecated repair JMX API (CASSANDRA-9570)
+ * Add logback metrics (CASSANDRA-9378)
+ * Update and refactor ant test/test-compression to run the tests in parallel
(CASSANDRA-9583)
+Merged from 2.1:
+ * Avoids ballot clash in Paxos (CASSANDRA-9649)
* Fix IndexOutOfBoundsException when inserting tuple with too many
elements using the string literal notation (CASSANDRA-9559)
- * Allow JMX over SSL directly from nodetool (CASSANDRA-9090)
- * Fix incorrect result for IN queries where column not found (CASSANDRA-9540)
* Enable describe on indices (CASSANDRA-7814)
+ * Fix incorrect result for IN queries where column not found (CASSANDRA-9540)
* ColumnFamilyStore.selectAndReference may block during compaction
(CASSANDRA-9637)
+ * Fix bug in cardinality check when compacting (CASSANDRA-9580)
+ * Fix memory leak in Ref due to ConcurrentLinkedQueue.remove() behaviour
(CASSANDRA-9549)
+ * Make rebuild only run one at a time (CASSANDRA-9119)
Merged from 2.0
* Improve trace messages for RR (CASSANDRA-9479)
* Fix suboptimal secondary index selection when restricted
http://git-wip-us.apache.org/repos/asf/cassandra/blob/75e85b96/src/java/org/apache/cassandra/cql3/statements/ModificationStatement.java
----------------------------------------------------------------------
diff --cc
src/java/org/apache/cassandra/cql3/statements/ModificationStatement.java
index aac94be,3838909..888cdb7
--- a/src/java/org/apache/cassandra/cql3/statements/ModificationStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/ModificationStatement.java
@@@ -645,10 -653,9 +645,8 @@@ public abstract class ModificationState
}
static ColumnFamily casInternal(CQL3CasRequest request, QueryState state)
- throws InvalidRequestException
{
- long millis = state.getTimestamp() / 1000;
- long nanos = ((state.getTimestamp() - (millis * 1000)) + 1) * 10;
- UUID ballot = UUIDGen.getTimeUUID(millis, nanos);
+ UUID ballot = UUIDGen.getTimeUUIDFromMicros(state.getTimestamp());
CFMetaData metadata =
Schema.instance.getCFMetaData(request.cfm.ksName, request.cfm.cfName);
ReadCommand readCommand = ReadCommand.create(request.cfm.ksName,
request.key, request.cfm.cfName, request.now, request.readFilter());
http://git-wip-us.apache.org/repos/asf/cassandra/blob/75e85b96/src/java/org/apache/cassandra/service/ClientState.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/service/ClientState.java
index b9e89f5,23eec73..a8e13d1
--- a/src/java/org/apache/cassandra/service/ClientState.java
+++ b/src/java/org/apache/cassandra/service/ClientState.java
@@@ -108,10 -96,11 +108,11 @@@ public class ClientStat
public final boolean isInternal;
// The remote address of the client - null for internal clients.
- private final SocketAddress remoteAddress;
+ private final InetSocketAddress remoteAddress;
- // The biggest timestamp that was returned by getTimestamp/assigned to a
query
- private final AtomicLong lastTimestampMicros = new AtomicLong(0);
+ // The biggest timestamp that was returned by getTimestamp/assigned to a
query. This is global to the VM
+ // for the sake of paxos (see #9649).
+ private static final AtomicLong lastTimestampMicros = new AtomicLong(0);
/**
* Construct a new, empty ClientState for internal calls.
http://git-wip-us.apache.org/repos/asf/cassandra/blob/75e85b96/src/java/org/apache/cassandra/service/StorageProxy.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/75e85b96/src/java/org/apache/cassandra/utils/UUIDGen.java
----------------------------------------------------------------------