From f1b9e9a65a77842ee6c651bd9dc1176e2e6d395e Mon Sep 17 00:00:00 2001 From: Yasuharu Goto Date: Sun, 27 Dec 2015 17:26:22 +0100 Subject: [PATCH] cqlsh fails to decode utf-8 characters for text typed columns patch by Yasuharu Goto; reviewed by Paulo Motta for CASSANDRA-10875 --- CHANGES.txt | 1 + bin/cqlsh | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/CHANGES.txt b/CHANGES.txt index 82176c5b06..41bf6bc500 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.1.13 + * cqlsh fails to decode utf-8 characters for text typed columns (CASSANDRA-10875) * Log error when stream session fails (CASSANDRA-9294) * Fix bugs in commit log archiving startup behavior (CASSANDRA-10593) * (cqlsh) further optimise COPY FROM (CASSANDRA-9302) diff --git a/bin/cqlsh b/bin/cqlsh index 651420d531..1d5db257c8 100755 --- a/bin/cqlsh +++ b/bin/cqlsh @@ -668,6 +668,8 @@ class Shell(cmd.Cmd): self.session.max_trace_wait = max_trace_wait if encoding is None: encoding = locale.getpreferredencoding() + if encoding is None: + encoding = 'utf-8' self.encoding = encoding self.output_codec = codecs.lookup(encoding) @@ -929,7 +931,7 @@ class Shell(cmd.Cmd): def get_input_line(self, prompt=''): if self.tty: - self.lastcmd = raw_input(prompt) + self.lastcmd = raw_input(prompt).decode(self.encoding) line = self.lastcmd + '\n' else: self.lastcmd = self.stdin.readline()