Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
Impala 4.1.0
-
None
-
ghx-label-10
Description
TestImpalaShellInteractive.test_http_interactions_extra is failing when using a Python 3 impala-shell:
[gw2] linux2 -- Python 2.7.16 /home/joe/view2/Impala/bin/../infra/python/env-gcc7.5.0/bin/python self = <tests.shell.test_shell_interactive.TestImpalaShellInteractive object at 0x7fe5b9dacb50> vector = <tests.common.test_vector.ImpalaTestVector object at 0x7fe5ba153dd0> http_503_server_extra = <tests.shell.test_shell_interactive.TestHTTPServer503 object at 0x7fe5b9dacbd0> def test_http_interactions_extra(self, vector, http_503_server_extra): """Test interactions with the http server when using hs2-http protocol. Check that the shell prints a good message when the server returns a 503 error, including the body text from the message.""" protocol = vector.get_value("protocol") if protocol != 'hs2-http': pytest.skip() # Check that we get a message about the 503 error when we try to connect. shell_args = ["--protocol={0}".format(protocol), "-i{0}:{1}".format(http_503_server_extra.HOST, http_503_server_extra.PORT)] shell_proc = spawn_shell([IMPALA_SHELL_EXECUTABLE] + shell_args) > shell_proc.expect("HTTP code 503: Service Unavailable \[EXTRA\]", timeout=10)shell/test_shell_interactive.py:1201: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ../infra/python/env-gcc7.5.0/lib/python2.7/site-packages/pexpect/__init__.py:1451: in expect timeout, searchwindowsize) ../infra/python/env-gcc7.5.0/lib/python2.7/site-packages/pexpect/__init__.py:1466: in expect_list timeout, searchwindowsize)
It is expecting "HTTP code 503: Service Unavailable [EXTRA]", but it gets "HTTP code 503: Service Unavailable [b'EXTRA']". Python 3 is treating the "EXTRA" as a series of bytes, and that changes the printing. This could use a decode() call here:
https://github.com/apache/impala/blob/master/shell/ImpalaHttpClient.py#L365-L366
Attachments
Issue Links
- is related to
-
IMPALA-11308 Shell tests fail when run with a python3 install of impala-shell
- Closed