james-server-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Stefano Bagnara (JIRA)" <server-...@james.apache.org>
Subject [jira] Resolved: (JAMES-512) OutOfMemoryError -- object not released.
Date Sat, 10 Jun 2006 13:59:31 GMT
     [ http://issues.apache.org/jira/browse/JAMES-512?page=all ]
     
Stefano Bagnara resolved JAMES-512:
-----------------------------------

    Fix Version: 2.4.0
     Resolution: Fixed

The specific issue has been resolved.
If we can reproduce different OOM errors we should create new issues with specific information.

> OutOfMemoryError -- object not released.
> ----------------------------------------
>
>          Key: JAMES-512
>          URL: http://issues.apache.org/jira/browse/JAMES-512
>      Project: James
>         Type: Bug

>   Components: MailStore & MailRepository
>     Versions: 2.2.0
>  Environment: windows XP,
> Java 1.5.0_06
>     Reporter: Quande Ren
>     Assignee: Noel J. Bergman
>     Priority: Critical
>      Fix For: 2.4.0, 2.3.0b1
>  Attachments: james-512.patch, picture.GIF
>
> I use the file system to store the emails.
> When I run the James for a long time, the james server used more and more heap memory,
eventually it runs out of memory and refuse to receive email. only restart the james will
work.
> I used JProfile Memory Debugger(you can get the trial version from www.quest.com)  and
found a clue. the object allocated from following code at line 92 does not always get released,
cause the memory been used up eventually. I will attach a picture file showing the call stack.
> 91,            final OutputStream outputStream = getOutputStream( key );
> 92,            final BufferedOutputStream stream = new BufferedOutputStream( outputStream
);
> 93
> 94,            final Object o = m_outputs.get( key );
> 95,            if( null == o )
> 96,            {
> 97,                m_outputs.put( key; stream );
> 98,            }
> 99,            else if( o instanceof ArrayList )
> 100,            {
> 101,                ( (ArrayList)o ).add( stream );
> 102,            }
> 103,            else
> 104,            {
> 105,                final ArrayList list = new ArrayList();
> 106,                list.add( o );
> 107,                list.add( stream );
> 108,                m_outputs.put( key; list );
> 109,            }
> 110
> 111,            return stream;

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org


Mime
View raw message