james-server-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Bernd Fondermann (JIRA)" <server-...@james.apache.org>
Subject [jira] Commented: (JAMES-512) OutOfMemoryError -- object not released.
Date Sun, 28 May 2006 21:22:31 GMT
    [ http://issues.apache.org/jira/browse/JAMES-512?page=comments#action_12413646 ] 

Bernd Fondermann commented on JAMES-512:
----------------------------------------

I'd like to have some more info to eventually reproduce the problem:

o How long does James run before it runs out of heap?
o What is your max heap?
o I assume from your bug report that you are using James 2.2.0?
o How much email load do you get, approximately?
o How many user accounts do you have, approximately?

Thank you!

> 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: Stefano Bagnara
>     Priority: Critical
>      Fix For: 2.3.0a4
>  Attachments: 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