From f8129b43568f09cbb843813b43524e43172d95c5 Mon Sep 17 00:00:00 2001 From: Brandon Williams Date: Fri, 19 Oct 2012 14:11:53 -0500 Subject: [PATCH] cqlsh: support moving CL to the protocol level Patch by Aleksey Yeschenko, reviewed by brandonwilliams for CASSANDRA-4823 --- bin/cqlsh | 2 +- ...-1.3.0.zip => cql-internal-only-1.4.0.zip} | Bin 90260 -> 91855 bytes pylib/cqlshlib/cql3handling.py | 20 ++++++------------ pylib/cqlshlib/tfactory.py | 5 ++--- 4 files changed, 10 insertions(+), 17 deletions(-) rename lib/{cql-internal-only-1.3.0.zip => cql-internal-only-1.4.0.zip} (54%) diff --git a/bin/cqlsh b/bin/cqlsh index bb440e0c5b..84543f4af8 100755 --- a/bin/cqlsh +++ b/bin/cqlsh @@ -450,7 +450,7 @@ class Shell(cmd.Cmd): else: transport = transport_factory(hostname, port, os.environ, CONFIG_FILE) self.conn = cql.connect(hostname, port, user=username, password=password, - transport=transport) + cql_version=cqlver, transport=transport) self.set_expanded_cql_version(cqlver) # we could set the keyspace through cql.connect(), but as of 1.0.10, # it doesn't quote the keyspace for USE :( diff --git a/lib/cql-internal-only-1.3.0.zip b/lib/cql-internal-only-1.4.0.zip similarity index 54% rename from lib/cql-internal-only-1.3.0.zip rename to lib/cql-internal-only-1.4.0.zip index 1fde0596fe3fbbde89692c6ed87269b87be87518..10dfeaf6439dc3d8cc716d8e86a275aaea66bed3 100644 GIT binary patch delta 37395 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 diff --git a/pylib/cqlshlib/cql3handling.py b/pylib/cqlshlib/cql3handling.py index 8728f60fea..8e0d987488 100644 --- a/pylib/cqlshlib/cql3handling.py +++ b/pylib/cqlshlib/cql3handling.py @@ -218,6 +218,7 @@ JUNK ::= /([ \t\r\f\v]+|(--|[/][/])[^\n\r]*([\n\r]|$)|[/][*].*?[*][/])/ ; | | ; + ::= token="TOKEN" "(" ( "," )* ")" | ; @@ -728,7 +729,6 @@ syntax_rules += r''' ; ::= "SELECT" "FROM" cf= - ("USING" "CONSISTENCY" selcl=)? ("WHERE" )? ("ORDER" "BY" ( "," )* )? ("LIMIT" )? @@ -753,10 +753,6 @@ syntax_rules += r''' ; ''' -@completer_for('selectStatement', 'selcl') -def select_statement_consistencylevel(ctxt, cass): - return [cl for cl in CqlRuleSet.consistency_levels if cl != 'ANY'] - @completer_for('orderByClause', 'ordercol') def select_order_column_completer(ctxt, cass): prev_order_cols = ctxt.get_binding('ordercol', ()) @@ -815,8 +811,7 @@ syntax_rules += r''' ( "USING" [insertopt]= ( "AND" [insertopt]= )* )? ; - ::= "CONSISTENCY" - | "TIMESTAMP" + ::= "TIMESTAMP" | "TTL" ; ''' @@ -860,7 +855,7 @@ def insert_valcomma_completer(ctxt, cass): @completer_for('insertStatement', 'insertopt') def insert_option_completer(ctxt, cass): - opts = set('CONSISTENCY TIMESTAMP TTL'.split()) + opts = set('TIMESTAMP TTL'.split()) for opt in ctxt.get_binding('insertopt', ()): opts.discard(opt.split()[0]) return opts @@ -882,7 +877,7 @@ syntax_rules += r''' @completer_for('updateStatement', 'updateopt') def insert_option_completer(ctxt, cass): - opts = set('CONSISTENCY TIMESTAMP TTL'.split()) + opts = set('TIMESTAMP TTL'.split()) for opt in ctxt.get_binding('updateopt', ()): opts.discard(opt.split()[0]) return opts @@ -953,14 +948,13 @@ syntax_rules += r''' ; ::= delcol= ( memberbracket="[" memberselector= "]" )? ; - ::= "CONSISTENCY" - | "TIMESTAMP" + ::= "TIMESTAMP" ; ''' @completer_for('deleteStatement', 'delopt') def delete_opt_completer(ctxt, cass): - opts = set('CONSISTENCY TIMESTAMP'.split()) + opts = set('TIMESTAMP'.split()) for opt in ctxt.get_binding('delopt', ()): opts.discard(opt.split()[0]) return opts @@ -988,7 +982,7 @@ syntax_rules += r''' @completer_for('batchStatement', 'batchopt') def batch_opt_completer(ctxt, cass): - opts = set('CONSISTENCY TIMESTAMP'.split()) + opts = set('TIMESTAMP'.split()) for opt in ctxt.get_binding('batchopt', ()): opts.discard(opt.split()[0]) return opts diff --git a/pylib/cqlshlib/tfactory.py b/pylib/cqlshlib/tfactory.py index d16c8e79ff..cc02e883ec 100644 --- a/pylib/cqlshlib/tfactory.py +++ b/pylib/cqlshlib/tfactory.py @@ -27,6 +27,5 @@ def regular_transport_factory(host, port, env, config_file): * env ..........: environment variables (os.environ) - not used by this implementation. * config_file ..: path to cqlsh config file - not used by this implementation. """ - socket = TSocket.TSocket(host, port) - socket.open() - return TTransport.TFramedTransport(socket) + tsocket = TSocket.TSocket(host, port) + return TTransport.TFramedTransport(tsocket)