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

Deneche A. Hakim updated DRILL-2878:
------------------------------------
    Attachment: DRILL-2878.2.patch.txt

added more information in the comment. Also added a unit test

Note: the unit test assumes DRILL-2757 has been committed as it tries to inject 
an exception in a position defined in DRILL-2757

> FragmentExecutor.closeOutResources() is not called if an exception happens in 
> the Foreman before the fragment executor starts running
> -------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: DRILL-2878
>                 URL: https://issues.apache.org/jira/browse/DRILL-2878
>             Project: Apache Drill
>          Issue Type: Bug
>          Components: Execution - Flow
>            Reporter: Deneche A. Hakim
>            Assignee: Deneche A. Hakim
>             Fix For: 1.0.0
>
>         Attachments: DRILL-2878.1.patch.txt, DRILL-2878.2.patch.txt
>
>
> When the Foreman sets up the root FragmentExecutor and it needs to wait for 
> data from the remote fragments, the fragment manager is recorded in the work 
> bus and the root fragment executor is not run immediately.
> If an exception happens in the Foreman while setting up the remote fragments, 
> the Foreman cancels all fragments and returns a FAILED message to the client.
> Because the root fragment executor was not run it will never call it's 
> closeOutResources() method and it's fragment context will never be closed.
> You can easily reproduce this by running the following unit test:
> {noformat}
> org.apache.drill.exec.server.TestDrillbitResilience#failsWhenSendingFragments
> {noformat}
> although the test passes successfully because Drill does report the correct 
> failure to the client, the memory leak is not detected and will show up after 
> the test finishes



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to