Michael Ho has uploaded this change for review. ( 
http://gerrit.cloudera.org:8080/9439


Change subject: IMPALA-6565: Fix dropped status in DequeueDeferredRpc()
......................................................................

IMPALA-6565: Fix dropped status in DequeueDeferredRpc()

The local variable 'status' was mistakenly defined twice in
DequeueDeferredRpc(): one in the outer scope and one in the
inner scope. This causes the error status of AddBatchWork()
to be dropped when the inner scope ends. As a result, the error
status from AddBatchWork() (e.g. MemLimitExceeded) will not be
propagated back to the sender aand the receiver will continue
to operate with some missing data, leading to wrong query
results.

This change fixes the problem by removing the redefinition of
the status local variable. It also adds some counters in the
profile to make diagnostics of failed RPCs or missing EOS easier.

Testing done: Stress test consistently reproduced the problem before.
With this fix, no wrong results have been seen after 2 iterations
of stress tests, which translates to about 20000 queries being run.

Change-Id: I6b2985a47021ebd4a970861040e7474aca7941b5
---
M be/src/runtime/krpc-data-stream-recvr.cc
M be/src/runtime/krpc-data-stream-recvr.h
M be/src/runtime/krpc-data-stream-sender.cc
M be/src/runtime/krpc-data-stream-sender.h
4 files changed, 32 insertions(+), 8 deletions(-)



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

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I6b2985a47021ebd4a970861040e7474aca7941b5
Gerrit-Change-Number: 9439
Gerrit-PatchSet: 1
Gerrit-Owner: Michael Ho <k...@cloudera.com>

Reply via email to