[Zope-dev] Transcience getId() KeyError

Chris McDonough chrism@zope.com
18 Feb 2003 18:22:41 -0500


I think BTrees still have some bugs.  2.6.1 has a workaround for this
very issue, or you can just replace the Transience package itself from
CVS.

On Tue, 2003-02-18 at 17:01, Alan Runyan wrote:
> Using Zope2.6.0 final on FreeBSD; Python 2.1.3 this is at iMeme.
> Question: I thought I read Tim squashed most (all?) of the known
> bugs in BTree's in 2.6.  Is this true?  Has anyone seen this?
> 
> in a Product i'm using/wrote... we try to get the SESSION.getId() and
> get a KeyError.  Here is the traceback.  I would appreciate
> any feedback.  Many thanks.
> 
> # gc the stale buckets at the "beginning" of _data ("garbage collect")
>         # iterate over the keys in data that have no minimum value and
>         # a maximum value of delete_end (note: ordered set)
>         # XXX- fixme.  range search doesn't always work (btrees bug)
> 
> I believe it is the line after this that is throwing the exception
> for k in list(data.keys(None, delete_end)):
> 
> here was the exception:
> 
> Site Error
> 
> An error was encountered while publishing this resource.
> 
> KeyError
> Sorry, a site error occurred.
> 
> 
> Traceback (innermost last):
> 
> *    Module ZPublisher.Publish, line 150, in publish_module
> *    Module ZPublisher.Publish, line 114, in publish
> *    Module Zope, line 171, in zpublisher_exception_hook
> *    Module ZPublisher.Publish, line 98, in publish
> *    Module ZPublisher.mapply, line 88, in mapply
> *    Module ZPublisher.Publish, line 39, in call_object
> *    Module Shared.DC.Scripts.Bindings, line 252, in __call__
> *    Module Shared.DC.Scripts.Bindings, line 283, in _bindAndExec
> *    Module Products.PageTemplates.ZopePageTemplate, line 228, in _exec
> *    Module Products.PageTemplates.PageTemplate, line 95, in pt_render
> <ZopePageTemplate at /cmf/public_website/index_html>
> *    Module TAL.TALInterpreter, line 186, in __call__
> *    Module TAL.TALInterpreter, line 230, in interpret
> *    Module TAL.TALInterpreter, line 689, in do_useMacro
> *    Module TAL.TALInterpreter, line 230, in interpret
> *    Module TAL.TALInterpreter, line 459, in do_setLocal_tal
> *    Module Products.PageTemplates.TALES, line 217, in evaluate
> URL: /cmf/main_template
> Line 104, Column 4
> Expression: standard:'here/portal_commerce/getShoppingCartFor'
> Names:
> 
> {'container': <PloneFolder instance at 9372b00>,
>  'default': <Products.PageTemplates.TALES.Default instance at 0x88bf9ec>,
>  'here': <PloneFolder instance at 9372b00>,
>  'loop': <SafeMapping instance at 905c0d0>,
>  'modules': <Products.PageTemplates.ZRPythonExpr._SecureModuleImporter
> instance at 0x88b392c>,
>  'nothing': None,
>  'options': {'args': ()},
>  'repeat': <SafeMapping instance at 905c0d0>,
>  'request': <HTTPRequest, URL=http://www.dstoys.com/index_html>,
>  'root': <Application instance at 903d080>,
>  'template': <ZopePageTemplate at /cmf/public_website/index_html>,
>  'traverse_subpath': [],
>  'user': Anonymous User}
> *    Module Products.PageTemplates.Expressions, line 206, in __call__
> *    Module Products.PageTemplates.Expressions, line 201, in _eval
> *    Module Products.PageTemplates.Expressions, line 108, in render
> *    Module Products.CMFCommerce.CommerceTool, line 260, in
> getShoppingCartFor
> *    Module Products.CMFCommerce.ShoppingCartManagement, line 113, in
> getShoppingCartFor
> *    Module ZPublisher.HTTPRequest, line 1189, in __getattr__
> *    Module ZPublisher.HTTPRequest, line 1149, in get
> *    Module Products.Sessions.SessionDataManager, line 93, in getSessionData
> *    Module Products.Sessions.SessionDataManager, line 180, in
> _getSessionDataObject
> *    Module Products.Transience.Transience, line 175, in new_or_existing
> *    Module Products.Transience.Transience, line 786, in get
> *    Module Products.Transience.Transience, line 599, in _getCurrentBucket
> *    Module Products.Transience.Transience, line 688, in _housekeep
> 
> KeyError: 1045356900 (Also, an error occurred while attempting to render the
> standard error message.)
> 
> 
> _______________________________________________
> 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 )