Hi everyone, I have come across a situation, where temporarily the session data for a user is not available.
Scenario: User 1 creates some session data. While a user 2 creates also some session data, user 1's data is not accessible. The problem plays out in two ways: 1. The data's __dict__ returns an empty dictionary. When you access an attribute directly, though, the data can be seen. This symptom can be reliably reproduced. 2. Sometimes, the session package data does not have the data in it and fails with a key error. This happens maybe 1 in 50 times and I have not reliably reproduced this problem. There are no conflict errors. And when I store the data to the root folder using the client id, I never see any of the two problems. This makes me believe that the issue is contained to the session code. The only two things that seem specific to the session code is the sweeping algorithm. The comment in zope.session.session, line 192 discusses some issues of sweep, but I am not sure it is relevant. I have attached a package that demonstrates the issue. (This is one of the major benefits of having buildout and eggs!) Here is how you get the problem reproduced: tar xvzf sessionIssue2.tgz cd sessionIssue2 python2.4 bootstrap.py ./bin/buildout -N ./bin/demo fg In a separate shell: cd sessionIssue2 for number in 1 2 3 4 5 6 7 8 ;do sh sessionTest.sh;done The before and after result should always be the same. You can change the demo code to not use sessions and see that it works. You can also see the differences between accessing __dict__ and an attribute directly. So, does anyone have an idea of what is happening here? Any hints are greatly appreciated! Regards, Stephan -- Stephan Richter Web Software Design, Development and Training Google me. "Zope Stephan Richter"
_______________________________________________ Zope-Dev maillist - Zope-Dev@zope.org http://mail.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope )