Riza Suminto created IMPALA-13083:
-------------------------------------
Summary: Clarify REASON_MEM_LIMIT_TOO_LOW_FOR_RESERVATION error
message
Key: IMPALA-13083
URL: https://issues.apache.org/jira/browse/IMPALA-13083
Project: IMPALA
Issue Type: Improvement
Components: Distributed Exec
Reporter: Riza Suminto
REASON_MEM_LIMIT_TOO_LOW_FOR_RESERVATION error message is too vague for
user/administrator to make necessary adjustment to run query that is rejected
by admission-controller.
{code:java}
const string REASON_MEM_LIMIT_TOO_LOW_FOR_RESERVATION =
"minimum memory reservation is greater than memory available to the query
for buffer "
"reservations. Memory reservation needed given the current plan: $0. Adjust
either "
"the mem_limit or the pool config (max-query-mem-limit,
min-query-mem-limit) for the "
"query to allow the query memory limit to be at least $1. Note that
changing the "
"mem_limit may also change the plan. See the query profile for more
information "
"about the per-node memory requirements.";
{code}
There are many config and options that directly and indirectly clamp
schedule.per_backend_mem_limit() and schedule.per_backend_mem_to_admit().
[https://github.com/apache/impala/blob/3b35ddc8ca7b0e540fc16c413a170a25e164462b/be/src/scheduling/schedule-state.cc#L262-L361]
Ideally, this error message should clearly mention which query option / llama
config / backend flag that influence per_backend_mem_limit decision so that
user can make directly make adjustment on that config. It should also clearly
mention 'Per Host Min Memory Reservation' info string at query profile instead
of just 'per-node memory requirements'.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)