[Seaside] handler reuse bug? [2.3]

Michal miso.list at auf.net
Sun Feb 20 14:15:04 CET 2005


Hi - one of my seaside applications, still running 2.3, has suddenly
started to generate dozens of error messages like the one attached to
this message. As you can see #collectExpiredHanlders chokes on a
mismatch between the content of keysByHandler and handlersByKey, which
should never happen. Furthermore, I have never touched that part of
seaside in my code.

What I *think* is happening is: (i) a spider is generating a biggish
load (there were about 3000 handlers when I VNCed into the server and
netstat shows a couple of the usual suspects), (ii) seaside is reusing
some expired handlers to cope with the incoming session requests,
(iii) #collectExpiredHandlers first builds a collection of expired
handlers and then unregisters them one by one, but by the time it
sends #unregisterExpiredHandler:, the handler has been reused and its
key has changed, hence the lookup in #unregisterExpiredHandler:
triggers an error.

At this point, this is a guess based on various oddities I am seeing
when VNC-ing the image. Is it a plausible guess? Has anyone seen
anything like that?

thanks, 
Michal

ps. when sending me the error msgs, sometimes #printString on a
collection of session objects also fails, generating recursive error
msgs, with ever longer stacks. On the above hypothesis this would be
due to key being swapped in/out while trying to #printString based on
the key.

-------------- next part --------------
An embedded message was scrubbed...
From: unknown sender
Subject: no subject
Date: no date
Size: 9333
Url: http://lists.squeakfoundation.org/pipermail/seaside/attachments/20050220/fd8c03be/attachment.eml


More information about the Seaside mailing list