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

Jared Winick commented on ACCUMULO-1858:
----------------------------------------

I have successfully tested Sean's patch today using the simple web application 
found at https://github.com/jaredwinick/accumulo-1858-test/. The testing 
applied the patch to the 1.4.3 tag as that is the version currently being used 
by a customer. I was using Zookeeper 3.3.6 and JBoss 7.1.1. 

The attached ACCUMULO-1858-no-patch.png shows the behavior, prior to the patch 
being applied, of successive redeploys 
(https://github.com/jaredwinick/accumulo-1858-test/blob/master/redeploy.sh) 
until JBoss finally dies with the OOM error. ACCUMULO-1858-patch-close.png 
shows the behavior with the patch applied. You can see the thread count holding 
steady over time and GC cleaning up space/classes when needed.

The one caveat we found is that the close() method doesn't block until the ZK 
threads have actually been shutdown (nor does this look possible with the ZK 
API). If close() is called and the SevletContextListener.contextDestoryed() 
method returns immediately, the container starts to clean up resources. There 
appears to be a race condition between the container cleaning up resources and 
the ZK SendThread actually shutting down and we have thus repeatedly seen 
"java.lang.NoClassDefFoundError: org/apache/zookeeper/server/ZooTrace" errors 
when the ZK thread tries to log a message after the container has already 
unloaded the ZooTrace class. It appears this situation can be avoided by 
sleeping for a few seconds after calling close() as seen in 
https://github.com/jaredwinick/accumulo-1858-test/blob/master/src/main/java/com/koverse/ApplicationServletContextListener.java
 


> Backport fix for Accumulo-1379 PermGen Leak to 1.4 and 1.5
> ----------------------------------------------------------
>
>                 Key: ACCUMULO-1858
>                 URL: https://issues.apache.org/jira/browse/ACCUMULO-1858
>             Project: Accumulo
>          Issue Type: Bug
>    Affects Versions: 1.4.3, 1.5.0
>            Reporter: Aaron Cordova
>            Assignee: Sean Busbey
>            Priority: Minor
>             Fix For: 1.4.5, 1.5.1
>
>         Attachments: ACCUMULO-1858-no-patch.png, 
> ACCUMULO-1858-patch-close.png, ACCUMULO-1858.1.patch.txt
>
>
> Apply bug fix for the way zookeeper client is handled in Accumulo-1379 to 
> Accumulo versions 1.4 and 1.5.



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to