[ https://issues.apache.org/jira/browse/CASSANDRA-11152?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15307902#comment-15307902 ]
Robert Stupp commented on CASSANDRA-11152: ------------------------------------------ I'm happy to review. Passing the current keyspace to {{do_source}} is the correct way IMO as doing something like the following and the script is executed without a current-keyspace is strange. {code} USE foo_bar; SOURCE 'super_script.cql'; {code} > SOURCE command in CQLSH 3.2 requires that "use keyspace" is in the cql file > that you are sourcing > ------------------------------------------------------------------------------------------------- > > Key: CASSANDRA-11152 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11152 > Project: Cassandra > Issue Type: Bug > Components: Tools > Environment: CQLSH 3.2.1 > Reporter: Francesco Animali > Assignee: Stefania > Labels: lhf > Fix For: 2.1.x, 2.2.x, 3.0.x, 3.x > > > a difference in behaviour between SOURCE command in CQLSH 3.1 and 3.2. > In CQLSH 3.1 SOURCE will NOT require "use keyspace" in the cql file that you > execute: the "keyspace" directive in the qlshrc file will work and the cql > file will be executed. > In CQLSH 3.2.1, SOURCE command requires that "use keyspace" is in the cql > file that you are sourcing, otherwise it throws this error: > "No keyspace has been specified. USE a keyspace, or explicitly specify > keyspace.tablename". > The "keyspace" directive in cqlshrc is overridden by source command. > steps to reproduce: > create a file called select.cql in your home directory: > {noformat} > echo "CONSISTENCY ONE;" > select.cql > echo "select * from tab;" >> select.cql > {noformat} > in cqlsh: > {noformat} > create KEYSPACE kspace WITH replication = {'class': 'SimpleStrategy', > 'replication_factor': 1}; > create TABLE tab ( id int primary key); > insert into tab (id) VALUES ( 1); > {noformat} > Add this to cqlsgrc: > {noformat} > [authentication] > keyspace = kspace > {noformat} > Then exit cqlsh and rerun cqlsh using the cqlshrc just modified. > Note that you are in keyspace "kspace". > execute: > {noformat} > source 'select.cql' > {noformat} > this will have different behaviour in CQLSH 3.2 and 3.1 -- This message was sent by Atlassian JIRA (v6.3.4#6332)