Hello Tim Armstrong, Impala Public Jenkins, I'd like you to reexamine a change. Please visit
http://gerrit.cloudera.org:8080/15673 to look at the new patch set (#4). Change subject: IMPALA-9612: Fix race condition in RuntimeFilter::WaitForArrival ...................................................................... IMPALA-9612: Fix race condition in RuntimeFilter::WaitForArrival In function RuntimeFilter::WaitForArrival, there is a race condition where condition variable arrival_cv_ may be signaled right after thread get into the loop and before it call arrival_cv_.WaitFor(). This can cause runtime filter to wait the entire RUNTIME_FILTER_WAIT_TIME_MS even though the filter has arrived or canceled earlier than that. This commit avoid the race condition by making RuntimeFilter::SetFilter and RuntimeFilter::Cancel acquire arrival_mutex_ first before checking the value of arrival_time_ and release arrival_mutex_ before signaling arrival_cv_. Testing: - Add new be test runtime-filter-test.cc - Pass core tests. Change-Id: I7dffa626103ef0af06ad1e89231b0d2ee54bb94a --- M be/src/runtime/CMakeLists.txt A be/src/runtime/runtime-filter-test.cc M be/src/runtime/runtime-filter.cc M be/src/runtime/runtime-filter.h 4 files changed, 132 insertions(+), 12 deletions(-) git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/73/15673/4 -- To view, visit http://gerrit.cloudera.org:8080/15673 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: newpatchset Gerrit-Change-Id: I7dffa626103ef0af06ad1e89231b0d2ee54bb94a Gerrit-Change-Number: 15673 Gerrit-PatchSet: 4 Gerrit-Owner: Riza Suminto <riza.sumi...@cloudera.com> Gerrit-Reviewer: Impala Public Jenkins <impala-public-jenk...@cloudera.com> Gerrit-Reviewer: Riza Suminto <riza.sumi...@cloudera.com> Gerrit-Reviewer: Tim Armstrong <tarmstr...@cloudera.com>