You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@impala.apache.org by "Michael Ho (Code Review)" <ge...@cloudera.org> on 2016/03/03 04:59:24 UTC
[Impala-CR](cdh5-trunk) IMPALA-561: Allow multiple callbacks in a thread resource pool.
Michael Ho has uploaded a new change for review.
http://gerrit.cloudera.org:8080/2430
Change subject: IMPALA-561: Allow multiple callbacks in a thread resource pool.
......................................................................
IMPALA-561: Allow multiple callbacks in a thread resource pool.
Previously, thread resource manager only supports a single callback
for each resource pool. The callback is invoked when a thread token
is available. This mostly works as scan node is the only consumer
and there is usually one scan node in a plan fragment. As shown in
IMPALA-3064 and IMPALA-561, it's possible to generate a plan fragment
with more than one scan nodes. In which case, one of the scan nodes
may be running with single thread and in debug builds, a DCHECK will
be hit.
This change fixes the problem by allowing more than one callbacks
in a given resource pool. The thread resource manager will go through
all the registered callbacks in round robin fashion.
Change-Id: Iddfff1feef0b59d407994ad3bc560166acbfa623
---
M be/src/exec/hdfs-scan-node.cc
M be/src/exec/hdfs-scan-node.h
M be/src/runtime/thread-resource-mgr-test.cc
M be/src/runtime/thread-resource-mgr.cc
M be/src/runtime/thread-resource-mgr.h
M testdata/workloads/functional-query/queries/QueryTest/single-node-nlj.test
6 files changed, 144 insertions(+), 30 deletions(-)
git pull ssh://gerrit.cloudera.org:29418/Impala refs/changes/30/2430/1
--
To view, visit http://gerrit.cloudera.org:8080/2430
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Iddfff1feef0b59d407994ad3bc560166acbfa623
Gerrit-PatchSet: 1
Gerrit-Project: Impala
Gerrit-Branch: cdh5-trunk
Gerrit-Owner: Michael Ho <kw...@cloudera.com>