[Seaside] cleaning up in 2.5

Jon Paynter kittle at mail.yans.net
Wed Sep 8 04:27:35 CEST 2004


---------- Original Message ----------------------------------
Date: Sun, 5 Sep 2004 13:02:04 +0200 (CEST)

>On Sun, 5 Sep 2004, radoslav hodnicak wrote:
>
>>
>> What are the necessary steps to get rid of old objects in 2.5?
>>
>> When I expire my sessions (for closing db connections etc) and do
>> WARegistry clearAllHandlers (and collect garbage), I still have those
>> sessions and applications hanging around. Tracking back pointers there are
>> tons of references to method contexts (performRequest:,
>> withEscapeContinuation: ...) so I don't know if this is a general problem
>> or if just my image is hosed.
>
>Ok found it (should have read the list archive first) - it's held in
>Halos. While Halos is a weak key dictionary, every halo has a strong
>reference to the key (target) so it will never be collected. I think this
>is the kind of problem ephemorons are supposed to solve.

I have the same problem in my own images..  WASession and WAApplication objects dont want to get garbage collected, resulting in my VW images exceeding 50mb when they should be around 17. 

I saw a revelant post in the archives about this, checked my image and the fix appeared to be in place... yet session and application objects wont go away. 

Rado - you mentioned you were expiring your sessions.. was that from a workspace? or as a normal part of operations in your code? So far ive relied on normal garbage collection procedures to keep stuff cleaned up & want to make sure im not leaving out some importand steps somewhere.  Im not using any database connections, but it would be nice to know where to stick calls to my own save methods. 

Let me know, 
Jon. 



More information about the Seaside mailing list