Return-Path: X-Original-To: apmail-camel-issues-archive@minotaur.apache.org Delivered-To: apmail-camel-issues-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 2F78F9022 for ; Tue, 6 Mar 2012 10:25:22 +0000 (UTC) Received: (qmail 8343 invoked by uid 500); 6 Mar 2012 10:25:22 -0000 Delivered-To: apmail-camel-issues-archive@camel.apache.org Received: (qmail 8316 invoked by uid 500); 6 Mar 2012 10:25:22 -0000 Mailing-List: contact issues-help@camel.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@camel.apache.org Delivered-To: mailing list issues@camel.apache.org Received: (qmail 8307 invoked by uid 99); 6 Mar 2012 10:25:21 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 06 Mar 2012 10:25:21 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED,T_RP_MATCHES_RCVD X-Spam-Check-By: apache.org Received: from [140.211.11.116] (HELO hel.zones.apache.org) (140.211.11.116) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 06 Mar 2012 10:25:19 +0000 Received: from hel.zones.apache.org (hel.zones.apache.org [140.211.11.116]) by hel.zones.apache.org (Postfix) with ESMTP id D2877A2B3 for ; Tue, 6 Mar 2012 10:24:57 +0000 (UTC) Date: Tue, 6 Mar 2012 10:24:57 +0000 (UTC) From: "Claus Ibsen (Commented) (JIRA)" To: issues@camel.apache.org Message-ID: <2103363748.26839.1331029497999.JavaMail.tomcat@hel.zones.apache.org> In-Reply-To: <709117740.12566.1330706277047.JavaMail.tomcat@hel.zones.apache.org> Subject: [jira] [Commented] (CAMEL-5058) Bug: Unique Endpoints Leaking in DefaultInflightRepository MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/CAMEL-5058?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13223140#comment-13223140 ] Claus Ibsen commented on CAMEL-5058: ------------------------------------ Notice ideally the inflight registry would just track for routes only. But the producer template uses an UoW as well for some reason we had to do a while ago. So it will also enlist itself in the inflight registry (well its in fact also an inflight message you may say). So we can either ensure to remove from the inflight map if it become zero as you suggest. This may require a bit of locking, as you need to remove and compare. Alternative, as the map, does not need to be removed in real time, we can have a background thread, doing the cleanup in a scheduled fashion. > Bug: Unique Endpoints Leaking in DefaultInflightRepository > ---------------------------------------------------------- > > Key: CAMEL-5058 > URL: https://issues.apache.org/jira/browse/CAMEL-5058 > Project: Camel > Issue Type: Bug > Components: camel-core > Affects Versions: 2.9.0 > Reporter: Zach Calvert > Assignee: Claus Ibsen > Fix For: 2.10.0, 2.9.2 > > Original Estimate: 24h > Remaining Estimate: 24h > > If you have an endpoint protocol which uses unique URIs you will leak Strings in the HashMap stored in the DefaultInflightRepository (org.apache.camel.impl.DefaultInflightRepository) > It seems there is a reference counting scheme in place, but it doesn't do a remove until the "stop" method is called to shut the system down. We are running XMPP endpoints, which use a protocol like xmpp://someaccount@domain/password?to=someOtherAccount > When there are 10 million accounts, not all of which are active, but all of which may message at some time or another, no references are removed to the endpointCount. > When the count becomes 0, the reference should be removed and the size method will still return the appropriate result. > Please be careful in the implementation to synchronize on some object (perhaps the AtomicInteger) reflecting a read/write lock on the endpoint count modification. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira