Return-Path: X-Original-To: apmail-accumulo-user-archive@www.apache.org Delivered-To: apmail-accumulo-user-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id CB897FA78 for ; Wed, 24 Apr 2013 14:12:39 +0000 (UTC) Received: (qmail 22568 invoked by uid 500); 24 Apr 2013 14:12:39 -0000 Delivered-To: apmail-accumulo-user-archive@accumulo.apache.org Received: (qmail 22523 invoked by uid 500); 24 Apr 2013 14:12:38 -0000 Mailing-List: contact user-help@accumulo.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@accumulo.apache.org Delivered-To: mailing list user@accumulo.apache.org Received: (qmail 22491 invoked by uid 99); 24 Apr 2013 14:12:37 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 24 Apr 2013 14:12:37 +0000 X-ASF-Spam-Status: No, hits=-0.7 required=5.0 tests=RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of josh.elser@gmail.com designates 209.85.216.42 as permitted sender) Received: from [209.85.216.42] (HELO mail-qa0-f42.google.com) (209.85.216.42) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 24 Apr 2013 14:12:30 +0000 Received: by mail-qa0-f42.google.com with SMTP id dx4so939741qab.15 for ; Wed, 24 Apr 2013 07:12:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=x-received:message-id:date:from:user-agent:mime-version:to:subject :references:in-reply-to:content-type:content-transfer-encoding; bh=Ps7wKHPNUVhSmlp0aTBq0TeZtR8TtNV+OZKf65FeZFw=; b=Xcewl4+8HRr5jbQGf8D+vTVetAIEuJv4j6+4RZxmtJKZyIIaGVvSmP3zXJTiQO7WR5 uCEJZztxG3b1uWodSUNqS/yLEPp74NwInnbK8wTxvm+VTURSrKJTwkv9GqZot8Ddo3rb fqRZdSEX0bqRoxPQ9fPiCll8Zc3Eguq4Y42szlNRgYehQEP1uB+MTZfnKaIg5383jUaj t4jBVQHAly/3aULE4DP4oKS+2WHwGvAkIQ8c7lq27g9rDPEnG10yiJGdXJ2K4rcfYx+u PxXIoYgkOSI641Glk2nVfClg1kz8gL63Y4lYtC/P1OsmMaSMtEK7KZAR4hnR6BsxIZpb ULcA== X-Received: by 10.49.104.37 with SMTP id gb5mr8388198qeb.41.1366812729277; Wed, 24 Apr 2013 07:12:09 -0700 (PDT) Received: from rd6um-34105l.local (rd6um-34105l.tycho.ncsc.mil. [144.51.26.21]) by mx.google.com with ESMTPSA id n3sm4891683qat.6.2013.04.24.07.12.07 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 24 Apr 2013 07:12:08 -0700 (PDT) Message-ID: <5177E833.9040304@gmail.com> Date: Wed, 24 Apr 2013 10:12:03 -0400 From: Josh Elser User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:17.0) Gecko/20130328 Thunderbird/17.0.5 MIME-Version: 1.0 To: user@accumulo.apache.org Subject: Re: PermGen leak in JBoss References: <1F768E0365ED884CA8D9A3A315D04401084B1A92@shark6.netcentric.local> In-Reply-To: <1F768E0365ED884CA8D9A3A315D04401084B1A92@shark6.netcentric.local> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org Giving a quick glance at that code again, the only thing I see that would be active is the ZooKeeperInstance (ZooCache) which will try to stay connected/updated to ZooKeeper. However, that should also disconnect/expire itself. What's the time frame in which you're redeploying your webapp (within a few seconds, minutes)? Also, threadname/stacktrace for said 5 threads would be helpful/enlightening. On 4/24/13 9:48 AM, Michael Giordano wrote: > Under version 1.3.7 we are using the following code to initialize a cloudbase connection during initialization of our web app: > > ZooKeeperInstance instance = new ZooKeeperInstance(instanceName, zooKeepers); > connector = instance.getConnector(userId, password.getBytes()); > > The problem is that under the hood, this call creates several (5) threads that are not cleaned up when the app is undeployed in JBoss. This is occurring without performing any scans or interacting with cloudbase in any other way. After relatively few redeploys of the app, the PermGen Space is OOM. > > I can't find any reference in the cloudbase API akin to a close() method for the Connector object. This is a classloader leak effecting any webapp that is accessing cloudbase directly. The result of this leak is not simply orphaned threads, but thousands of classes not gc'd because the classloader itself can't be gc'd. This is what is filling up PermGen. > > Has anyone discovered this particular issue? Has anyone discovered a solution? > > Thanks, > Mike G. > > NetCentric Technology, Inc. > 3349 Route 138, Building A > Wall, NJ 07719 > Phone: 732-544-0888 > >