Details
-
Sub-task
-
Status: Open
-
Minor
-
Resolution: Unresolved
-
Impala 2.8.0
-
None
-
None
Description
Coordinator::Cancel() sets query_status_ to its cause argument. If cause is nullptr, the query status is set to CANCELLED.
All queries are cancelled at the end of their execution, whether they succeeded or not. The success paths don't currently set cause to Status::OK(), so the coordinator is always considered cancelled, even if the query completed successfully.
This is an easy path to fall into, because there's a default parameter at the top of the call chain (in ImpalaServer::UnregisterQuery() that leads to Cancel() which is set to nullptr. We should remove the default parameter and force callers to explicitly say what state they think the query should end in.