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 8E7A311FF7 for ; Mon, 11 Aug 2014 18:03:56 +0000 (UTC) Received: (qmail 48088 invoked by uid 500); 11 Aug 2014 18:03:56 -0000 Delivered-To: apmail-cassandra-commits-archive@cassandra.apache.org Received: (qmail 48048 invoked by uid 500); 11 Aug 2014 18:03:56 -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 48008 invoked by uid 99); 11 Aug 2014 18:03:56 -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, 11 Aug 2014 18:03:56 +0000 Received: by tyr.zones.apache.org (Postfix, from userid 65534) id 259959AB9B9; Mon, 11 Aug 2014 18:03:56 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: brandonwilliams@apache.org To: commits@cassandra.apache.org Date: Mon, 11 Aug 2014 18:03:56 -0000 Message-Id: <6754fe935a24404485a086b9bef980ab@git.apache.org> X-Mailer: ASF-Git Admin Mailer Subject: [01/14] git commit: Fix validation when adding static columns Repository: cassandra Updated Branches: refs/heads/cassandra-2.0 bd0bb6df4 -> 52df514dd refs/heads/cassandra-2.1 6eb76a212 -> 0c6078a70 refs/heads/cassandra-2.1.0 ce96a2a12 -> 1d744b5d4 refs/heads/trunk c7e191ba1 -> 755d345fe Fix validation when adding static columns patch by slebresne; reviewed by iamaleksey for CASSANDRA-7730 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/73b02d67 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/73b02d67 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/73b02d67 Branch: refs/heads/trunk Commit: 73b02d67c1fcea9a2f773251a0a525ec51b7477a Parents: 2692c29 Author: Sylvain Lebresne Authored: Mon Aug 11 17:44:14 2014 +0200 Committer: Sylvain Lebresne Committed: Mon Aug 11 17:45:21 2014 +0200 ---------------------------------------------------------------------- CHANGES.txt | 1 + .../cassandra/cql3/statements/AlterTableStatement.java | 9 +++++++-- 2 files changed, 8 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cassandra/blob/73b02d67/CHANGES.txt ---------------------------------------------------------------------- diff --git a/CHANGES.txt b/CHANGES.txt index d6976db..4a3e086 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.0.10 + * Fix validation when adding static columns (CASSANDRA-7730) * (Thrift) fix range deletion of supercolumns (CASSANDRA-7733) * Fix potential AssertionError in RangeTombstoneList (CASSANDRA-7700) * Validate arguments of blobAs* functions (CASSANDRA-7707) http://git-wip-us.apache.org/repos/asf/cassandra/blob/73b02d67/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 85b3547..88f0de8 100644 --- a/src/java/org/apache/cassandra/cql3/statements/AlterTableStatement.java +++ b/src/java/org/apache/cassandra/cql3/statements/AlterTableStatement.java @@ -89,8 +89,13 @@ public class AlterTableStatement extends SchemaAlteringStatement if (cfDef.isCompact) throw new InvalidRequestException("Cannot add new column to a COMPACT STORAGE table"); - if (isStatic && !cfDef.isComposite) - throw new InvalidRequestException("Static columns are not allowed in COMPACT STORAGE tables"); + if (isStatic) + { + if (!cfDef.isComposite) + throw new InvalidRequestException("Static columns are not allowed in COMPACT STORAGE tables"); + if (cfDef.clusteringColumns().isEmpty()) + throw new InvalidRequestException("Static columns are only useful (and thus allowed) if the table has at least one clustering column"); + } if (name != null) {