[Zope] ZEO ClientDisconnected error

Cyrille Bonnet cyrille at 3months.com
Mon May 1 20:24:51 EDT 2006


Hi there,

One of my clients is using Plone on Solaris 9. We have set up one ZEO 
client on a Solaris machine and a ZEO server on another Solaris machine 
(for testing purposes only at this stage).

Performance is great but every morning, the first hit to the Plone site 
returns a ClientDisconnected error (see full error log below). It looks 
like the socket on the server gets corrupted or something.

When the error occurs, the server is non-responsive for a while 
(anywhere between 10 sec and 2 minutes) and then eventually the server 
responds.

Has anybody seen that before? Is it Zope related or should I look in 
other directions?

Researching Zope on Solaris, I read somewhere (can't remember where now) 
that Solaris doesn't like long-running processes too much (well, the 
Zope process, for instance). Could it be the culprit here?

Any advise or pointer welcome.

Cyrille

(in the logs below, "appserv05" is the ZEO client, "pehi" is the ZEO server)

 From event.log:

=========================================================================
ERROR ZEO.zrpc.Connection(C) (pehi.myclient.govt.nz:8100) Error caught 
in asyncore raise socket.error, why error: (9, 'Bad file descriptor') 
2006-04-28T09:09:52
=========================================================================

 From the error log:

=========================================================================
Time
2006-04-28 09:09
User Name
admin (admin)
Request URL
http://plone.appserv05.myclient.govt.nz/front-page/document_view
Exception Type
ClientDisconnected
Exception Value
Traceback (innermost last):
•    Module ZPublisher.Publish, line 114, in publish
•    Module ZPublisher.mapply, line 88, in mapply
•    Module ZPublisher.Publish, line 40, in call_object
•    Module Shared.DC.Scripts.Bindings, line 311, in __call__
•    Module Shared.DC.Scripts.Bindings, line 348, in _bindAndExec
•    Module Products.CMFCore.FSPageTemplate, line 195, in _exec
•    Module Products.CMFCore.FSPageTemplate, line 134, in pt_render
•    Module Products.PageTemplates.PageTemplate, line 104, in pt_render
<FSPageTemplate at /myclient/Plone/document_view used for 
/myclient/Plone/front-page>
•    Module TAL.TALInterpreter, line 206, in __call__
•    Module TAL.TALInterpreter, line 250, in interpret
•    Module TAL.TALInterpreter, line 711, in do_useMacro
•    Module TAL.TALInterpreter, line 250, in interpret
•    Module TAL.TALInterpreter, line 426, in do_optTag_tal
•    Module TAL.TALInterpreter, line 411, in do_optTag
•    Module TAL.TALInterpreter, line 406, in no_tag
•    Module TAL.TALInterpreter, line 250, in interpret
•    Module TAL.TALInterpreter, line 711, in do_useMacro
•    Module TAL.TALInterpreter, line 250, in interpret
•    Module TAL.TALInterpreter, line 481, in do_setGlobal_tal
•    Module Products.PageTemplates.TALES, line 221, in evaluate
URL: file:CMFPlone/skins/plone_templates/global_defines.pt
Line 3, Column 0
Expression: <PythonExpr language or here.Language() or default_language>
Names:
•    {'container': <PloneSite at /myclient/Plone>,
•     'context': <ATDocument at /myclient/Plone/front-page>,
•     'default': <Products.PageTemplates.TALES.Default instance at 
0xacaf58>,
•     'here': <ATDocument at /myclient/Plone/front-page>,
•     'loop': <Products.PageTemplates.TALES.SafeMapping object at 
0x22027d8>,
•     'modules': 
<Products.PageTemplates.ZRPythonExpr._SecureModuleImporter instance at 
0xabd5d0>,
•     'nothing': None,
•     'options': {'args': ()},
•     'repeat': <Products.PageTemplates.TALES.SafeMapping object at 
0x22027d8>,
•     'request': <HTTPRequest, 
URL=http://plone.appserv05.myclient.govt.nz/front-page/document_view>,
•     'root': <Application at >,
•     'template': <FSPageTemplate at /myclient/Plone/document_view used 
for /myclient/Plone/front-page>,
•     'traverse_subpath': [],
  'user': admin}
•    Module Products.PageTemplates.ZRPythonExpr, line 47, in __call__
__traceback_info__: language or here.Language() or default_language
•    Module Python expression "language or here.Language() or 
default_language", line 1, in <expression>
•    Module Products.Archetypes.ClassGen, line 58, in generatedAccessor
•    Module Products.Archetypes.Field, line 768, in get
•    Module Products.Archetypes.Field, line 637, in get
__traceback_info__: ('language', <ATDocument at 
/myclient/Plone/front-page>, {'field': <Field language(string:rw)>, 
'schema': <Products.Archetypes.Schema.Schema object at 0x171a330>})
•    Module Products.Archetypes.Storage, line 175, in get
•    Module UserDict, line 19, in __getitem__
•    Module ZODB.Connection, line 704, in setstate
•    Module ZODB.Connection, line 760, in _setstate
•    Module ZODB.serialize, line 495, in setGhostState
•    Module ZODB.serialize, line 488, in getState
•    Module ZODB.serialize, line 436, in _persistent_load
•    Module ZODB.Connection, line 207, in get
•    Module ZEO.ClientStorage, line 746, in load
•    Module ZEO.ClientStorage, line 769, in loadEx
•    Module ZEO.ClientStorage, line 79, in __getattr__
ClientDisconnected
Display traceback as text
REQUEST
form

