On Fri, Apr 04, 2008 at 08:36:30PM +0200, Adam GROSZER wrote: > Hello, > > We're having here a problem in a high load situation with quite long > running (10-20 secs) transactions. > The app uses mySQL extensively, and just a bare minimum of ZODB to > store the root and registrations. > I think that there's lower level error concerning ZODB, but in > zope.rdb, in queryForResults, line 381: > > except Exception, error: > > eats the traceback. > > This smells like > https://bugs.launchpad.net/zope3/+bug/98331 > > So I propose to move that except further down the stack, where it will > really catch just DB errors. > > Or any better idea is welcome.
This has come up previously: http://www.nabble.com/zope.rdb-error-and-zope.publisher-error-td10199840.html > > ------------ > Module zope.publisher.publish, line 133, in publish > result = publication.callObject(request, obj) > Module zope.app.publication.zopepublication, line 161, in callObject > return mapply(ob, request.getPositionalArguments(), request) > Module zope.publisher.publish, line 108, in mapply > return debug_call(obj, args) > __traceback_info__: <security proxied > zope.app.publisher.browser.viewmeta.ManagementViewSelector instance at > 0x48822a0c> > Module zope.publisher.publish, line 114, in debug_call > return obj(*args) > Module zope.app.publisher.browser.managementviewselector, line 35, in __call__ > item = getFirstMenuItem('zmi_views', self.context, self.request) > Module zope.app.publisher.browser.menu, line 181, in getFirstMenuItem > items = getMenu(id, object, request) > Module zope.app.publisher.browser.menu, line 176, in getMenu > return menu.getMenuItems(object, request) > Module zope.app.publisher.browser.menu, line 53, in getMenuItems > if item.available(): > Module zope.app.publisher.browser.menu, line 113, in available > view = traverser.traverseRelativeURL( > Module zope.app.publication.browser, line 47, in traverseRelativeURL > ob = self.traversePath(request, ob, path) > Module zope.app.publication.publicationtraverse, line 95, in traversePath > ob = self.traverseName(request, ob, name) > Module zope.app.publication.publicationtraverse, line 61, in traverseName > ob2 = adapter.publishTraverse(request, nm) > Module zope.app.container.traversal, line 72, in publishTraverse > return self.context[name] > Module ....container, line 65, in __getitem__ > if not self.__contains__(key): > Module ....container, line 111, in __contains__ > results = queryForResults(db,query) > Module zope.rdb, line 384, in queryForResults > raise DatabaseException(str(error)) > DatabaseException: Shouldn't load state for 0x50 when the connection is closed > > -- > Best regards, > Adam GROSZER mailto:[EMAIL PROTECTED] > -- > Quote of the day: > Major Premise: Sixty men can do a piece of work sixty times as quickly as one > man. > Minor Premise: One man can dig a posthole in sixty seconds; > Conclusion: Sixty men can dig a posthole in one second. > > _______________________________________________ > Zope-Dev maillist - Zope-Dev@zope.org > http://mail.zope.org/mailman/listinfo/zope-dev > ** No cross posts or HTML encoding! ** > (Related lists - > http://mail.zope.org/mailman/listinfo/zope-announce > http://mail.zope.org/mailman/listinfo/zope ) -- Brian Sutherland _______________________________________________ Zope-Dev maillist - Zope-Dev@zope.org http://mail.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope )