Re: [Zope] Reconnection session_data to own Session.fs storage

2009-08-05 Thread Allen Schmidt Sr.




Dieter Maurer wrote:

  Allen Schmidt Sr. wrote at 2009-8-4 13:45 -0400:
  
  
...
In the ZMI, there are:

/session_folder/  ( a regular folder )
   session_data  ( Transient Object Container )

/session_data_manager ( Session Data Manager )


All the parts seem right but its not workingsession writes wind up 
as anonymous transactions in the main ZODB.

Any ideas?

  
  
Verify that "session_folder" is a mount point and not a regular
folder.

This is not trivial as a mount point, once mounted, tries hard to
become the mounted object (this happens in its "__of__" method).
You must avoid acquisition to check that it is indeed a mount point.
One way is to use "app._p_activate(); app.__dict__['session_folder']".
This must return a mount point, not a folder.
  

I verified using your process that it is indeed just a folder. So I
deleted the session_folder in the root and then tried to add a ZODB
mount point in the root and it showed the session_folder was ready to
be created. I made sure that option was checked and clicked Ok. It
reloaded the root folder and the new session_folder was there, but it
still seems like it is just a regular folder and does not identify
itself as a mount point. I also added the session_data object into that
folder as a Transient Object Container as it was before.

Does the session_data_manager that points to that session_data folder
also have to be removed in this process? Could be holding it up somehow?


___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


Re: [Zope] Reconnection session_data to own Session.fs storage

2009-08-05 Thread Dieter Maurer
 I verified using your process that it is indeed just a folder. So I deleted
 the session_folder in the root and then tried to add a ZODB mount point in the
 root and it showed the session_folder was ready to be created. I made sure
 that option was checked and clicked Ok. It reloaded the root folder and the
 new session_folder was there, but it still seems like it is just a regular
 folder and does not identify itself as a mount point. I also added the
 session_data object into that folder as a Transient Object Container as it was
 before.
 Does the session_data_manager that points to that session_data folder also
 have to be removed in this process? Could be holding it up somehow?

No. The session_data manager contains only the path to the session
data. It has nothing to do where the sessions are maintained.

You are sure that you have verified via app.__dict__['temp_folder']
that temp_folder is a MountPoint (and have seen it as a normal Folder)?
If you access temp_folder normally, it will always look like a normal
folder (if mounting was successful).


If you have verified correctly, then some magic must have changed your
mount point back again to a normal Folder. I do not know such
magic -- therefore, I doubt that your verification was correct.
But, you may put your session storage at a different place
(say session_storage) and reconfigure the session_data_manager to
point to this new place. This way, no magic should be able to
modify your mount point.



-- 
Dieter
___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


Re: [Zope] Reconnection session_data to own Session.fs storage

2009-08-04 Thread Allen Schmidt Sr.
Dieter Maurer wrote:
 Allen Schmidt Sr. wrote at 2009-3-5 10:34 -0500:
   
 Somehow, and not sure how, our session_data objects got deleted. No one 
 admits doing it so no idea what happened.
 I recreated the objects with the same IDs and even setup the ZODB mount 
 point to point to the right parts. But our SESSION calls won't write the 
 the separate Session.fs storage and it writes every SESION usage to our 
 main Data.fs as an anon transaction.

 We are on 2.8.10 running ZEO on one server and 5 zope clients on two 
 other servers. The Session.fs file sits along with the Data.fs file but 
 never gets used.

 Any idea how to reconnect the parts again?
 

 The so called session_data_manager tells Zope where the
 session_data is located.

 Apparently, your session_data_manager does not look at
 the place of your mount point or your mount point does not work/is not
 active.

 First verify the session_data_manager configuration (this easy -- look
 in the ZMI).
 If this is correct, verify the mount point.
 That is not so easy. The best way is to start an interactive
 Python interpreter (bin/zopectl debug on *nix).
 Then use

  folder = app.unrestrictedTraverse('path_to_folder_containing_the_mount')
  folder._p_activate() # load the folder
  folder.__dict__['Id_of_your_mount_point']

 You should see an ZODBMountPoint (or something along this lines).

 If you really see a mount point, verify its configuration
 (that's easy again -- thus, you can do that before the more
 difficult step): is the mount point really in the storage you want?
I completely missed this response.
Still having this issue so going back over this again.
Can you identify which things and where for the items above?
  path_to_folder_containing_the_mount and ID_of_your_mount_point

This is in the zope.conf:

 zodb_db session
   mount-point /session_folder
   zeoclient
 server blahblah.com:
 storage session
 name session
 client session
 var $INSTANCE/var
   /zeoclient
 /zodb_db


