当我在 Plone 3.0.6 中对来自 Plone 2.1.3 的 Data.fs 执行 portal_migration 时,迁移失败并出现 TypeEror:
Attempting to upgrade from: 2.5-alpha1
Upgrade aborted
Error type: exceptions.TypeError
Error value: unsubscriptable object
File "/home/applinet/local/carrieretijger/plone30/plone/carrieretijger_plone30/Products/CMFPlone/MigrationTool.py", line 210, in upgrade newv, msgs = self._upgrade(newv)
File "/home/applinet/local/carrieretijger/plone30/plone/carrieretijger_plone30/Products/CMFPlone/MigrationTool.py", line 321, in _upgrade res = function(self.aq_parent)
File "/home/applinet/local/carrieretijger/plone30/plone/carrieretijger_plone30/Products/CMFPlone/migrations/v2_5/alphas.py", line 46, in alpha1_alpha2 installPlonePAS(portal, out)
File "/home/applinet/local/carrieretijger/plone30/plone/carrieretijger_plone30/Products/CMFPlone/migrations/v2_5/alphas.py", line 66, in installPlonePAS installOrReinstallProduct(portal, 'PlonePAS', out)
File "/home/applinet/local/carrieretijger/plone30/plone/carrieretijger_plone30/Products/CMFPlone/migrations/migration_util.py", line 85, in installOrReinstallProduct qi.installProduct(product_name, hidden=hidden)
File "/home/applinet/local/carrieretijger/plone30/plone/carrieretijger_plone30/Products/CMFQuickInstallerTool/QuickInstallerTool.py", line 367, in installProduct res=install(portal)
File "/home/applinet/local/carrieretijger/plone30/plone/installation/lib/python/Products/ExternalMethod/ExternalMethod.py", line 231, in __call__ try: return f(*args, **kw)
File "/home/applinet/local/carrieretijger/plone30/plone/carrieretijger_plone30/Products/PlonePAS/Extensions/Install.py", line 906, in install restoreUserData(portal, out, userdata)
File "/home/applinet/local/carrieretijger/plone30/plone/carrieretijger_plone30/Products/PlonePAS/Extensions/Install.py", line 355, in restoreUserData mtool.addMember(*u[:5])
File "/home/applinet/local/carrieretijger/plone30/plone/carrieretijger_plone30/Products/PlonePAS/tools/membership.py", line 66, in addMember acl_users._doAddUser(id, password, roles, domains)
File "/home/applinet/local/carrieretijger/plone30/plone/carrieretijger_plone30/Products/PlonePAS/pas.py", line 49, in _doAddUser retval = _old_doAddUser(self, login, password, roles, domains)
File "/home/applinet/local/carrieretijger/plone30/plone/carrieretijger_plone30/Products/PluggableAuthService/PluggableAuthService.py", line 941, in _doAddUser if useradder.doAddUser( login, password ):
File "/home/applinet/local/carrieretijger/plone30/plone/carrieretijger_plone30/Products/PluggableAuthService/plugins/ZODBUserManager.py", line 221, in doAddUser self.addUser( login, login, password )
File "/home/applinet/local/carrieretijger/plone30/plone/carrieretijger_plone30/Products/PlonePAS/plugins/user.py", line 68, in addUser if not AuthEncoding.is_encrypted(password):
File "/home/applinet/local/carrieretijger/plone30/plone/installation/lib/python/AccessControl/AuthEncoding.py", line 161, in is_encrypted if pw[:lp] == prefix:
End of upgrade path, migration has finished
The upgrade path did NOT reach current version
Migration has failed
什么可能导致这种情况,我该如何解决?