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


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

        

Reply via email to