[Zope] Upgrade woes: BTreeFolder --> BTreeFolder2

Ken Ara feedreader at yahoo.com
Thu May 3 11:56:37 EDT 2007


I have a couple of outstanding issues following an
otherwise successful upgrade from Zope 2.7.4 to
2.10.3-final.

One key application used the old DocumentLibrary
product
(http://www.zope.org/Members/Kaivo/DocumentLibrary). I
have since reimplemented most of the functionality and
migrated out the content, but I am unable to delete
the old instances of the 'DocumentStore' class. This
class is based on the old BTreeFolder which, as far as
I can tell, cannot be be used in current versions of
Zope. 

Starting Zope with the old BTreeFolder fails:

Traceback (most recent call last):
  File
"/usr/local/zope/lib/python/OFS/Application.py", line
703, in import_product
    product=__import__(pname, global_dict,
global_dict, silly)
  File
"/usr/local/zope/client0/Products/BTreeFolder/__init__.py",
line 89, in ?
    import BTreeFolder
  File
"/usr/local/zope/client0/Products/BTreeFolder/BTreeFolder.py",
line 91, in ?
    from BTree import BTree
ImportError: No module named BTree

Swapping in BTreeFolder2 allowed me to access existing
instances of DocumentLibrary, however attempting to
delete the old instances of DocumentStore fails with
the following error:

Traceback (innermost last):
  Module ZPublisher.Publish, line 119, in publish
  Module ZPublisher.mapply, line 88, in mapply
  Module ZPublisher.Publish, line 42, in call_object
  Module OFS.ObjectManager, line 524, in
manage_delObjects
  Module OFS.ObjectManager, line 379, in _delObject
  Module zope.event, line 23, in notify
  Module zope.component.event, line 26, in dispatch
  Module zope.component._api, line 130, in subscribers
  Module zope.component.registry, line 290, in
subscribers
  Module zope.interface.adapter, line 535, in
subscribers
  Module zope.component.event, line 33, in
objectEventNotify
  Module zope.component._api, line 130, in subscribers
  Module zope.component.registry, line 290, in
subscribers
  Module zope.interface.adapter, line 535, in
subscribers
  Module OFS.subscribers, line 108, in
dispatchObjectWillBeMovedEvent
  Module zope.app.container.contained, line 181, in
dispatchToSublocations
  Module OFS.subscribers, line 88, in sublocations
  Module Products.BTreeFolder2.BTreeFolder2, line 368,
in objectValues
  Module Products.BTreeFolder2.BTreeFolder2, line 347,
in objectIds
AttributeError: 'NoneType' object has no attribute
'keys'

If I could install the original BTreeFolder in Zope
2.10.3 - if only briefly - would that enable me to
delete the old instances? Other ideas?

Thanks,
Ken

__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 


More information about the Zope mailing list