[Seaside] WeakArray (again)

William Harford seaside at harford.org
Fri Mar 24 15:40:02 UTC 2006


Hi all,

The WeakArray finalizationProcess is delaying seaside page delivery  
by a couple seconds. I know this problem pops up on this list every  
once and a while and the only "solution" I have seen is to use  
IdentityDictionary.

My problem is not that the WeakArray finalizationProces is taking  
over my image it just running at bad times. I noticed that it runs at  
userInterruptPriority. I am assuming that that is done to avoid some  
sort of race condition. Would it be safe for it to run at  
systemBackgroundPriority or userBackgroundPriority in an image that  
is only used for seaside ?

Would there be a way to run the finalizationProces at more controlled  
times like after the seaside request has been handled or even every  
so many minutes. Would doing something like the below be a bad idea  
(it would be forked to a lower process)

[true] whileTrue:[
	WeakArray runningFinalizationProcess terminate.
	(Delay forSeconds: 240) wait.
	WeakArray restartFinalizationProces.
].

I know the above might produce unexpected behavior in some  
applications but would it cause any problems?

The WeakArray issue is becoming a huge problem for us and I would  
love to see some sort of resolution to it.

Thanks
Will


More information about the Seaside mailing list