Yeah. Basically I reinit the app, load a page that has transfer
objects (12-36 of them) and repeat for about 30 minutes.

1. With Pluggable Cache: -XX:+HeapDumpOnOutOfMemoryError dumped out a
heap file and below are some values from MAT dominator

Class: net.sf.ehcache.CacheManager
Retained Heap: 446MB
Percentage: 86.41%

2. With SVN Transfer - did not crash. Twice, the used heap reached
~500MB and drastically dropped to ~100MB

3. Second run of pluggable cache. Hasn't crashed yet but the site is
not accessible. I used VisualVM to take a heap.

Class: net.sf.ehcache.CacheManager
Retained Heap: 444MB
Percentage: 89.79%

Again, I ran into this while developing because reinitializing the app
occurs often as you develop. Reiniting that often would not occur in
production so it may not be a problem but I'm just trying to
conceptually understand what's happening. I attribute the drastic drop
in the second test run to the softreferences in the SVN transfer but I
am lost on the cause of the first and third runs as you've stated that
they should be garbage collected.

- Gabriel

On Sat, Nov 21, 2009 at 8:02 PM, Mark Mandel <[email protected]> wrote:
> The CacheManager should be garbage collected.
>
> What exactly is the problem you are seeing OutOfMemory errors?
>
> Mark
>
> On Sun, Nov 22, 2009 at 8:37 AM, gabriel <[email protected]> wrote:
>>
>> Disclaimer: Not a java person
>>
>> A. I have a coldbox app and every time I reinitialize the application,
>> a new instance of "net.sf.ehcache.CacheManager" is created. I've
>> looked at the heap dump and it seems like instances of that class are
>> taking up 85% of the available memory.
>>
>> What I believe is happening is that coldbox creates a new instance of
>> transfer when you reinitialize the application and transfer then
>> creates a new instance of ehcache.
>>
>> B. I'm wondering, from Transfer's perspective.....
>>
>> 1. Is the intention that only one instance of Transfer exist, say in
>> the Application scope, which ensures that only one instance of the
>> ehCache CacheManager exists as the Application scope is generally not
>> changed until you restart coldfusion?
>>
>> 2. Or, do those instances of "net.sf.ehcache.CacheManager" go away at
>> some point (doesn't seem like it) ?
>>
>> 3. Or, is there a way to manually discard them when a new instance of
>> Transfer is created?
>>
>> Thank you,
>> Gabriel
>>
>> --
>> Before posting questions to the group please read:
>>
>> http://groups.google.com/group/transfer-dev/web/how-to-ask-support-questions-on-transfer
>>
>> You received this message because you are subscribed to the Google Groups
>> "transfer-dev" group.
>> To post to this group, send email to [email protected]
>> To unsubscribe from this group, send email to
>> [email protected]
>> For more options, visit this group at
>> http://groups.google.com/group/transfer-dev?hl=en
>
>
> --
> E: [email protected]
> T: http://www.twitter.com/neurotic
> W: www.compoundtheory.com
>
> --
> Before posting questions to the group please read:
> http://groups.google.com/group/transfer-dev/web/how-to-ask-support-questions-on-transfer
>
> You received this message because you are subscribed to the Google Groups
> "transfer-dev" group.
> To post to this group, send email to [email protected]
> To unsubscribe from this group, send email to
> [email protected]
> For more options, visit this group at
> http://groups.google.com/group/transfer-dev?hl=en

-- 
Before posting questions to the group please read:
http://groups.google.com/group/transfer-dev/web/how-to-ask-support-questions-on-transfer

You received this message because you are subscribed to the Google Groups 
"transfer-dev" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/transfer-dev?hl=en

Reply via email to