[Setup] TypeError when migrating from 2.1.1 to 3.0.5

Nikolas Lam nlam87346 at library.usyd.edu.au
Sun Feb 24 11:25:41 UTC 2008


I'm having some difficulty upgrading from version 2.1.1 on an old
FreeBSD box to 3.0.5 on a Centos 5 box. Centos/RHEL 5 provides Plone via
the EPEL (Extra Packages for Enterprise Linux) repository. In this
setup, along with Plone 3.0.5, you get Zope 2.10.5 and Python 2.4.3.

There were some third party products installed, SimpleForum, Plone2PDF
and PloneCaptcha but I've uninstalled them (using the plone quick
installer) before carrying out a database pack via the ZMI, shutting
down zope and copying the Data.fs to the new server.

I started up zope on the new server and went into the ZMI and proceeded
to carry out the migration, however the result is the output below.

*   Starting the migration from version: 2.1.1
* Attempting to upgrade from: 2.1.1
* Registered tools as utilities.
* Removed plone_3rdParty\CMFTopic layer from all skins.
* Migrated old actions to new actions stored in portal_actions.
* Added rename contentmenu action to actions tool.
* Added se-highlight.js to portal_javascipt
* Removing workflow from Discussion Item
* Added must_change_password property to member data
* Upgrade to: 2.1.2-rc1, completed
* Attempting to upgrade from: 2.1.2-rc1
* Upgrade to: 2.1.2-rc2, completed
* Attempting to upgrade from: 2.1.2-rc2
* Upgrade aborted
* Error type: exceptions.TypeError
* Error value: attempt to wrap extension method using an object that is
not an extension class instance.
* File "/usr/lib/zope/lib/python/Products/CMFPlone/MigrationTool.py",
line 210, in upgrade newv, msgs = self._upgrade(newv)
* File "/usr/lib/zope/lib/python/Products/CMFPlone/MigrationTool.py",
line 321, in _upgrade res = function(self.aq_parent)
* File
"/usr/lib/zope/lib/python/Products/CMFPlone/migrations/v2_1/two11_two12.py", line 53, in two12rc2_two12 registerToolsAsUtilities(portal, out)
* File
line 746, in registerToolsAsUtilities if sm.queryUtility(reg[1]) is
* File "/usr/lib/zope/lib/python/zope/component/registry.py", line 132,
in queryUtility return self.utilities.lookup((), provided, name,
* File "/usr/lib/zope/lib/python/five/localsitemanager/registry.py",
line 39, in _uncached_lookup result = _wrap(result, registry)
* File "/usr/lib/zope/lib/python/five/localsitemanager/registry.py",
line 146, in _wrap comp = base.__of__(Acquisition.aq_parent(parent))
* End of upgrade path, migration has finished
* The upgrade path did NOT reach current version
* Migration has failed

Through the ZMI, I could see that there was a "broken" SimpleForum
object. I'm not too worried if I lose old forums as there wasn't much in
there, so I deleted the object and carried out a database pack. However,
when I try the migrate again I get the same error.

I've found this relatively recent post with a similar error:


I thought I might also try what Alexander Limi suggested and cut and
paste the objects into a new Plone instance, but I'm not sure about
which objects take. I'd prefer not to have to do this, but if there's no
way of getting the automated migration to happen I'll give it a go.


Nik Lam

More information about the Setup mailing list