Impala Public Jenkins has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/12052 )
Change subject: IMPALA-7939: Fix issue where CTE is categorized as DML statement ...................................................................... IMPALA-7939: Fix issue where CTE is categorized as DML statement The logic that checks whether a CTE is DML or SELECT uses shlex that splits the statement into tokens and check if any of the tokens matches the DML regular expression. Before this patch, the shlex was set to posix=True, which means the quotes are stripped from the token, e.g. select a from foo where a = 'update' becomes ['select', 'a', 'from', 'foo', 'where', 'a', '=', 'update']. As a result, any token that contains "insert", "delete", "upsert", and "update" in it will be categorized as DML even though the token is part of string literal value. This patch fixes the issue by setting posix=False in shlex that preserves the quotes. For example: ['select', 'a', 'from', 'foo', 'where', 'a', '=', '"update"'] Testing: - Added a new shell test - Ran all shell tests Change-Id: I011b8e73a0477ac6b2357725452458f972785ae7 Reviewed-on: http://gerrit.cloudera.org:8080/12052 Reviewed-by: Impala Public Jenkins <[email protected]> Tested-by: Impala Public Jenkins <[email protected]> --- M shell/impala_shell.py M tests/shell/test_shell_interactive.py 2 files changed, 16 insertions(+), 6 deletions(-) Approvals: Impala Public Jenkins: Looks good to me, approved; Verified -- To view, visit http://gerrit.cloudera.org:8080/12052 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: I011b8e73a0477ac6b2357725452458f972785ae7 Gerrit-Change-Number: 12052 Gerrit-PatchSet: 9 Gerrit-Owner: Fredy Wijaya <[email protected]> Gerrit-Reviewer: Bharath Vissapragada <[email protected]> Gerrit-Reviewer: Csaba Ringhofer <[email protected]> Gerrit-Reviewer: Fredy Wijaya <[email protected]> Gerrit-Reviewer: Gabor Kaszab <[email protected]> Gerrit-Reviewer: Impala Public Jenkins <[email protected]> Gerrit-Reviewer: Michael Brown <[email protected]> Gerrit-Reviewer: Tim Armstrong <[email protected]>
