On Tue, 2004-10-05 at 06:03, kepes.krisztian wrote:
So: session. When I log in to server, I put 8 items to session, and I read them in every request. I don't store anything else in session, I use my websessionstore table to exchange datas.
This code in 2.6.3 is working good. And it is working good with my localhost (Mozilla, IE, etc).
The problem is get when I want to show the page to my boss, and his IE is crashing my zope with these session errors.
Yup. Sessioning in 2.6.3 is broken.
But I'm the man who not like the non-repeatable errors. If a component or program drop an errors, I never trust in it again.
If I get this problem with boss-IE, possible (may be) I get this error with another IE (the program users are many). So how to I trust in Zope 2.7.x ?
Sessioning was rewritten in 2.7.3. See http://www.plope.com/Members/chrism/sessioning_redux
Yesterday I try to downgrade, but the 2.6.4 have a problem with kinterbasdbda, and I cannot do that.
Donwgrading won't fix any sessioning issues.
Almost surely, this is not the reason for you.
Not the reason, or not reasonable for me ? :-) (Yes, these errors are not reasonable for me !)
But maybe, you, too, have either a code or code/data inconsistency?
What do you think when you write this ?
Did you make a clean install of "Transience"?
I use zope's windows installer. In debian I compile with setup. (In debian I don't see this problem, only in my developer machine (win). But if is exists in win, may be exists in debian !).
It's unclear how you actually install things... the only release of Zope at this time with sessioning that seems to work reliably under high load is 2.7.3b1. That must be compiled from source at this point on UNIX; a Windows installer also exists for it.
Do your session data lives in a RAM storage (default) or in a FileStorage?
Yes, I use RAM storage. How to I use file storage ? Please help me: how to I install, or where I found this product ?
You needn't install anything. Using the "default" sessioning setup (data stored in /temp_folder/session_data_container) is the right thing to do. The errors you post makes it sound like you're doing something different. Are you?
... When I try to change server to 2.7.3.b, it is drop another errors:
2004-10-01T17:30:30 ERROR(200) ZODB Couldn't load state for 0x0e44 Traceback (most recent call last): File "c:\zope\lib\python\ZODB\Connection.py", line 600, in setstate self._set_ghost_state(obj, p) File "c:\zope\lib\python\ZODB\Connection.py", line 645, in _set_ghost_state setstate(state) File "c:\zope\lib\python\Products\Transience\Transience.py", line 977, in __setstate__ oldlength = state['_length'] KeyError: '_length'
I'd like to say that this error surprises me, but it doesn't all that much; I didn't have time to test upgrading old session data from all existing Zope versions. What is the value of "Transient Object Container Path" in your /session_data_manager object? Whatever it is, if you can delete the object it points to (a "transient object container") and recreate it in the same place, things should begin to work.
Apparently, your session data lives in a long living storage (not RAMStorage) and the session pickles there lack some information which is not relevant.
2..7.3b is a trying. It is drop this error, when I try to find something in the zope man. intf. So not that the main problem.
I have no idea what that means, sorry.
Shut your Zope down and discard all existing session data.
Ahhh... But it is not too good. Many user working with zope system. If anyone make this error, all user are pushed out, because RAM st. is cleared, so they are must be login again to continue work...
Do it just once under 2.7.3b1 and you shouldn't need to do it again unless you downgrade again. - C