[
https://issues.apache.org/jira/browse/IMPALA-4697?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Tim Armstrong updated IMPALA-4697:
----------------------------------
Description:
If MergeStatus() or AddDetail() is called on the status, and then that Status
is passed to RuntimeState::LogError(), the merged error messages are silently
dropped and never reported anywhere.
We should fix this because the merged error messages often include important
diagnostic info.
See
{code}
VLOG(vlog_level) << "Error from query " << PrintId(query_id()) << ": " <<
message.msg();
{code}
{code}
void AppendError(ErrorLogMap* map, const ErrorMsg& e) {
ErrorLogEntryPB* target = &(*map)[e.error()];
if (e.error() == TErrorCode::GENERAL) {
target->add_messages(e.msg());
} else {
if (target->messages_size() == 0) {
target->add_messages(e.msg());
}
target->set_count(target->count() + 1);
}
}
{code}
The issue is that .msg() is the original error string and does not include the
additional details.
was:
If MergeStatus() or AddDetail() is called on the status, and then that Status
is passed to RuntimeState::LogError(), the merged error messages are silently
dropped and never reported anywhere.
We should fix this because the merged error messages often include important
diagnostic info.
> RuntimeState::LogError() does not log merged status
> ---------------------------------------------------
>
> Key: IMPALA-4697
> URL: https://issues.apache.org/jira/browse/IMPALA-4697
> Project: IMPALA
> Issue Type: Bug
> Components: Backend
> Affects Versions: Impala 2.8.0
> Reporter: Tim Armstrong
> Priority: Major
> Labels: supportability
>
> If MergeStatus() or AddDetail() is called on the status, and then that Status
> is passed to RuntimeState::LogError(), the merged error messages are silently
> dropped and never reported anywhere.
> We should fix this because the merged error messages often include important
> diagnostic info.
> See
> {code}
> VLOG(vlog_level) << "Error from query " << PrintId(query_id()) << ": " <<
> message.msg();
> {code}
> {code}
> void AppendError(ErrorLogMap* map, const ErrorMsg& e) {
> ErrorLogEntryPB* target = &(*map)[e.error()];
> if (e.error() == TErrorCode::GENERAL) {
> target->add_messages(e.msg());
> } else {
> if (target->messages_size() == 0) {
> target->add_messages(e.msg());
> }
> target->set_count(target->count() + 1);
> }
> }
> {code}
> The issue is that .msg() is the original error string and does not include
> the additional details.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]