[
https://issues.apache.org/jira/browse/DRILL-6295?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Vlad Rozov updated DRILL-6295:
------------------------------
Description: During query cancellation, in case
{{PartitionerDecorator.executeMethodLogic()}} is active (waiting on the
{{latch}}), the wait will be interrupted and {{Futures}} cancelled, but there
is no guarantee that all {{CustomRunnable}} terminate before returning from
{{PartitionerDecorator.executeMethodLogic()}}. On exit, both income and
outgoing batches are cleared, leading to clearing of underlying {{Vectors}} and
{{DrillBufs}}. This eventually causes unallocated memory access and JVM crash
as {{CustomRunnable}} may execute after income/outgoing batches are cleared.
(was: During query cancellation, in case
{{PartitionerDecorator.executeMethodLogic()}} is active (waiting on the
{{latch}}), the wait will be interrupted and {{Future}}s cancelled, but there
is no guarantee that all {{CustomRunnable}} terminate before returning from
{{PartitionerDecorator.executeMethodLogic()}}. On exit, both income and
outgoing batches are cleared, leading to clearing of underlying {{Vector}}s and
{{DrillBuf}}s. This eventually causes unallocated memory access and JVM crash
as {{CustomRunnable}} may execute after income/outgoing batches are cleared.)
> PartitionerDecorator may close partitioners while CustomRunnable are active
> during query cancellation
> -----------------------------------------------------------------------------------------------------
>
> Key: DRILL-6295
> URL: https://issues.apache.org/jira/browse/DRILL-6295
> Project: Apache Drill
> Issue Type: Bug
> Reporter: Vlad Rozov
> Assignee: Vlad Rozov
> Priority: Critical
> Fix For: 1.14.0
>
>
> During query cancellation, in case
> {{PartitionerDecorator.executeMethodLogic()}} is active (waiting on the
> {{latch}}), the wait will be interrupted and {{Futures}} cancelled, but there
> is no guarantee that all {{CustomRunnable}} terminate before returning from
> {{PartitionerDecorator.executeMethodLogic()}}. On exit, both income and
> outgoing batches are cleared, leading to clearing of underlying {{Vectors}}
> and {{DrillBufs}}. This eventually causes unallocated memory access and JVM
> crash as {{CustomRunnable}} may execute after income/outgoing batches are
> cleared.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)