Re: [Zope] ZEO and session variables.

2005-05-10 Thread Dennis Allison
That seems to have been the problem.  The ZopeProfiler version I was using 
does not work with Zope2.7 although Dieter has a version (1.4) that works 
with Zope2.7.3, I was not using it.  I also suspect there may be a problem 
with multiheaded Zope/ZEO configurations.

On Tue, 10 May 2005, Chris McDonough wrote:

> 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:
> > #
> > 
> >   mount-point /
> >   # ZODB cache, in number of objects
> >   cache-size 5000
> >   
> > 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
> >   
> > 
> > #
> > # ZEO temporary storage
> > #
> > 
> > 
> > server 192.168.0.92:8301
> > storage temp
> > name zeostorage
> > var $INSTANCE/var
> > 
> > mount-point /temp_folder
> > container-class Products.TemporaryFolder.TemporaryContainer
> > 
> > 
> > And the relevant portion of the zeo.conf configuration file is:
> > 
> > 
> >   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
> > 
> > 
> > 
> >   path $INSTANCE/var/Data.fs
> > 
> > 
> > # temporary storage has to be ZEO side
> > %import tempstorage
> > 
> > name temporary storage for sessioning
> > 
> > 
> > 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 
> > 
> > --
> > 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  > 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 _hookApplicationMana

Re: [Zope] ZEO and session variables.

2005-05-10 Thread Chris McDonough
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:
> #
> 
>   mount-point /
>   # ZODB cache, in number of objects
>   cache-size 5000
>   
> 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
>   
> 
> #
> # ZEO temporary storage
> #
> 
> 
> server 192.168.0.92:8301
> storage temp
> name zeostorage
> var $INSTANCE/var
> 
> mount-point /temp_folder
> container-class Products.TemporaryFolder.TemporaryContainer
> 
> 
> And the relevant portion of the zeo.conf configuration file is:
> 
> 
>   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
> 
> 
> 
>   path $INSTANCE/var/Data.fs
> 
> 
> # temporary storage has to be ZEO side
> %import tempstorage
> 
> name temporary storage for sessioning
> 
> 
> 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 
> 
> --
> 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  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: 
> '/