[Zope] Refresh causes spinning Zope (bug with my Product?)

John Ziniti jziniti at speakeasy.net
Wed Mar 31 11:12:57 EST 2004


I am runnning Zope-2.7.0/Python-2.3.3/ZEO on Linux and have been
having problems with refreshing a Product that I wrote in-house.
Upon refreshing, Zope stops responding, and Apache/FastCGI
eventually times out waiting for a response.  This was also
a problem with Zope-2.6.4/ZEO but not Zope-2.4.3/ZEO; but the
machines and custom-product code also changed between 2.4.3
and 2.6.4.

Following the instructions at:

http://www.zope.org/Members/4am/debugspinningzope

I was able to learn that the Zope threads look like:

(gdb) info threads
   6 Thread 40965 (LWP 29363)  0x080d1e77 in visit_decref 
(op=0x503c1b54, data=0x0) at Modules/gcmodule.c:225
   5 Thread 32772 (LWP 29362)  0x42028d69 in sigsuspend () from 
/lib/i686/libc.so.6
   4 Thread 24579 (LWP 29361)  0x42028d69 in sigsuspend () from 
/lib/i686/libc.so.6
   3 Thread 16386 (LWP 29360)  0x42028d69 in sigsuspend () from 
/lib/i686/libc.so.6
   2 Thread 16385 (LWP 29358)  0x420d224b in poll () from 
/lib/i686/libc.so.6
   1 Thread 8192 (LWP 29312)  0x420d3b2e in select () from 
/lib/i686/libc.so.6

The traceback is at the bottom of this email.  Note the mention of
the SNPSet Product.  This is the product that we wrote and that
was refreshed.  I was suspicious of the mention of setstate, so
I removed the Product's __setstate__ method, but this did not
help.

Any advice appreciated.  Traceback follows:

File 
"/global/nfs-zope/data/Zope-2.7.0/lib/python/ZServer/PubCore/ZServerPublisher.py", 
line 23, in __init__
     response=response)
   File 
"/global/nfs-zope/data/Zope-2.7.0/lib/python/ZPublisher/Publish.py", 
line 372, in publish_module
     environ, debug, request, response)
   File 
"/global/nfs-zope/data/Zope-2.7.0/lib/python/ZPublisher/Publish.py", 
line 163, in publish_module_standard
     response = publish(request, module_name, after_list, debug=debug)
   File 
"/global/nfs-zope/data/Zope-2.7.0/lib/python/ZPublisher/Publish.py", 
line 100, in publish
     request, bind=1)
   File 
"/global/nfs-zope/data/Zope-2.7.0/lib/python/ZPublisher/mapply.py", line 
88, in mapply
     if debug is not None: return debug(object,args,context)
   File 
"/global/nfs-zope/data/Zope-2.7.0/lib/python/ZPublisher/Publish.py", 
line 40, in call_object
     result=apply(object,args) # Type s<cr> to step into published object.
   File "/global/nfs-zope/data/Zope-2.7.0/lib/python/OFS/DTMLMethod.py", 
line 130, in __call__
     r=apply(HTML.__call__, (self, client, REQUEST), kw)
   File 
"/global/nfs-zope/data/Zope-2.7.0/lib/python/DocumentTemplate/DT_String.py", 
line 474, in __call__
     try: result = render_blocks(self._v_blocks, md)
   File "/global/nfs-zope/data/Zope-2.7.0/lib/python/OFS/DTMLMethod.py", 
line 123, in __call__
     r=apply(HTML.__call__, (self, client, REQUEST), kw)
   File 
"/global/nfs-zope/data/Zope-2.7.0/lib/python/DocumentTemplate/DT_String.py", 
line 474, in __call__
     try: result = render_blocks(self._v_blocks, md)
   File 
"/global/nfs-zope/data/Zope-2.7.0/lib/python/DocumentTemplate/DT_In.py", 
line 626, in renderwob
     sequence=expr(md)
   File 
"/global/nfs-zope/data/Zope-2.7.0/lib/python/DocumentTemplate/DT_Util.py", 
line 201, in eval
     return eval(code, d)
   File "<string>", line 1, in <expression>
   File "/usr/local/zopeinstancehome/Products/SNPSet/SNPSet.py", line 
260, in global_gene_list
     if gene.prettybase_available():
   File 
"/global/nfs-zope/data/Zope-2.7.0/lib/python/ZODB/Connection.py", line 
564, in setstate
     self._set_ghost_state(obj, p)
   File 
"/global/nfs-zope/data/Zope-2.7.0/lib/python/ZODB/Connection.py", line 
603, in _set_ghost_state
     state = unpickler.load()
   File "<string>", line 1, in ?



More information about the Zope mailing list