cookies
SaneID    '210.55.131.118-1146009986253'
lazy items
SESSION    <bound method SessionDataManager.getSessionData of 
<SessionDataManager at /session_data_manager>>
other
_oai_cache    {56460528: <Products.CMFCore.ActionInformation.oai 
instance at 0x630cb48>}
TraversalRequestNameStack    []
AUTHENTICATED_USER    admin
URL    'http://plone.appserv05.myclient.govt.nz/front-page/document_view'
VirtualRootPhysicalPath    ('', 'myclient', 'Plone')
_pts_catalog_names_plone_en-us    ['PloneTranslations.i18n-plone-en.po', 
'PloneTranslations.i18n-archetypes-en.po']
VIRTUAL_URL    'http://plone.appserv05.myclient.govt.nz/'
SERVER_URL    'http://plone.appserv05.myclient.govt.nz'
AUTHENTICATION_PATH    'myclient/Plone'
traverse_subpath    []
_ec_cache    {56460528: <Products.PageTemplates.TALES.Context instance 
at 0x4b05fa8>}
PUBLISHED    <FSPageTemplate at /myclient/Plone/document_view used for 
/myclient/Plone/front-page>
_pts_negotiator_cache_language    {('mi', 'my', 'da', 'sm', 'fr', 'cs', 
'hy', 'pt-br', 'hi', 'bn', 'nl', 'es', 'sl', 'sq', 'zh-tw', 'ar', 'ca', 
'pt', 'uk', 'eu', 'zh-cn', 'ta', 'sr', 'bg', 'sv', 'el', 'ro', 'it', 
'nn', 'id', 'ka', 'sk', 'et', 'ru', 'eo', 'zh', 'hu', 'no', 'de', 'ja', 
'fi', 'to', 'sr-latn', 'fa', 'he', 'hr', 'lt', 'af', 'ko', 'pl', 'en', 
'te', 'zh-hk', 'kn', 'tr', 'vi', 'es-hn', 'ca-es', 'es-co', 'en-bz', 
'fr-ch', 'es-gt', 'en-nz', 'es-uy', 'en-tt', 'zh-mo', 'es-cr', 'en-jm', 
'tr-tr', 'nn-no', 'no-nyn', 'ko-kr', 'fr-be', 'fr-lu', 'fr-mc', 'de-de', 
'es-bo', 'en-ie', 'de-lu', 'es-do', 'es-pe', 'sv-fi', 'zh-cn', 'es-sv', 
'fr-fr', 'en-us', 'it-it', 'en-ca', 'nl-be', 'en-zw', 'nb', 'it-ch', 
'es-ar', 'es-ec', 'no-bok', 'es-mx', 'es-es', 'ja-jp', 'nb-no', 'en-au', 
'en-ph', 'es-us', 'de-ch', 'es-py', 'ca-fr', 'en-gb', 'de-at', 'eu-es', 
'zh-hk', 'es-ve', 'ca-ad', 'es-pa', 'en-za', 'es-cl', 'de-li', 'zh', 
'ca-it', 'es-pr', 'zh-sg', 'es-ni', 'fr-ca'): 'en-us'}
_pts_is_rtl    False
ACTUAL_URL    'http://plone.appserv05.myclient.govt.nz//'
VIRTUAL_URL_PARTS    ('http://plone.appserv05.myclient.govt.nz', '')
URL0    http://plone.appserv05.myclient.govt.nz/front-page/document_view
URL1    http://plone.appserv05.myclient.govt.nz/front-page
URL2    http://plone.appserv05.myclient.govt.nz
BASE0    http://plone.appserv05.myclient.govt.nz
BASE1    http://plone.appserv05.myclient.govt.nz
BASE2    http://plone.appserv05.myclient.govt.nz/front-page
BASE3    http://plone.appserv05.myclient.govt.nz/front-page/document_view
environ
HTTP_X_FORWARDED_SERVER    'plone.appserv05.myclient.govt.nz'
HTTP_COOKIE    'SaneID=210.55.131.118-1146009986253; 
__ac="YWRtaW46YWRtaW4%3D"'
HTTP_ACCEPT_LANGUAGE    'en-us,en;q=0.5'
SERVER_SOFTWARE    'Zope/(Zope 2.8.6-final, python 2.3.5, sunos5) 
ZServer/1.1 Plone/Unknown'
SCRIPT_NAME    ''
REQUEST_METHOD    'GET'
PATH_INFO 
'/VirtualHostBase/http/plone.appserv05.myclient.govt.nz:80/myclient/Plone/VirtualHostRoot/'
SERVER_PROTOCOL    'HTTP/1.1'
channel.creation_time    1146171825
CONNECTION_TYPE    'close'
HTTP_ACCEPT_CHARSET    'ISO-8859-1,utf-8;q=0.7,*;q=0.7'
HTTP_USER_AGENT    'Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; 
rv:1.8.0.2) Gecko/20060308 Firefox/1.5.0.2'
SERVER_NAME    '0.0.0.0'
REMOTE_ADDR    '127.0.0.1'
PATH_TRANSLATED 
'/VirtualHostBase/http/plone.appserv05.myclient.govt.nz:80/myclient/Plone/VirtualHostRoot'
SERVER_PORT    '8081'
HTTP_HOST    '127.0.0.1:8081'
HTTP_ACCEPT 
'text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5'
GATEWAY_INTERFACE    'CGI/1.1'
HTTP_X_FORWARDED_FOR    '210.55.131.118'
HTTP_X_FORWARDED_HOST    'plone.appserv05.myclient.govt.nz'
HTTP_ACCEPT_ENCODING    'gzip,deflate'
=========================================================================



More information about the Zope mailing list