Kurt Deschler has uploaded this change for review. ( 
http://gerrit.cloudera.org:8080/20065


Change subject: IMPALA-12208: Avoid registering RPCs with ClientRequestState 
after Finalization
......................................................................

IMPALA-12208: Avoid registering RPCs with ClientRequestState after Finalization

This patch fixes a timing hole where concurrent RPCs could register with
ClientRequestState after Finalize() had already been called, resulting in
DCHECK(pending_rpcs_.empty()) failure in debug builds since the RPCs were
not unregistered before the ClientRequestState was destroyed.
This DCHECK ensures that timing info for registered RPCs is reaped
wherever possible. Prod builds did not exhibit any negative symptoms.

Testing:
-Ran tests/hs2/test_hs2.py::TestHS2::test_concurrent_unregister in a
 loop for several minutes. Previously this would fail within seconds.

Change-Id: I66415e5695c2ed65518efee2d9dbaaec224910e9
---
M be/src/service/client-request-state.cc
M be/src/service/client-request-state.h
2 files changed, 7 insertions(+), 1 deletion(-)



  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/65/20065/1
-- 
To view, visit http://gerrit.cloudera.org:8080/20065
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I66415e5695c2ed65518efee2d9dbaaec224910e9
Gerrit-Change-Number: 20065
Gerrit-PatchSet: 1
Gerrit-Owner: Kurt Deschler <[email protected]>

Reply via email to