You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues-all@impala.apache.org by "Zoltán Borók-Nagy (Jira)" <ji...@apache.org> on 2022/02/03 16:30:00 UTC

[jira] [Assigned] (IMPALA-11105) Impala crashes in PhjBuilder::Close() when Prepare() fails

     [ https://issues.apache.org/jira/browse/IMPALA-11105?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Zoltán Borók-Nagy reassigned IMPALA-11105:
------------------------------------------

    Assignee: Zoltán Borók-Nagy

> Impala crashes in PhjBuilder::Close() when Prepare() fails
> ----------------------------------------------------------
>
>                 Key: IMPALA-11105
>                 URL: https://issues.apache.org/jira/browse/IMPALA-11105
>             Project: IMPALA
>          Issue Type: Bug
>          Components: Backend
>            Reporter: Zoltán Borók-Nagy
>            Assignee: Zoltán Borók-Nagy
>            Priority: Major
>
> Currently PhjBuilder::Close() looks like the following:
> {noformat}
> void PhjBuilder::Close(RuntimeState* state) {
>   if (closed_) return;
>   CloseAndDeletePartitions(nullptr);
>   if (ht_ctx_ != nullptr) {
>     ht_ctx_->StatsCountersAdd(ht_stats_profile_.get());
>     ht_ctx_->Close(state);
>     ht_ctx_.reset();
>   }
> ...
> {noformat}
> When 'ht_ctx_' is not null, we invoke ht_ctx_->StatsCountersAdd(ht_stats_profile_.get());
> But in Prepare() we create 'ht_ctx_' first, then after a couple operations which might fail we create 'ht_stats_profile_'.
> This means if an operation fails in Prepare(), between the creation of 'ht_ctx_' and 'ht_stast_profile_', then later we'll get a SEGFAULT in Close().
> The solution could be to initialize the counters first, like we do in grouping-aggregators.cc.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-all-unsubscribe@impala.apache.org
For additional commands, e-mail: issues-all-help@impala.apache.org