You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by al...@apache.org on 2013/06/26 19:50:36 UTC

[1/2] git commit: cqlsh: Add ALTER TABLE RENAME autocompletion and docs

Updated Branches:
  refs/heads/trunk 67435b528 -> 6258c58cd


cqlsh: Add ALTER TABLE RENAME autocompletion and docs


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/b97b490d
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/b97b490d
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/b97b490d

Branch: refs/heads/trunk
Commit: b97b490dffda91284befa9049255ae477ea8114c
Parents: 40112ec
Author: Aleksey Yeschenko <al...@apache.org>
Authored: Wed Jun 26 20:41:38 2013 +0300
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Wed Jun 26 20:41:38 2013 +0300

----------------------------------------------------------------------
 pylib/cqlshlib/cql3handling.py |  2 ++
 pylib/cqlshlib/helptopics.py   | 33 +++++++++++++++++++++++++++++++--
 2 files changed, 33 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/b97b490d/pylib/cqlshlib/cql3handling.py
----------------------------------------------------------------------
diff --git a/pylib/cqlshlib/cql3handling.py b/pylib/cqlshlib/cql3handling.py
index 958b9ae..0e631ea 100644
--- a/pylib/cqlshlib/cql3handling.py
+++ b/pylib/cqlshlib/cql3handling.py
@@ -1239,6 +1239,8 @@ syntax_rules += r'''
                       | "ADD" newcol=<cident> <storageType>
                       | "DROP" existcol=<cident>
                       | "WITH" <cfamProperty> ( "AND" <cfamProperty> )*
+                      | "RENAME" existcol=<cident> "TO" newcol=<cident>
+                         ( "AND" existcol=<cident> "TO" newcol=<cident> )*
                       ;
 '''
 

http://git-wip-us.apache.org/repos/asf/cassandra/blob/b97b490d/pylib/cqlshlib/helptopics.py
----------------------------------------------------------------------
diff --git a/pylib/cqlshlib/helptopics.py b/pylib/cqlshlib/helptopics.py
index c9dae31..cdbb8f4 100644
--- a/pylib/cqlshlib/helptopics.py
+++ b/pylib/cqlshlib/helptopics.py
@@ -902,8 +902,37 @@ class CQL3HelpTopics(CQLHelpTopics):
         print "          HELP CREATE_USER;"
 
     def help_alter(self):
-        super(CQL3HelpTopics, self).help_alter()
-        print "          HELP ALTER_USER;"
+        print """
+        ALTER TABLE <tablename> ALTER <columnname> TYPE <type>;
+        ALTER TABLE <tablename> ADD <columnname> <type>;
+        ALTER TABLE <tablename> RENAME <columnname> TO <columnname>
+            [AND <columnname> TO <columnname>]
+        ALTER TABLE <tablename> WITH <optionname> = <val> [AND <optionname> = <val> [...]];
+
+        An ALTER statement is used to manipulate table metadata. It allows you
+        to add new typed columns, drop existing columns, change the data
+        storage type of existing columns, or change table properties.
+        No results are returned.
+
+        See one of the following for more information:
+
+          HELP ALTER_ALTER;
+          HELP ALTER_ADD;
+          HELP ALTER_DROP;
+          HELP ALTER_RENAME;
+          HELP ALTER_WITH;
+        """
+
+    def help_alter_rename(self):
+        print """
+        ALTER TABLE: renaming a column
+
+          ALTER TABLE <tablename> RENAME <columnname> TO <columnname>
+              [AND <columnname> TO <columnname>]
+
+        The ALTER TABLE ... RENAME variant renames a typed column in a column
+        family.
+        """
 
     def help_drop(self):
         super(CQL3HelpTopics, self).help_drop()


[2/2] git commit: Merge branch 'cassandra-1.2' into trunk

Posted by al...@apache.org.
Merge branch 'cassandra-1.2' into trunk

Conflicts:
	pylib/cqlshlib/helptopics.py


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/6258c58c
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/6258c58c
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/6258c58c

Branch: refs/heads/trunk
Commit: 6258c58cdbeae8b69dfe990af22506ed609dcb9a
Parents: 67435b5 b97b490
Author: Aleksey Yeschenko <al...@apache.org>
Authored: Wed Jun 26 20:50:22 2013 +0300
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Wed Jun 26 20:50:22 2013 +0300

