Impala Public Jenkins has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/12812 )
Change subject: IMPALA-8325: Leading Unicode comments cause Impala Shell failure. ...................................................................... IMPALA-8325: Leading Unicode comments cause Impala Shell failure. This change fixes a regression introduced by "IMPALA-2195 Improper handling of comments in queries." The Impala Shell parses input text into several strings using the sqlparse library. One of the returned strings is the sql command, this is used to determine the correct do_<command> method to call. Another of the returned strings is the leading comment, which is a comment that appears before legal sql text. Python2 has strings with multiple encodings. The strings returned from the sqlparse library have the Unicode encoding. Impala Shell converts the sql command string to utf-8 encoding before using it. If the Impala Shell needs to send the sql command to an Impala Coordinator then it (re)constructs the query out of the strings returned by the sqlparse library. This query is sent to the Coordinator via Beeswax protocol. The query is converted to an ascii string before being sent. The conversion can fail if the leading comment string contains Unicode characters, which can't be directly converted to ascii. So the trigger for the bug is that the leading comment contains Unicode. The fix is that the leading comment string should be converted to utf-8 in the same way as the sql command. TESTING: Ran all end -to-end tests. Added two test cases to tests/shell/test_shell_interactive.py Change-Id: I8633935b6e0ca33594afd32ad242779555e09944 Reviewed-on: http://gerrit.cloudera.org:8080/12812 Reviewed-by: Impala Public Jenkins <impala-public-jenk...@cloudera.com> Tested-by: Impala Public Jenkins <impala-public-jenk...@cloudera.com> --- M shell/impala_shell.py M tests/shell/test_shell_interactive.py 2 files changed, 8 insertions(+), 1 deletion(-) Approvals: Impala Public Jenkins: Looks good to me, approved; Verified -- To view, visit http://gerrit.cloudera.org:8080/12812 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: I8633935b6e0ca33594afd32ad242779555e09944 Gerrit-Change-Number: 12812 Gerrit-PatchSet: 4 Gerrit-Owner: Andrew Sherman <asher...@cloudera.com> Gerrit-Reviewer: Andrew Sherman <asher...@cloudera.com> Gerrit-Reviewer: Fredy Wijaya <fwij...@cloudera.com> Gerrit-Reviewer: Impala Public Jenkins <impala-public-jenk...@cloudera.com>