Lars Volker has uploaded a new patch set (#7). Change subject: IMPALA-5427: Fix race between CRS::UpdateQueryStatus() and beeswax RPCs ......................................................................
IMPALA-5427: Fix race between CRS::UpdateQueryStatus() and beeswax RPCs There was a race between ClientRequestState::UpdateQueryStatus() and the beeswax get_state()/get_log() RPCs leading to the rare situation that a query would abort with an error, but the error message would be empty. The fix is to take the ClientRequestState lock in the beeswax RPCs before obtaining the status. To test this I ran test_corrupt_files in a loop for a day. Without this fix, it would usually fail within a few hours. I changed the test to allow running it in parallel like so: @pytest.mark.parametrize('multiplier', xrange(32)) def test_corrupt_files(self, vector, multiplier): Then I ran it in a loop like so: i=0; while [ $? -eq 0 ]; do ((++i)); echo "Run: $i"; impala-py.test \ tests/query_test/test_scanners.py::TestParquet::test_corrupt_files \ --exploration_strategy=exhaustive -n8; done Change-Id: Ib4494fe3f933cc23841db0e7da407eec5650f2b5 --- M be/src/service/impala-beeswax-server.cc M be/src/service/impala-server.cc 2 files changed, 24 insertions(+), 19 deletions(-) git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/55/7155/7 -- To view, visit http://gerrit.cloudera.org:8080/7155 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: newpatchset Gerrit-Change-Id: Ib4494fe3f933cc23841db0e7da407eec5650f2b5 Gerrit-PatchSet: 7 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Lars Volker <l...@cloudera.com> Gerrit-Reviewer: Dan Hecht <dhe...@cloudera.com> Gerrit-Reviewer: Lars Volker <l...@cloudera.com> Gerrit-Reviewer: Sailesh Mukil <sail...@cloudera.com>