drill-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Paul Rogers (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (DRILL-5156) Bit-Client thread finds closed allocator in TestDrillbitResilience unit test
Date Fri, 23 Dec 2016 20:12:58 GMT

    [ https://issues.apache.org/jira/browse/DRILL-5156?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15773608#comment-15773608

Paul Rogers commented on DRILL-5156:

Also seeing a similar problem in {{FragmentContext.close()}} in the unit test {{TestConvertFunctions#testConvertFromConvertToInt}}.
This test fails with the Snappy library issue. Then, when tearing down, we get an {{IllegalStateException}}
in the {{OperatorContextImpl.close()}} method here:

    if (allocator != null) {
      allocator.close(); // Error here

Likely, again, the thread is not being closed properly before the memory allocator is released.

> Bit-Client thread finds closed allocator in TestDrillbitResilience unit test
> ----------------------------------------------------------------------------
>                 Key: DRILL-5156
>                 URL: https://issues.apache.org/jira/browse/DRILL-5156
>             Project: Apache Drill
>          Issue Type: Bug
>            Reporter: Paul Rogers
>            Assignee: Paul Rogers
>            Priority: Minor
> RPC thread attempts to access a closed allocator during the {{TestDrillbitResilience}}
unit test.
> Set a Java exception breakpoint for {{IllegalStateException}}. Run the {{TestDrillbitResilience}}
unit tests.
> You will see quite a few exceptions, including the following in a thread called BitClient-1:
> {code}
> RootAllocator(BaseAllocator).assertOpen() line 109
> RootAllocator(BaseAllocator).buffer(int) line 191
> DrillByteBufAllocator.buffer(int) line 49
> DrillByteBufAllocator.ioBuffer(int) line 64
> AdaptiveRecvByteBufAllocatpr$HandleImpl.allocate(ByteBufAllocator) line 104
> NioSocketChannel$NioSocketChannelUnsafe(...).read() line 117
> ...
> NioEventLoop.run() line 354
> {code}
> The test continues (then fails for some other reason), which is why this is marked as
minor. Still, it seems odd that the client thread should attempt to access a closed allocator.
> At this point, it is not clear how we got into this state. The test itself is waiting
for a response from the server in the {{tailsAfterMSorterSorting}} test.

This message was sent by Atlassian JIRA

View raw message