You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by br...@apache.org on 2014/07/29 20:59:27 UTC
[03/12] git commit: Handle KeyboardInterrupt properly in cqlsh
Handle KeyboardInterrupt properly in cqlsh
Patch by Jordon Pittier, reviewed by brandonwilliams for CASSANDRA-5481
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/249bbfc3
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/249bbfc3
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/249bbfc3
Branch: refs/heads/cassandra-2.1
Commit: 249bbfc3b205d934764e5b05e955378f78c28480
Parents: 192596a
Author: Brandon Williams <br...@apache.org>
Authored: Tue Jul 29 13:57:42 2014 -0500
Committer: Brandon Williams <br...@apache.org>
Committed: Tue Jul 29 13:57:42 2014 -0500
----------------------------------------------------------------------
bin/cqlsh | 20 ++++++++++++--------
1 file changed, 12 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/249bbfc3/bin/cqlsh
----------------------------------------------------------------------
diff --git a/bin/cqlsh b/bin/cqlsh
index bb0ffdf..d2a503d 100755
--- a/bin/cqlsh
+++ b/bin/cqlsh
@@ -504,15 +504,9 @@ class Shell(cmd.Cmd):
self.conn = use_conn
else:
transport = transport_factory(hostname, port, os.environ, CONFIG_FILE)
- self.conn = cql.connect(hostname, port, user=username, password=password,
- cql_version=cqlver, transport=transport)
+ self.conn = cql.connect(hostname, port, keyspace=keyspace, user=username,
+ password=password, 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 :(
- if keyspace is not None:
- tempcurs = self.conn.cursor()
- tempcurs.execute('USE %s;' % self.cql_protect_name(keyspace))
- tempcurs.close()
self.cursor = self.conn.cursor()
self.get_connection_versions()
@@ -1056,6 +1050,16 @@ class Shell(cmd.Cmd):
except CQL_ERRORS, err:
self.printerr(str(err))
return False
+ except KeyboardInterrupt:
+ self.cursor.close()
+ self.conn.terminate_connection()
+ transport = self.transport_factory(self.hostname, self.port,
+ os.environ, CONFIG_FILE)
+ self.conn = cql.connect(self.hostname, self.port, keyspace=self.keyspace,
+ user=self.username, password=self.password,
+ cql_version=self.cql_version, transport=transport)
+ self.cursor = self.conn.cursor()
+ return False
except Exception, err:
import traceback
self.printerr(traceback.format_exc())