Hello,

Within zope2 (2.10.6) I can't load the pickle containing the
persistentregistry any more because I removed a product that has
persistent adatpers. So I am having a state that looks like this:

{'LookupClass': <class
'five.localsitemanager.registry.FiveVerifyingAdapterLookup'>,
 '__bases__': (<zope.component.globalregistry.GlobalAdapterRegistry
object at 0x7f38ad2f6bd0>,),
 '__parent__': <PersistentComponents /m00019/prsi>,
 '_adapters': [{<InterfaceClass
Products.ATContentTypes.interface.interfaces.IATCTTool>: {u'': <ATCTTool
at portal_atct>},
                <InterfaceClass
Products.CMFActionIcons.interfaces._tools.IActionIconsTool>: {u'':
<ActionIconsTool at portal_actionicons>},
                <class
'clearwind.arecibo.interfaces.IAreciboConfiguration'>:
{u'Arecibo_config': <AreciboConfiguration at broken>},
                <InterfaceClass
plone.app.i18n.locales.interfaces.IContentLanguages>: {u'':
<ContentLanguages at plone_app_content_languages>},
...]
'_generation': ...,
'_provided': ...,
'_subscribers': ...,
}

Clearly this registry is in bad shape because of the reference to the
broken interface. What are my options to remove the reference within
this pickle ?

Would it be possible disable/remove (before setstate) the broken class
from the registry (with a huge warning) instead of letting the user get
a "AttributeError: type object 'IAreciboConfiguration' has no attribute
'__iro__' exception" later on when the adapter is looked up ?

Thanks in advance,

                Jeff
_______________________________________________
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 )

Reply via email to