You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@servicemix.apache.org by "Ron Gavlin (JIRA)" <ji...@apache.org> on 2009/02/09 06:00:59 UTC

[jira] Issue Comment Edited: (SM-1792) LockManager impl causes memory leak in ServiceMix EIP

    [ https://issues.apache.org/activemq/browse/SM-1792?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=49228#action_49228 ] 

rgavlin edited comment on SM-1792 at 2/8/09 9:00 PM:
--------------------------------------------------------

Part 2 of complete patch for this issue created against SMX trunk.

      was (Author: rgavlin):
    Part 2 of complete patch for this issue.
  
> LockManager impl causes memory leak in ServiceMix EIP
> -----------------------------------------------------
>
>                 Key: SM-1792
>                 URL: https://issues.apache.org/activemq/browse/SM-1792
>             Project: ServiceMix
>          Issue Type: Bug
>          Components: servicemix-eip
>    Affects Versions: servicemix-eip-2008.01, 3.3
>         Environment: Fuse ESB 3.3.1.8-fuse
>            Reporter: Trevor Pounds
>            Priority: Blocker
>             Fix For: servicemix-eip-2008.02
>
>         Attachments: sm-1792-common.patch, sm-1792-eip.patch, sm-1792-file.patch, sm-1792-ftp.patch, sm-1792-truezip.patch, SM-1792.diff
>
>
> Currently the *org.apache.servicemix.locks.LockManager* interface only has a single method *getLock()* associated with it.  As a result this can cause excessive memory leaks in any component that uses it.  I noticed this problem after upgrading our ServiceMix version (from 3.2.1 to 3.3.1.8-fuse) when using the ServiceMix EIP.  There was a change made for SM-1444 to start using the lockManager instance in the base EIPEndpoint class to store a lock for each exchange correlation id.  As a result a new lock is being leaked for each unique correlation id.  In our particular use case we see a 1-to-1 correlation of one object in the lockManager for each message sent to the static recipient list.  After some period of time our ServiceMix crashes with an OutOfMemoryError.  I provided a link to the changeset as reference.
> see:
> http://svn.apache.org/viewvc/servicemix/components/engines/servicemix-eip/trunk/src/main/java/org/apache/servicemix/eip/patterns/StaticRecipientList.java?r1=669611&r2=674844&diff_format=h
> Class that use LockManager and may be affected:
> FtpPollerEndpoint.java
> FilePollerEndpoint.java
> TrueZipPollerEndpoint.java
> AbstractAggregator.java
> EIPEndpoint.java

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.