This worked perfectly. Dieter, many thanks! I have fallen into a few pitfalls along the upgrade path. Now I understand why so many are still using Zope 2.7 and even earlier - it is scary. I tried to prepare for the upgrade but did not fully appreciate the risks. There are 'changes lists' but no compendium of gotchas for upgraders. By learning the use of zopectl debug I now understand that I need to fix code containing 'get_transaction'... And one important project dependent on Localizer is still broken. We are not out of the woods yet! Ken --- Dieter Maurer wrote:
Ken Ara wrote at 2007-5-7 13:47 -0700:
... objectItems * Module OFS.ObjectManager, line 290, in _getOb
AttributeError: Documents_catalog
"ObjectManager" has 2 references to its children: one in "_objects" and one as a direct attribute. You deleted the direct attribute but forget to delete the reference in "_objects", thus making the "ObjectManager" data structure inconsistent.
The easiest way to fix this is something like:
from OFS.DTMLMethod import DTMLMethod object_manager.Documents_catalog = DTMLMethod() object_manager._delObject('Documents_catalog')
Then commit.
This is also the easiest way to get rid of broken objects (as it avoids the inconsistencies in the first place).
-- Dieter
____________________________________________________________________________________ Be a PS3 game guru. Get your game face on with the latest PS3 news and previews at Yahoo! Games. http://videogames.yahoo.com/platform?platform=120121