You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@arrow.apache.org by "David Li (Jira)" <ji...@apache.org> on 2022/10/13 11:38:00 UTC

[jira] [Resolved] (ARROW-18018) [C++] Potential segmentation fault in unit tests due to usage of AllComplete instead of AllFinished

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

David Li resolved ARROW-18018.
------------------------------
    Resolution: Fixed

Issue resolved by pull request 14393
[https://github.com/apache/arrow/pull/14393]

> [C++] Potential segmentation fault in unit tests due to usage of AllComplete instead of AllFinished
> ---------------------------------------------------------------------------------------------------
>
>                 Key: ARROW-18018
>                 URL: https://issues.apache.org/jira/browse/ARROW-18018
>             Project: Apache Arrow
>          Issue Type: Bug
>          Components: C++
>            Reporter: Weston Pace
>            Assignee: Weston Pace
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 10.0.0
>
>          Time Spent: 40m
>  Remaining Estimate: 0h
>
> Many unit tests rely on StartAndCollect which was running AllComplete on two futures.  The first was the plan finished future and the second was the sink generator collector future.  However, AllComplete exits early if one of these futures fails.  There were some cases where an error was delivered to the sink generator (and thus triggers that future) before the plan finished future was marked complete.  This was generally quite rare but could lead to the plan getting deleted before all tasks had completely finished and it could sometimes lead to a segmentation fault.
> The solution is to simply use AllFinished here as AllFinished waits for all futures to finish regardless of status.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)