[Zope] 2.5 upgrade, Sessions - too clever for myself

Brad Clements bkc@murkworks.com
Tue, 12 Feb 2002 14:59:17 -0500


On 12 Feb 2002 at 14:37, Matthew T. Kromer wrote:

> I think this is coming from the before traversal hook of the session 
> data manager.  What you can do is
> create a session_data_manager in the old spot (the root) and then change
> its SESSION attribute name from the management screens to blank (null) --
> that will get rid of the traversal hook -- then you can delete it and
> replace it with a dummy object again.

Well, it seems worse actually.

1. I restored last nights backed up Data.fs and friends

2. I started Zope and got the expected traceback/crash in SessionDataManager

3. I changed the SessionDataManager.py code as directed in the ugprade workaround

4. I started Zope

5. Deleted /session_data_manager

6. Created a DTML method as session_data_manager placeholder

7. changed SessionDataManager.py code back to original

8. Restarted Zope (used restart button, not shutdown and start &)

9. Now, code that used REQUEST.SESSION.getSessionData() fails

10. I deleted the dummy session_data_manager dtml method

11. Restart Zope

12. Now REQUEST.SESSION.getSessionData() works (session_data_manager has 
re-appeared in /)

13. restart zope

14. Now REQUEST.SESSION.getSessionData() gives AttributeError, because the 
SESSION object doesn't have that method.

15. Delete session_data_manager object

16. Restart Zope

17. Continue at step 12.

So .. session_data_manager object works only when it's first re-added by whatever 
adds it. On the next restart, it does not work.

I need to fix this in the next hour (you know, one of those development semi-production 
websites :-(    Do I move back to 2.5.B3? 




Brad Clements,                bkc@murkworks.com   (315)268-1000
http://www.murkworks.com                          (315)268-9812 Fax
netmeeting: ils://ils.murkworks.com               AOL-IM: BKClements