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

griffin li commented on DRILL-785:
----------------------------------

Thanks Jacques.
 I also want to use the latest code, but our project is old and i am new, and 
our project added many self logic on the old version, its not easy to upgrade. 

I do some research on the latest code and find that the logic in 
WorkEventBus(WorkEventBus.listeners in particular) is similar to the old 
version(ListenerPool .listeners). I find no place to remove object from the 
ConcurrentHashMap too. 

If i am not misunderstanding the logic , each node(Drillbit) has only one 
org.apache.drill.exec.work.WorkManager . As the WorkEventBus belong to the 
WorkManager, echo node has only one WorkEventBus.listeners too. Since no place 
to remove the object , the ConcurrentHashMap(listeners) will become bigger and 
bigger and will cause OOM exception.

I hope i am wrong. I am a new Drill user and did not find helpful information 
with google. So here I am , looking for help ~~

> org.apache.drill.exec.rpc.bit.ListenerPool leak suspects
> --------------------------------------------------------
>
>                 Key: DRILL-785
>                 URL: https://issues.apache.org/jira/browse/DRILL-785
>             Project: Apache Drill
>          Issue Type: Bug
>          Components: Execution - Flow
>    Affects Versions: 1.0.0-milestone-1
>            Reporter: griffin li
>            Priority: Critical
>         Attachments: memoryleak.jpg
>
>
> the drillbit down for every 7 or 8 day. i print the gc details and find a lot 
> of full gc before down. I dump the heap and analysis with mat and find the 
> ListenerPool may have problem.
> Below is the full message in mat leak suspects:
> One instance of "org.apache.drill.exec.rpc.bit.ListenerPool" loaded by 
> "sun.misc.Launcher$AppClassLoader @ 0x638052d50" occupies 3,484,931,208 
> (98.72%) bytes. The memory is accumulated in one instance of 
> "java.util.concurrent.ConcurrentHashMap$Segment[]" loaded by "<system class 
> loader>".
> Keywords
> java.util.concurrent.ConcurrentHashMap$Segment[]
> org.apache.drill.exec.rpc.bit.ListenerPool 
> sun.misc.Launcher$AppClassLoader @ 0x638052d50
> Then i quick look at ListenerPool and does not find any place to remove 
> object from the listeners. Does this is a problem?



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to