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 D8823EFF6 for ; Mon, 26 Nov 2012 09:36:21 +0000 (UTC) Received: (qmail 62295 invoked by uid 500); 26 Nov 2012 09:36:21 -0000 Delivered-To: apmail-cassandra-commits-archive@cassandra.apache.org Received: (qmail 62219 invoked by uid 500); 26 Nov 2012 09:36:21 -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 61820 invoked by uid 99); 26 Nov 2012 09:36:21 -0000 Received: from tyr.zones.apache.org (HELO tyr.zones.apache.org) (140.211.11.114) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 26 Nov 2012 09:36:21 +0000 Received: by tyr.zones.apache.org (Postfix, from userid 65534) id 9D07D319D15; Mon, 26 Nov 2012 09:36:20 +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: [4/4] git commit: Fix adding columns when table has collections Message-Id: <20121126093620.9D07D319D15@tyr.zones.apache.org> Date: Mon, 26 Nov 2012 09:36:20 +0000 (UTC) Fix adding columns when table has collections patch by slebresne; reviewed by dbrosius for CASSANDRA-4982 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/3a097ccf Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/3a097ccf Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/3a097ccf Branch: refs/heads/trunk Commit: 3a097ccff5420cdb3aa853e3cbc272b2187ebd8a Parents: 64bc335 Author: Sylvain Lebresne Authored: Mon Nov 26 10:21:55 2012 +0100 Committer: Sylvain Lebresne Committed: Mon Nov 26 10:21:55 2012 +0100 ---------------------------------------------------------------------- CHANGES.txt | 1 + .../cql3/statements/AlterTableStatement.java | 6 ++++++ 2 files changed, 7 insertions(+), 0 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cassandra/blob/3a097ccf/CHANGES.txt ---------------------------------------------------------------------- diff --git a/CHANGES.txt b/CHANGES.txt index 4ea42c1..5ce19d0 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -22,6 +22,7 @@ * Fix Stress for CQL3 (CASSANDRA-4979) * Remove cassandra specific exceptions from JMX interface (CASSANDRA-4893) * (CQL3) Force using ALLOW FILTERING on potentially inefficient queries (CASSANDRA-4915) + * Fix adding column when the table has collections (CASSANDRA-4982) Merged from 1.1: * add basic authentication support for Pig CassandraStorage (CASSANDRA-3042) * fix CQL2 ALTER TABLE compaction_strategy_class altering (CASSANDRA-4965) http://git-wip-us.apache.org/repos/asf/cassandra/blob/3a097ccf/src/java/org/apache/cassandra/cql3/statements/AlterTableStatement.java ---------------------------------------------------------------------- diff --git a/src/java/org/apache/cassandra/cql3/statements/AlterTableStatement.java b/src/java/org/apache/cassandra/cql3/statements/AlterTableStatement.java index 631ed75..ee8c987 100644 --- a/src/java/org/apache/cassandra/cql3/statements/AlterTableStatement.java +++ b/src/java/org/apache/cassandra/cql3/statements/AlterTableStatement.java @@ -99,6 +99,7 @@ public class AlterTableStatement extends SchemaAlteringStatement Map collections = cfDef.hasCollections ? new HashMap(cfDef.getCollectionType().defined) : new HashMap(); + collections.put(columnName.key, (CollectionType)type); ColumnToCollectionType newColType = ColumnToCollectionType.getInstance(collections); List> ctypes = new ArrayList>(((CompositeType)cfm.comparator).types); @@ -108,6 +109,11 @@ public class AlterTableStatement extends SchemaAlteringStatement ctypes.add(newColType); cfm.comparator = CompositeType.getInstance(ctypes); } + else if (cfDef.hasCollections) + { + componentIndex--; + } + cfm.addColumnDefinition(new ColumnDefinition(columnName.key, type, null,