accumulo-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jared Winick (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (ACCUMULO-1858) Backport fix for Accumulo-1379 PermGen Leak to 1.4 and 1.5
Date Fri, 15 Nov 2013 05:53:27 GMT

    [ 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)

Mime
View raw message