----------------------------------------------------------------------
 NEWS.txt                       | 14 ++++------
 pylib/cqlshlib/cql3handling.py |  2 ++
 pylib/cqlshlib/helptopics.py   | 53 ++++++++++++++++++++++---------------
 3 files changed, 38 insertions(+), 31 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/6258c58c/NEWS.txt
----------------------------------------------------------------------
diff --cc NEWS.txt
index a0711c7,cb40981..5e784d1
--- a/NEWS.txt
+++ b/NEWS.txt
@@@ -8,73 -8,11 +8,69 @@@ 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
+ 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.
+ 
 +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/6258c58c/pylib/cqlshlib/cql3handling.py
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/cassandra/blob/6258c58c/pylib/cqlshlib/helptopics.py
----------------------------------------------------------------------
diff --cc pylib/cqlshlib/helptopics.py
index fb769f3,cdbb8f4..fb83f23
--- a/pylib/cqlshlib/helptopics.py
+++ b/pylib/cqlshlib/helptopics.py
@@@ -266,26 -266,25 +266,6 @@@ class CQLHelpTopics(object)
          """
      help_create_columnfamily_options = help_create_table_options
  
--    def help_alter(self):
--        print """
--        ALTER TABLE <tablename> ALTER <columnname> TYPE <type>;
--        ALTER TABLE <tablename> ADD <columnname> <type>;
-         ALTER TABLE <tablename> DROP <columnname>;
--        ALTER TABLE <tablename> WITH <optionname> = <val> [AND <optionname> = <val> [...]];
--
--        An ALTER statement is used to manipulate table metadata. It allows you
--        to add new typed columns, drop existing columns, change the data
--        storage type of existing columns, or change table properties.
--        No results are returned.
--
--        See one of the following for more information:
--
--          HELP ALTER_ALTER;
--          HELP ALTER_ADD;
--          HELP ALTER_DROP;
--          HELP ALTER_WITH;
--        """
--
      def help_alter_alter(self):
          print """
          ALTER TABLE: altering existing typed columns
@@@ -653,29 -897,42 +633,58 @@@ class CQL3HelpTopics(CQLHelpTopics)
          Currently, COUNT is the only function supported by CQL.
          """
  
 +    def help_alter_drop(self):
 +        print """
 +        ALTER TABLE: dropping a typed column
 +
 +          ALTER TABLE addamsFamily DROP gender;
 +
 +        An ALTER TABLE ... DROP statement removes the type of a column
 +        from the column family metadata. Dropped columns will immediately
 +        become unavailable in the queries and will not be included in
 +        compacted sstables in the future. If a column is readded, queries
 +        won't return values written before the column was last dropped.
 +        It is assumed that timestamps represent actual time, so if this
 +        is not your case, you should NOT readd previously dropped columns.
 +        Columns can't be dropped from tables defined with COMPACT STORAGE.
 +        """
 +
      def help_create(self):
          super(CQL3HelpTopics, self).help_create()
 -        print "          HELP CREATE_USER;"
 +        print "          HELP CREATE_USER;\n"
  
      def help_alter(self):
-         super(CQL3HelpTopics, self).help_alter()
-         print "          HELP ALTER_USER;\n"
+         print """
+         ALTER TABLE <tablename> ALTER <columnname> TYPE <type>;
+         ALTER TABLE <tablename> ADD <columnname> <type>;
+         ALTER TABLE <tablename> RENAME <columnname> TO <columnname>
+             [AND <columnname> TO <columnname>]
+         ALTER TABLE <tablename> WITH <optionname> = <val> [AND <optionname> = <val> [...]];
+ 
+         An ALTER statement is used to manipulate table metadata. It allows you
+         to add new typed columns, drop existing columns, change the data
+         storage type of existing columns, or change table properties.
+         No results are returned.
+ 
+         See one of the following for more information:
+ 
+           HELP ALTER_ALTER;
+           HELP ALTER_ADD;
+           HELP ALTER_DROP;
+           HELP ALTER_RENAME;
+           HELP ALTER_WITH;
+         """
+ 
+     def help_alter_rename(self):
+         print """
+         ALTER TABLE: renaming a column
+ 
+           ALTER TABLE <tablename> RENAME <columnname> TO <columnname>
+               [AND <columnname> TO <columnname>]
+ 
+         The ALTER TABLE ... RENAME variant renames a typed column in a column
+         family.
+         """
  
      def help_drop(self):
          super(CQL3HelpTopics, self).help_drop()