[ https://issues.apache.org/jira/browse/DRILL-5156?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15795944#comment-15795944 ]
ASF GitHub Bot commented on DRILL-5156: --------------------------------------- Github user sudheeshkatkam commented on the issue: https://github.com/apache/drill/pull/709 This change may not be that simple, but I could be wrong. I tried to do something similar as part of [PR 429](https://github.com/apache/drill/pull/429/commits/0394f4caffff5aed142bb2ba0b192f3588cfda7b). The close happens elsewhere. The "loop" is actually closed as part of [BasicServer#close](https://github.com/apache/drill/blob/master/exec/rpc/src/main/java/org/apache/drill/exec/rpc/BasicServer.java#L218). But it will be closed multiple times (because there may be multiple instances of sub-classes of BasicServer, and all use the same loop), and looks like "loop2" is not closed anywhere. The changes in PR 429 close the loops exactly once, but I do not recollect why the PR is not merged. > 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 (v6.3.4#6332)