diff --git a/CHANGES.txt b/CHANGES.txt index 4586c71605..2537584656 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -49,6 +49,7 @@ Merged from 3.11: * Allow sstableloader to use SSL on the native port (CASSANDRA-14904) Merged from 3.0: + * cqlsh return non-zero status when STDIN CQL fails (CASSANDRA-15623) * Don't skip sstables in slice queries based only on local min/max/deletion timestamp (CASSANDRA-15690) * Memtable memory allocations may deadlock (CASSANDRA-15367) * Run evictFromMembership in GossipStage (CASSANDRA-15592) diff --git a/bin/cqlsh.py b/bin/cqlsh.py index 272bf40d97..310a265b1f 100644 --- a/bin/cqlsh.py +++ b/bin/cqlsh.py @@ -539,6 +539,10 @@ class Shell(cmd.Cmd): self.single_statement = single_statement self.is_subshell = is_subshell + @property + def batch_mode(self): + return not self.tty + @property def is_using_utf8(self): # utf8 encodings from https://docs.python.org/{2,3}/library/codecs.html @@ -2467,8 +2471,7 @@ def main(options, hostname, port): shell.cmdloop() save_history() - batch_mode = options.file or options.execute - if batch_mode and shell.statement_error: + if shell.batch_mode and shell.statement_error: sys.exit(2)