You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@impala.apache.org by "Sailesh Mukil (Code Review)" <ge...@cloudera.org> on 2016/08/23 23:02:12 UTC
[Impala-ASF-CR] IMPALA-4014: Introduce query-wide execution state.
Sailesh Mukil has uploaded a new patch set (#10).
Change subject: IMPALA-4014: Introduce query-wide execution state.
......................................................................
IMPALA-4014: Introduce query-wide execution state.
This patch is a header preview of a query wide execution state for
a backend.
Changes in design are as follows:
FragmentMgr -> QueryExecMgr
The QueryExecMgr now receives incoming fragments, creates a new
QueryExecState if it is the first fragment to arrive for that
query, and passes this received fragment along to the QueryExecState.
This class is responsible for cleaning up the QueryExecState.
QueryExecState (new):
This is the query wide state for the backend. It is initialized by
the first fragment to arrive to the QueryExecMgr. This class is now
responsible for creating FragmentExecStates and executing them.
Its life is protected by a ref counting mechanism and it is
scheduled for destruction once the ref count reaches zero.
Once scheduled for destruction, a thread in the QueryExecMgr will
destroy the QueryExecState.
Every user of the QueryExecState must access it within the scope of
ScopedQueryExecStateRef which guarantees ref count incrementing and
decrementing at entry/exit of the scope.
QueryExecState (old) -> ClientRequestExecState:
This is just a class name change.
We still do not include shared state into the QueryExecState because
there needs to be changes to DescriptorTbl, etc. before we can
incorporate them into the QueryExecState. Will be done as separate
patches.
P.S: This only shows what the changes would look like and as of yet
still does not compile.
Excludes:
- Some class renames in places not important to the core patch logic.
- Most .cc files to make use of changes made.
Change-Id: I892091d6401acb2ea91ccb1623af54c6f9635e6c
---
M be/src/runtime/CMakeLists.txt
M be/src/runtime/coordinator.cc
M be/src/runtime/coordinator.h
R be/src/runtime/fragment-instance-exec-state.cc
R be/src/runtime/fragment-instance-exec-state.h
R be/src/runtime/fragment-instance-executor.cc
R be/src/runtime/fragment-instance-executor.h
A be/src/runtime/query-exec-state.cc
A be/src/runtime/query-exec-state.h
M be/src/runtime/runtime-state.cc
M be/src/runtime/runtime-state.h
M be/src/service/CMakeLists.txt
R be/src/service/client-request-exec-state.cc
R be/src/service/client-request-exec-state.h
D be/src/service/fragment-mgr.cc
D be/src/service/fragment-mgr.h
M be/src/service/impala-internal-service.h
A be/src/service/query-exec-mgr.cc
A be/src/service/query-exec-mgr.h
M common/thrift/ImpalaInternalService.thrift
20 files changed, 735 insertions(+), 360 deletions(-)
git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/17/3817/10
--
To view, visit http://gerrit.cloudera.org:8080/3817
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I892091d6401acb2ea91ccb1623af54c6f9635e6c
Gerrit-PatchSet: 10
Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-Owner: Sailesh Mukil <sa...@cloudera.com>
Gerrit-Reviewer: Dan Hecht <dh...@cloudera.com>
Gerrit-Reviewer: David Knupp <dk...@cloudera.com>
Gerrit-Reviewer: Henry Robinson <he...@cloudera.com>
Gerrit-Reviewer: Lars Volker <lv...@cloudera.com>
Gerrit-Reviewer: Marcel Kornacker <ma...@cloudera.com>
Gerrit-Reviewer: Matthew Jacobs <mj...@cloudera.com>
Gerrit-Reviewer: Sailesh Mukil <sa...@cloudera.com>