This is in the zeo.conf:

filestorage session
  path $INSTANCE/var/Session.fs
/filestorage


In the ZMI, there are:

/session_folder/  ( a regular folder )
session_data  ( Transient Object Container )

/session_data_manager ( Session Data Manager )


All the parts seem right but its not workingsession writes wind up 
as anonymous transactions in the main ZODB.

Any ideas?
Thanks!
-Allen
___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


Re: [Zope] Reconnection session_data to own Session.fs storage

2009-08-04 Thread Dieter Maurer
Allen Schmidt Sr. wrote at 2009-8-4 13:45 -0400:
 ...
In the ZMI, there are:

/session_folder/  ( a regular folder )
session_data  ( Transient Object Container )

/session_data_manager ( Session Data Manager )


All the parts seem right but its not workingsession writes wind up 
as anonymous transactions in the main ZODB.

Any ideas?

Verify that session_folder is a mount point and not a regular
folder.

This is not trivial as a mount point, once mounted, tries hard to
become the mounted object (this happens in its __of__ method).
You must avoid acquisition to check that it is indeed a mount point.
One way is to use app._p_activate(); app.__dict__['session_folder'].
This must return a mount point, not a folder.



-- 
Dieter
___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


Re: [Zope] Reconnection session_data to own Session.fs storage

2009-03-17 Thread Allen Schmidt Sr.
I ran the debug to verify the mount point and got this:

  folder.__dict__['session_data']
TransientObjectContainer at session_data
 


And in the session_folder object in the root, the session_data objects 
shows as a TransientObjectContainer and not a ZODB Mount Point.



Dieter Maurer wrote:
 Allen Schmidt Sr. wrote at 2009-3-5 10:34 -0500:
 Somehow, and not sure how, our session_data objects got deleted. No one 
 admits doing it so no idea what happened.
 I recreated the objects with the same IDs and even setup the ZODB mount 
 point to point to the right parts. But our SESSION calls won't write the 
 the separate Session.fs storage and it writes every SESION usage to our 
 main Data.fs as an anon transaction.

 We are on 2.8.10 running ZEO on one server and 5 zope clients on two 
 other servers. The Session.fs file sits along with the Data.fs file but 
 never gets used.

 Any idea how to reconnect the parts again?
 
 The so called session_data_manager tells Zope where the
 session_data is located.
 
 Apparently, your session_data_manager does not look at
 the place of your mount point or your mount point does not work/is not
 active.
 
 First verify the session_data_manager configuration (this easy -- look
 in the ZMI).
 If this is correct, verify the mount point.
 That is not so easy. The best way is to start an interactive
 Python interpreter (bin/zopectl debug on *nix).
 Then use
 
  folder = app.unrestrictedTraverse('path_to_folder_containing_the_mount')
  folder._p_activate() # load the folder
  folder.__dict__['Id_of_your_mount_point']
 
 You should see an ZODBMountPoint (or something along this lines).
 
 If you really see a mount point, verify its configuration
 (that's easy again -- thus, you can do that before the more
 difficult step): is the mount point really in the storage you want?
 
 
 
___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


Re: [Zope] Reconnection session_data to own Session.fs storage

2009-03-05 Thread Dieter Maurer
Allen Schmidt Sr. wrote at 2009-3-5 10:34 -0500:
Somehow, and not sure how, our session_data objects got deleted. No one 
admits doing it so no idea what happened.
I recreated the objects with the same IDs and even setup the ZODB mount 
point to point to the right parts. But our SESSION calls won't write the 
the separate Session.fs storage and it writes every SESION usage to our 
main Data.fs as an anon transaction.

We are on 2.8.10 running ZEO on one server and 5 zope clients on two 
other servers. The Session.fs file sits along with the Data.fs file but 
never gets used.

Any idea how to reconnect the parts again?

The so called session_data_manager tells Zope where the
session_data is located.

Apparently, your session_data_manager does not look at
the place of your mount point or your mount point does not work/is not
active.

First verify the session_data_manager configuration (this easy -- look
in the ZMI).
If this is correct, verify the mount point.
That is not so easy. The best way is to start an interactive
Python interpreter (bin/zopectl debug on *nix).
Then use

 folder = app.unrestrictedTraverse('path_to_folder_containing_the_mount')
 folder._p_activate() # load the folder
 folder.__dict__['Id_of_your_mount_point']

You should see an ZODBMountPoint (or something along this lines).

If you really see a mount point, verify its configuration
(that's easy again -- thus, you can do that before the more
difficult step): is the mount point really in the storage you want?



-- 
Dieter
___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )