Tim Armstrong has uploaded a new patch set (#3). Change subject: IMPALA-4037,IMPALA-4038: fix locking during query cancellation ......................................................................
IMPALA-4037,IMPALA-4038: fix locking during query cancellation * Refactor the child query handling out of QueryExecState and clarify locking rules. * Avoid holding QueryExecState::lock_ while calling Coordinator::Cancel() or ChildQuery::Cancel(), which can both do RPCs or acquire ImpalaServer::query_exec_state_map_lock_. * Fix a potential race between QueryExecState::Exec() and QueryExecState::Cancel() where the cancelling thread did an unlocked read of the 'coordinator_' field and may not have cancelled the coordinator. Change-Id: Ibe3024803e03595ee69c47759b58e8443d7bd167 --- M be/src/runtime/coordinator.h M be/src/service/child-query.cc M be/src/service/child-query.h M be/src/service/impala-server.cc M be/src/service/query-exec-state.cc M be/src/service/query-exec-state.h M tests/query_test/test_cancellation.py 7 files changed, 233 insertions(+), 103 deletions(-) git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/63/4163/3 -- To view, visit http://gerrit.cloudera.org:8080/4163 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: newpatchset Gerrit-Change-Id: Ibe3024803e03595ee69c47759b58e8443d7bd167 Gerrit-PatchSet: 3 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Tim Armstrong <[email protected]>
