Return-Path: X-Original-To: apmail-cassandra-commits-archive@www.apache.org Delivered-To: apmail-cassandra-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id EAC48DFAC for ; Thu, 6 Sep 2012 15:54:27 +0000 (UTC) Received: (qmail 1330 invoked by uid 500); 6 Sep 2012 15:54:27 -0000 Delivered-To: apmail-cassandra-commits-archive@cassandra.apache.org Received: (qmail 1288 invoked by uid 500); 6 Sep 2012 15:54:27 -0000 Mailing-List: contact commits-help@cassandra.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cassandra.apache.org Delivered-To: mailing list commits@cassandra.apache.org Received: (qmail 1273 invoked by uid 99); 6 Sep 2012 15:54:27 -0000 Received: from tyr.zones.apache.org (HELO tyr.zones.apache.org) (140.211.11.114) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 06 Sep 2012 15:54:27 +0000 Received: by tyr.zones.apache.org (Postfix, from userid 65534) id 524071BA6E; Thu, 6 Sep 2012 15:54:27 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: slebresne@apache.org To: commits@cassandra.apache.org X-Mailer: ASF-Git Admin Mailer Subject: [1/4] git commit: Merge branch 'cassandra-1.1' into trunk Message-Id: <20120906155427.524071BA6E@tyr.zones.apache.org> Date: Thu, 6 Sep 2012 15:54:27 +0000 (UTC) Updated Branches: refs/heads/trunk 0e3a9a55e -> 42c55896b Merge branch 'cassandra-1.1' into trunk Conflicts: CHANGES.txt NEWS.txt build.xml Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/42c55896 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/42c55896 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/42c55896 Branch: refs/heads/trunk Commit: 42c55896b9b5e9f506eb009b28884108d6ad41ef Parents: 0e3a9a5 4177b58 Author: Sylvain Lebresne Authored: Thu Sep 6 17:54:17 2012 +0200 Committer: Sylvain Lebresne Committed: Thu Sep 6 17:54:17 2012 +0200 ---------------------------------------------------------------------- CHANGES.txt | 7 +++++- NEWS.txt | 18 +++++++++++++++ debian/changelog | 6 +++++ .../cassandra/cql3/statements/SelectStatement.java | 7 ++++- .../db/columniterator/ISSTableColumnIterator.java | 18 +++++++++++++++ 5 files changed, 53 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cassandra/blob/42c55896/CHANGES.txt ---------------------------------------------------------------------- diff --cc CHANGES.txt index b08117d,4a5bfe9..ec4992c --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,56 -1,6 +1,56 @@@ - 1.2-dev -1.1.6 - * (cql3) fix potential NPE with both equal and unequal restriction (CASSANDRA-4532) - * (cql3) improves ORDER BY validation (CASSANDRA-4624) ++1.2-beta1 + * include message initiation time to replicas so they can more + accurately drop timed-out requests (CASSANDRA-2858) + * fix clientutil.jar dependencies (CASSANDRA-4566) + * optimize WriteResponse (CASSANDRA-4548) + * new metrics (CASSANDRA-4009) + * redesign KEYS indexes to avoid read-before-write (CASSANDRA-2897) + * debug tracing (CASSANDRA-1123) + * parallelize row cache loading (CASSANDRA-4282) + * Make compaction, flush JBOD-aware (CASSANDRA-4292) + * run local range scans on the read stage (CASSANDRA-3687) + * clean up ioexceptions (CASSANDRA-2116) + * add disk_failure_policy (CASSANDRA-2118) + * Introduce new json format with row level deletion (CASSANDRA-4054) + * remove redundant "name" column from schema_keyspaces (CASSANDRA-4433) + * improve "nodetool ring" handling of multi-dc clusters (CASSANDRA-3047) + * update NTS calculateNaturalEndpoints to be O(N log N) (CASSANDRA-3881) + * add UseCondCardMark XX jvm settings on jdk 1.7 (CASSANDRA-4366) + * split up rpc timeout by operation type (CASSANDRA-2819) + * rewrite key cache save/load to use only sequential i/o (CASSANDRA-3762) + * update MS protocol with a version handshake + broadcast address id + (CASSANDRA-4311) + * multithreaded hint replay (CASSANDRA-4189) + * add inter-node message compression (CASSANDRA-3127) + * remove COPP (CASSANDRA-2479) + * Track tombstone expiration and compact when tombstone content is + higher than a configurable threshold, default 20% (CASSANDRA-3442, 4234) + * update MurmurHash to version 3 (CASSANDRA-2975) + * (CLI) track elapsed time for `delete' operation (CASSANDRA-4060) + * (CLI) jline version is bumped to 1.0 to properly support + 'delete' key function (CASSANDRA-4132) + * Save IndexSummary into new SSTable 'Summary' component (CASSANDRA-2392, 4289) + * Add support for range tombstones (CASSANDRA-3708) + * Improve MessagingService efficiency (CASSANDRA-3617) + * Avoid ID conflicts from concurrent schema changes (CASSANDRA-3794) + * Set thrift HSHA server thread limit to unlimited by default (CASSANDRA-4277) + * Avoids double serialization of CF id in RowMutation messages + (CASSANDRA-4293) + * stream compressed sstables directly with java nio (CASSANDRA-4297) + * Support multiple ranges in SliceQueryFilter (CASSANDRA-3885) + * Add column metadata to system column families (CASSANDRA-4018) + * (cql3) Always use composite types by default (CASSANDRA-4329) + * (cql3) Add support for set, map and list (CASSANDRA-3647) + * Validate date type correctly (CASSANDRA-4441) + * (cql3) Allow definitions with only a PK (CASSANDRA-4361) + * (cql3) Add support for row key composites (CASSANDRA-4179) + * improve DynamicEndpointSnitch by using reservoir sampling (CASSANDRA-4038) + * (cql3) Add support for 2ndary indexes (CASSANDRA-3680) + * (cql3) fix defining more than one PK to be invalid (CASSANDRA-4477) + * remove schema agreement checking from all external APIs (Thrift, CQL and CQL3) (CASSANDRA-4487) + * add Murmur3Partitioner and make it default for new installations (CASSANDRA-3772) + * (cql3) update pseudo-map syntax to use map syntax (CASSANDRA-4497) + * Finer grained exceptions hierarchy and provides error code with exceptions (CASSANDRA-3979) 1.1.5 http://git-wip-us.apache.org/repos/asf/cassandra/blob/42c55896/NEWS.txt ---------------------------------------------------------------------- diff --cc NEWS.txt index 3c9ead7,ad22610..c7a128e --- a/NEWS.txt +++ b/NEWS.txt @@@ -9,66 -9,24 +9,84 @@@ upgrade, just in case you need to roll by version X, but the inverse is not necessarily the case.) +1.2 +=== +Upgrading +--------- + - 1.2 is NOT network-compatible with versions older than 1.0. That + means if you want to do a rolling, zero-downtime upgrade, you'll need + to upgrade first to 1.0.x or 1.1.x, and then to 1.2. 1.2 retains + the ability to read data files from Cassandra versions at least + back to 0.6, so a non-rolling upgrade remains possible with just + one step. + - Server clock synchronization is more important in 1.2; replicas + will use a coordinator-provided timestamp to determine when a + request has timed out and is thus not worth proceeding with. + Using a service like NTP is strongly recommended. + - The hints schema was changed from 1.1 to 1.2. Cassandra automatically + snapshots and then truncates the hints column family as part of + starting up 1.2 for the first time. Additionally, upgraded nodes + will not store new hints destined for older (pre-1.2) nodes. It is + therefore recommended that you perform a cluster upgrade when all + nodes are up. + - The `nodetool removetoken` command (and corresponding JMX operation) + have been renamed to `nodetool removenode`. This function is + incompatible with the earlier `nodetool removetoken`, and attempts to + remove nodes in this way with a mixed 1.1 (or lower) / 1.2 cluster, + is not supported. + - The somewhat ill-concieved CollatingOrderPreservingPartitioner + has been removed. Use Murmur3Partitioner (recommended) or + ByteOrderedPartitioner instead. + - Global option hinted_handoff_throttle_delay_in_ms has been removed. + hinted_handoff_throttle_in_kb has been added instead. + - The default bloom filter fp chance has been increased to 1%. + This will save about 30% of the memory used by the old default. + Existing columnfamilies will retain their old setting. + - The default partitioner was changed from RandomPartitioner to + Murmur3Partitioner which provides faster hashing as well as + improved performance with secondary indexes. + - CQL3 is now considered final in this release. Compared to the beta + version that is part of 1.1, this final version has a few additions + (collections), but also some changes in the syntax for the options of the + create/alter keyspace/table statements. Typically, the syntax to create a + keyspace is now: + CREATE KEYSPACE ks WITH replication = { 'class' : 'CompactionStrategy', + 'replication_faction' : 2 }; + Please refer to the CQL3 documentation for details. + +Features +-------- + - Cassandra can now handle concurrent CREATE TABLE schema changes + as well as other updates + - rpc_timeout has been split up to allow finer-grained control + on timeouts for different operation types + - num_tokens can now be specified in cassandra.yaml. This defines the + number of tokens assigned to the host on the ring (default: 1). + Also specifying initial_token will override any num_tokens setting. + - disk_failure_policy allows blacklisting failed disks in JBOD + configuration instead of erroring out indefinitely + - event tracing can be configured per-connection ("trace_next_query") + or globally/probabilistically ("nodetool settraceprobability") + + + 1.1.5 + ===== + + Upgrading + --------- + - Nothing specific to this release, but please see 1.1 if you are upgrading + from a previous version. + + + 1.1.4 + ===== + + Upgrading + --------- + - Nothing specific to this release, but please see 1.1 if you are upgrading + from a previous version. + + 1.1.3 ===== http://git-wip-us.apache.org/repos/asf/cassandra/blob/42c55896/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java ---------------------------------------------------------------------- diff --cc src/java/org/apache/cassandra/cql3/statements/SelectStatement.java index 23cf2a0,1d0918e..9696a78 --- a/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java +++ b/src/java/org/apache/cassandra/cql3/statements/SelectStatement.java @@@ -1085,8 -1070,8 +1085,8 @@@ public class SelectStatement implement if (!stmt.parameters.orderings.isEmpty()) { - if (whereClause.isEmpty()) - throw new InvalidRequestException("ORDER BY is only supported in combination with WHERE clause."); - if (stmt.isKeyRange()) ++ if (stmt.isKeyRange) + throw new InvalidRequestException("ORDER BY is only supported when the partition key is restricted by an EQ or an IN."); Boolean[] reversedMap = new Boolean[cfDef.columns.size()]; int i = 0; http://git-wip-us.apache.org/repos/asf/cassandra/blob/42c55896/src/java/org/apache/cassandra/db/columniterator/ISSTableColumnIterator.java ----------------------------------------------------------------------