Details
-
Sub-task
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
-
ghx-label-9
Description
We've recently been improving our query lifecycle by adding explicit state transitions so it's easier to reason about what should happen at a given stage in the lifetime of a query or a fragment instance.
On the coordinator side. The coordinator's view of the query: https://github.com/apache/impala/commit/6ca87e46736a1e591ed7d7d5fee05b4b4d2fbb50
On the fragment instance state side. A FIS's view of its own execution:
https://github.com/apache/impala/blob/e12ee485cf4c77203b144c053ee167509cc39374/be/src/runtime/fragment-instance-state.h#L182-L203
We don't have something like this for the QueryState class which maintains query wide state per executor. Adding it should make the lifecycle of a query from an executors point of view much easier to reason about.
Additional info: This was identified as part of work for IMPALA-2990/IMPALA-4063, and is a precursor to it.
Attachments
Issue Links
- breaks
-
IMPALA-7422 Crash in QueryState::PublishFilter() fragment_map_.count(params.dst_fragment_idx) == 1 (0 vs. 1)
- Resolved
- is required by
-
IMPALA-4063 Make fragment instance reports per-query (or per-host) instead of per-fragment instance.
- Resolved
-
IMPALA-2990 Coordinator should timeout and cancel queries with unresponsive / stuck executors
- Resolved