You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by jb...@apache.org on 2013/06/20 20:56:12 UTC
[5/5] git commit: merge from 1.2
merge from 1.2
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/b9de5de2
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/b9de5de2
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/b9de5de2
Branch: refs/heads/trunk
Commit: b9de5de235267154f6a6fea5f2ca6710c5efefc5
Parents: 5151169 8d17ccb
Author: Jonathan Ellis <jb...@apache.org>
Authored: Thu Jun 20 13:56:04 2013 -0500
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Thu Jun 20 13:56:04 2013 -0500
----------------------------------------------------------------------
CHANGES.txt | 1 +
NEWS.txt | 71 +++---
bin/sstableupgrade | 55 +++++
debian/cassandra.install | 1 +
doc/cql3/CQL.textile | 5 +-
.../cql3/statements/SelectStatement.java | 11 +-
.../cassandra/db/compaction/Upgrader.java | 167 ++++++++++++++
.../cassandra/tools/StandaloneUpgrader.java | 223 +++++++++++++++++++
8 files changed, 494 insertions(+), 40 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/b9de5de2/CHANGES.txt
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/b9de5de2/NEWS.txt
----------------------------------------------------------------------
diff --cc NEWS.txt
index 7e06aa7,dbc9aab..c838d48
--- a/NEWS.txt
+++ b/NEWS.txt
@@@ -8,64 -8,11 +8,73 @@@ upgrade, just in case you need to roll
(Cassandra version X + 1 will always be able to read data files created
by version X, but the inverse is not necessarily the case.)
++<<<<<<< HEAD
+2.0.0
+=====
+
+Upgrading
+---------
+ - CAS and new features in CQL such as DROP COLUMN assume that cell
+ timestamps are microseconds-since-epoch. Do not use these
+ features if you are using client-specified timestamps with some
+ other source.
+ - Upgrading is ONLY supported from Cassandra 1.2.5 or later. This
+ goes for sstable compatibility as well as network. When
+ upgrading from an earlier release, upgrade to 1.2.5 first and
+ run upgradesstables before proceeding to 2.0.
+ - Replication and strategy options do not accept unknown options anymore.
+ This was already the case for CQL3 in 1.2 but this is now the case for
+ thrift too.
+ - auto_bootstrap of a single-token node with no initial_token will
+ now pick a random token instead of bisecting an existing token
+ range. We recommend upgrading to vnodes; failing that, we
+ recommend specifying initial_token.
+ - reduce_cache_sizes_at, reduce_cache_capacity_to, and
+ flush_largest_memtables_at options have been removed from cassandra.yaml.
+ - CacheServiceMBean.reduceCacheSizes() has been removed.
+ Use CacheServiceMBean.set{Key,Row}CacheCapacityInMB() instead.
+ - authority option in cassandra.yaml has been deprecated since 1.2.0,
+ but it has been completely removed in 2.0. Please use 'authorizer' option.
+ - ASSUME command has been removed from cqlsh. Use CQL3 blobAsType() and
+ typeAsBlob() conversion functions instead.
+ See https://cassandra.apache.org/doc/cql3/CQL.html#blobFun for details.
+ - Inputing blobs as string constants is now fully deprecated in
+ favor of blob constants. Make sure to update your applications to use
+ the new syntax while you are still on 1.2 (which supports both string
+ and blob constants for blob input) before upgrading to 2.0.
+
+Operations
+----------
+ - Major compactions, cleanup, scrub, and upgradesstables will interrupt
+ any in-progress compactions (but not repair validations) when invoked.
+ - Disabling autocompactions by setting min/max compaction threshold to 0
+ has been deprecated, instead, use the nodetool commands 'disableautocompaction'
+ and 'enableautocompaction' or set the compaction strategy option enabled = false
+ - ALTER TABLE DROP has been reenabled for CQL3 tables and has new semantics now.
+ See https://cassandra.apache.org/doc/cql3/CQL.html#alterTableStmt and
+ https://issues.apache.org/jira/browse/CASSANDRA-3919 for details.
+ - CAS uses gc_grace_seconds to determine how long to keep unused paxos
+ state around for, or a minimum of three hours.
+
+Features
+--------
+ - Alias support has been added to CQL3 SELECT statement. Refer to
+ CQL3 documentation (http://cassandra.apache.org/doc/cql3/CQL.html) for details.
+ - JEMalloc support (see memory_allocator in cassandra.yaml)
+ - Experimental triggers support. See examples/ for how to use. "Experimental"
+ means "tied closely to internal data structures; we plan to decouple this in
+ the future, which will probably break triggers written against this initial
+ API."
+
+
++||||||| merged common ancestors
++=======
+ When upgrading major versions of Cassandra, you will be unable to
+ restore snapshots created with the previous major version using the
+ 'sstableloader' tool. You can upgrade the file format of your snapshots
+ using the provided 'sstableupgrade' tool.
+
++>>>>>>> cassandra-1.2
1.2.6
=====
http://git-wip-us.apache.org/repos/asf/cassandra/blob/b9de5de2/debian/cassandra.install
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/b9de5de2/doc/cql3/CQL.textile
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/b9de5de2/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/cql3/statements/SelectStatement.java
index fd47ba8,03f222b..3815a9d
--- a/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java
@@@ -1019,19 -1046,7 +1019,16 @@@ public class SelectStatement implement
}
else
{
- if (!partitioner.preservesOrder())
- throw new InvalidRequestException("Only EQ and IN relation are supported on the partition key (you will need to use the token() function for non equality based relation)");
++ if (hasQueriableIndex)
+ {
- if (hasQueriableIndex)
- {
- stmt.usesSecondaryIndexing = true;
- break;
- }
- throw new InvalidRequestException("Only EQ and IN relation are supported on the partition key for random partitioners (unless you use the token() function)");
++ stmt.usesSecondaryIndexing = true;
++ break;
+ }
++ throw new InvalidRequestException("Only EQ and IN relation are supported on the partition key for random partitioners (unless you use the token() function)");
+
+ stmt.isKeyRange = true;
+ lastRestrictedPartitionKey = i;
+ shouldBeDone = true;
}
previous = cname;
}