[Zope] ZEO and session variables.

Chris McDonough chrism at plope.com
Tue May 10 11:37:52 EDT 2005


It appears that something in the ZopeProfiler product is unhappy with
your configuration.  Does it work if you remove this product?

On Mon, 2005-05-09 at 23:37 -0700, Dennis Allison wrote:
> I am hoping someone with more experience that I with multi-headed 
> Zope/ZEO installations can point out my problem.
> 
> I am using with Zope 2.7.6-final and Python 2.4.1.   Yes, I know I am 
> jumping the gun with 2.4.1 but I expect that it is not the source of the 
> problem.  Hardware is an Athlon dual processor CPU running Linux (RH 7.3).
> 
> I am trying to configure multiple Zope heads with a ZEO with shared
> session variables.  This means that the session variables need to be in a
> temporary folder associated with the ZEO instance rather than the Zope
> instance.  The logs seem to indicate both ZEO and the ZEO temporary 
> storage is properly hooked up.  
> 
> My setup dies with an unhandled exception during startup with a
> ConnectionStateError.  Since it appeared when I moved temporary 
> storage from Zope to ZEO, I suspect the problem is somewhere in 
> that space.
> 
> The traceback appended below is truncated for some reason.  I was 
> running the zope instance with the ``runzope`` program with output 
> appended to the controlling terminal.
> 
> 
> 
> The relevant part of the zope.conf the configuration file is:
> 
> # ZEO client storage:
> #
> <zodb_db main>
>   mount-point /
>   # ZODB cache, in number of objects
>   cache-size 5000
>   <zeoclient>
>     server 192.168.0.92:8301
>     storage 1
>     var $INSTANCE/var
>     # ZEO client cache, in bytes
>     cache-size 20MB
>     # Uncomment to have a persistent disk cache
>     client zeo1
>   </zeoclient>
> </zodb_db>
> #
> # ZEO temporary storage
> #
> <zodb_db temporary>
>     <zeoclient>
>         server 192.168.0.92:8301
>         storage temp
>         name zeostorage
>         var $INSTANCE/var
>     </zeoclient>
>     mount-point /temp_folder
>     container-class Products.TemporaryFolder.TemporaryContainer
> </zodb_db>
> 
> And the relevant portion of the zeo.conf configuration file is:
> 
> <zeo>
>   address 192.168.0.92:8301
>   read-only false
>   invalidation-queue-size 100
>   pid-filename $INSTANCE/var/ZEO.pid
>   # monitor-address PORT
>   # transaction-timeout SECONDS
> </zeo>
> 
> <filestorage 1>
>   path $INSTANCE/var/Data.fs
> </filestorage>
> 
> # temporary storage has to be ZEO side
> %import tempstorage
> <temporarystorage temp>
>     name temporary storage for sessioning
> </temporarystorage>
> 
> Running with this configuration, dies with an exception:
> 
> 2005-05-09T23:01:43 INFO(0) ZCS:10522 ClientStorage (pid=10522) created 
> RW/normal for storage: '1'
> ------
> 2005-05-09T23:01:43 INFO(0) 
> ZEC:/opt2/zope/zinstances/leibnitz/var/c1-zeo1-0.zec ClientCache: 
> storage='1', size=20971520; 
> file[0]='/opt2/zope/zinstances/leibnitz/var/c1-zeo1-0.zec'
> ------
> 2005-05-09T23:01:43 INFO(0) ZCS:10522 Testing connection 
> <ManagedClientConnection ('192.168.0.92', 8301)>
> ------
> 2005-05-09T23:01:43 INFO(0) zrpc-conn(C):192.168.0.92:8301 received 
> handshake 'Z201'
> ------
> 2005-05-09T23:01:43 INFO(0) ZCS:10522 Server authentication protocol None
> ------
> 2005-05-09T23:01:43 INFO(0) ZCS:10522 Connected to storage: ('x-epaul', 
> 8301)
> ------
> 2005-05-09T23:01:43 INFO(0) ZCS:10522 Verifying cache
> ------
> 2005-05-09T23:01:43 INFO(0) ZCS:10522 Waiting for cache verification to 
> finish
> ------
> 2005-05-09T23:01:43 INFO(0) ZCS:10522 Waiting for cache verification to 
> finish
> ------
> 2005-05-09T23:01:43 INFO(0) ZCS:10522 endVerify finishing
> ------
> 2005-05-09T23:01:43 INFO(0) ZCS:10522 endVerify finished
> ------
> 2005-05-09T23:01:43 INFO(0) ZODB Opening database for mounting: 
> '1087156928_1109278350.209647'
> ------
> 2005-05-09T23:01:43 INFO(0) ZODB Mounted database 
> '1087156928_1109278350.209647' at /temp_folder
> ------
> 2005-05-09T23:01:43 INFO(0) Zope Ready to handle requests
> 
> Unhandled exception in thread started by <class 
> ZServer.PubCore.ZServerPublisher.ZServerPublisher at 0x40467d4c>
> Traceback (most recent call last):
>   File 
> "/usr/local/src/zope/Zope2.7/lib/python/ZServer/PubCore/ZServerPublisher.py", 
> line 23, in __init__
>     response=response)
>   File "/opt2/zope/zproducts/standard/ZopeProfiler/MonkeyPatcher.py", line 
> 35, in __call__
>     return self._function(*args,**kw)
>   File "/opt2/zope/zproducts/standard/ZopeProfiler/ZopeProfiler.py", line 
> 335, in _profilePublishModule
>     _hookApplicationManager()
>   File "/opt2/zope/zproducts/standard/ZopeProfiler/ZopeProfiler.py", line 
> 383, in _hookApplicationManager
>     R._p_jar.close()
>   File 
> "/usr/local/src/zope/Zope2.7/lib/python/Products/ZODBMountPoint/Mount.py", 
> line 210, in close
>     self._real_close()
>   File "/usr/local/src/zope/Zope2.7/lib/python/ZODB/Connection.py", line 
> 306, in close
>     raise ConnectionStateError("Cannot close a connection joined to "
> ZODB.POSException.ConnectionStateError: Cannot close a connection joined 
> to a transaction
> 
> 
> While the ZEO log shows
> 
> 2005-05-09T22:46:35 INFO(0) ZD:10284 daemonizing the process
> ------
> 2005-05-09T22:46:35 INFO(0) ZD:10284 set current directory: 
> '/opt2/zope/zeoinstances/leibnitz'
> ------
> 2005-05-09T22:46:35 INFO(0) ZD:10284 daemon manager started
> ------
> 2005-05-09T22:46:35 INFO(0) ZD:10284 spawned process pid=10285
> ------
> 2005-05-09T22:46:36 INFO(0) RUNSVR created PID file 
> '/opt2/zope/zeoinstances/leibnitz/var/ZEO.pid'
> ------
> 2005-05-09T22:46:36 INFO(0) RUNSVR opening storage '1' using FileStorage
> ------
> 2005-05-09T22:46:36 INFO(0) RUNSVR opening storage 'temp' using 
> TemporaryStorage
> ------
> 2005-05-09T22:46:36 INFO(0) ZSS:10285 StorageServer created RW with 
> storages: 1:RW:/opt2/zope/zeoinstances/leibnitz/var/Data.fs, 
> temp:RW:temporary storage for sessioning
> ------
> 2005-05-09T22:46:36 INFO(0) zrpc:10285 listening on ('192.168.0.92', 8301)
> ------
> 2005-05-09T23:01:43 INFO(0) ZSS:10285 new connection ('192.168.0.92', 
> 57425): <ManagedServerConnection ('192.168.0.92', 57425)>
> ------
> 2005-05-09T23:01:43 INFO(0) zrpc-conn(S):192.168.0.92:57425 received 
> handshake 'Z201'
> ------
> 2005-05-09T23:07:20 INFO(0) ZSS:10285/192.168.0.92:57425 disconnected
> 
> 
> _______________________________________________
> Zope maillist  -  Zope at 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 )
> 
-- 
Chris McDonough <chrism at plope.com>



More information about the Zope mailing list