[Seaside] WASession>>#unregister fails due to @parent isNil

jtuchel at objektfabrik.de jtuchel at objektfabrik.de
Tue Jul 11 06:30:31 UTC 2017


 From time to time we get walkbacks on our production servers when users 
want to login/create a new session due to failed cleanup/unregister of 
old sessions.

Here's an excerpt from the walkback (VA Smalltalk):

MessageNotUnderstood class(Exception class)>>#signalWith:
   receiver = MessageNotUnderstood
   arg1 = (nil Message (#unregisterAt:, ('PZv9N5QPtkzYQMvH')))
   receiver = nil
   arg1 = Message (#unregisterAt:, ('PZv9N5QPtkzYQMvH'))
   receiver = a KontolinoSession
   receiver = a KontolinoSession

Looking at WASession>>#unregister it is clear that the variable @parent 
isNil and therefor unregister cannot work.

Now I am wondering

  * how could @parent become nil?
    The only thing I can think of is a user clicking on "logout" twice.
    The logs of our application, however, don't support this thesis...
  * is this a (known and/or even fixed) bug in Seaside or our code? We
    haven't implemented any access to the @parent variable...
  * is it a good workaround to intrudoce a notNil check in our WASession
    subclass' #unregister method before sending super unregister?
    We will try this of course because it is not a good marketing gag to
    greet users with an error screen instead of a login form

Any hints, ideas, requests for more details are welcome.


Objektfabrik Joachim Tuchel          mailto:jtuchel at objektfabrik.de
Fliederweg 1                         http://www.objektfabrik.de
D-71640 Ludwigsburg                  http://joachimtuchel.wordpress.com
Telefon: +49 7141 56 10 86 0         Fax: +49 7141 56 10 86 1

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/seaside/attachments/20170711/f37e4db4/attachment.html>

More information about the seaside mailing list