-
Type:
Sub-task
-
Status: Open
-
Priority:
Major
-
Resolution: Unresolved
-
Affects Version/s: Impala 2.9.0
-
Fix Version/s: None
-
Component/s: Distributed Exec
-
Labels:None
-
Target Version:
-
Epic Color:ghx-label-2
If it reports a bad status, UpdateFragmentExecStatus() will call UpdateStatus(), which takes Coordinator::lock_ and then calls Cancel(). That method issues one RPC per fragment instance.
In KRPC, doing so much work from UpdateFragmentExecStatus() - which is an RPC handler - is a bad idea, even if the RPCs are issued asynchronously. There's still some serialization cost.
It's also a bad idea to do all this work while holding lock_. We should address both of these to ensure scalability of the cancellation path.
- depends upon
-
IMPALA-2990 Coordinator should timeout and cancel queries with unresponsive / stuck executors
-
- Resolved
-
-
IMPALA-5384 Simplify coordinator locking protocol
-
- Resolved
-