[ 
https://issues.apache.org/jira/browse/ASTERIXDB-3472?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17878284#comment-17878284
 ] 

ASF subversion and git services commented on ASTERIXDB-3472:
------------------------------------------------------------

Commit fd2c99e97664c8c098eabd603e209027351abdb8 in asterixdb's branch 
refs/heads/master from Ali Alsuliman
[ https://gitbox.apache.org/repos/asf?p=asterixdb.git;h=fd2c99e976 ]

[ASTERIXDB-3472][HYR] Use CleanupUtils.fail/close in ProbeAndJoinActivityNode

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
In the close() of the hash-join ProbeAndJoinActivityNode,
use CleanupUtils.fail()/close() when closing the next writer.

The reason is if all the build partitions are spilled, pushing
the frames from the ProbeAndJoinActivityNode to the next writer
will happen in the close(), not nextFrame().

In such cases, any exception that happens in the next writer
is caught in ProbeAndJoinActivityNode.close(). After that,
it calls fail()/close() on the next writer. Those fail()/close()
should be done using CleanupUtils so that the original caught
exception is not lost.

Ext-ref: MB-62949
Change-Id: I1cdee5ed457b72b4f6b3731fba3542898dec9bf3
Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/18707
Tested-by: Jenkins <[email protected]>
Reviewed-by: Michael Blow <[email protected]>


> Original exception gets masked by later exception
> -------------------------------------------------
>
>                 Key: ASTERIXDB-3472
>                 URL: https://issues.apache.org/jira/browse/ASTERIXDB-3472
>             Project: Apache AsterixDB
>          Issue Type: Bug
>          Components: HYR - Hyracks
>            Reporter: Ali Alsuliman
>            Assignee: Ali Alsuliman
>            Priority: Major
>              Labels: triaged
>
> When executing the tasks of a query and a failure happens in a task, the 
> original exception can get masked by a later exception leading to the loss of 
> the root cause of the query failure. As an example, when a task encounters a 
> failure during opening its pipeline, the pipeline will be closed as usual 
> (and the failure should be reported). However, if another failure happens 
> during closing the pipeline, this later exception masks the original 
> exception. There is no way to debug such cases any further since the root 
> cause is gone.



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

Reply via email to