Migration Issues, 2.1.4 --> 2.5.2
I'm having an issue migrating from Plone 2.1.4 to 2.5.2. I'm using the
instructions provided in 'Products/remember/cmfmember/README.txt'
With CMFMember and about 200 users on the 2.1.4 site I shutdown the
2.1.4 site and copied the Data.fs over to the new instance. The new
instance has the following:
Python 2.4.4
Zope 2.9.6
Plone 2.5.2
I've also installed CMFMember, membrane, and remember. Also the
'rossp-extensions' branch of 'contentmigrations' as per the README.txt
Once I start the Zope instance I begin the migration. The log file
reports errors, which seem to happen for every user, but it does not
stop the migration. However, at some point the migration does error
out resulting in the following traceback:
==========================
Result of the attempt...
* Dry run selected.
* Starting the migration from version: 2.1.4
* Attempting to upgrade from: 2.1.4
* Installed CMFPlacefulWorkflow.
* Upgrade to: 2.5-alpha1, completed
* Attempting to upgrade from: 2.5-alpha1
* Upgrade aborted
* Error type: exceptions.AttributeError
* Error value: 'NoneType' object has no attribute 'addMember'
* File "/var/www/zope/migration_test/zeocluster/client1/Products/CMFPlone/MigrationTool.py",
line 307, in upgrade newv, msgs = self._upgrade(newv)
* File "/var/www/zope/migration_test/zeocluster/client1/Products/CMFPlone/MigrationTool.py",
line 404, in _upgrade res = function(self.aq_parent)
* File "/var/www/zope/migration_test/zeocluster/client2/Products/CMFPlone/migrations/v2_5/alphas.py",
line 24, in alpha1_alpha2 installPlonePAS(portal, out)
* File "/var/www/zope/migration_test/zeocluster/client1/Products/remember/cmfmember/monkey.py",
line 60, in installPlonePAS result = InstallPlonePAS.install(portal)
* File "/var/www/zope/migration_test/zeocluster/client1/Products/PlonePAS/Extensions/Install.py",
line 844, in install restoreGroupData(portal, out, groupdata,
memberships)
* File "/var/www/zope/migration_test/zeocluster/client1/Products/PlonePAS/Extensions/Install.py",
line 388, in restoreGroupData group.addMember(mid)
* End of upgrade path, migration has finished
* The upgrade path did NOT reach current version
* Migration has failed
* Dry run selected, transaction aborted
=================================
Below is an example of some errors in the logfile as the migration is
going. This error repeats, as I suspect, for every member object.
=================================
2007-02-20T12:38:04 ERROR Archetypes None
Traceback (most recent call last):
File "/var/www/zope/migration_test/zeocluster/client1/Products/Archetypes/BaseObject.py",
line 177, in initializeArchetype
self.edit(**kwargs)
File "/var/www/zope/migration_test/zeocluster/client2/Products/remember/content/member.py",
line 528, in update
triggerAutomaticTransitions(self)
File "/var/www/zope/migration_test/zeocluster/client2/Products/remember/Extensions/workflow.py",
line 25, in triggerAutomaticTransitions
wf_tool.doActionFor(ob, 'trigger')
File "/var/www/zope/migration_test/zeocluster/client1/Products/CMFCore/WorkflowTool.py",
line 300, in doActionFor
return self._invokeWithNotification(
File "/var/www/zope/migration_test/zeocluster/client1/Products/CMFCore/WorkflowTool.py",
line 614, in _invokeWithNotification
res = func(*args, **kw)
File "/var/www/zope/migration_test/zeocluster/client1/Products/DCWorkflow/DCWorkflow.py",
line 291, in doActionFor
self._changeStateOf(ob, tdef, kw)
File "/var/www/zope/migration_test/zeocluster/client1/Products/DCWorkflow/DCWorkflow.py",
line 476, in _changeStateOf
sdef = self._executeTransition(ob, tdef, kwargs)
File "/var/www/zope/migration_test/zeocluster/client1/Products/DCWorkflow/DCWorkflow.py",
line 525, in _executeTransition
script(sci) # May throw an exception.
File "/var/www/zope/migration_test/lib/python/Products/ExternalMethod/ExternalMethod.py",
line 232, in __call__
return f(self.aq_parent.this(), *args, **kw)
File "/var/www/zope/migration_test/zeocluster/client1/Products/remember/Extensions/workflow.py",
line 52, in register
return obj.register()
File "/var/www/zope/migration_test/zeocluster/client2/Products/remember/content/member.py",
line 589, in register
rtool.registeredNotify(self.getUserName())
File "/var/www/zope/migration_test/zeocluster/client1/Products/CMFPlone/RegistrationTool.py",
line 210, in registeredNotify
, email=email
File "/var/www/zope/migration_test/lib/python/Shared/DC/Scripts/Bindings.py",
line 311, in __call__
return self._bindAndExec(args, kw, None)
File "/var/www/zope/migration_test/lib/python/Shared/DC/Scripts/Bindings.py",
line 348, in _bindAndExec
return self._exec(bound_data, args, kw)
File "/var/www/zope/migration_test/lib/python/Products/PageTemplates/ZopePageTemplate.py",
line 255, in _exec
result = self.pt_render(extra_context=bound_names)
File "/var/www/zope/migration_test/zeocluster/client2/Products/CacheSetup/patch_cmf.py",
line 68, in PT_pt_render
return call_pattern(self, 'pt_render',
'__CacheSetup_PageTemplate_%s__', source, extra_context)
File "/var/www/zope/migration_test/zeocluster/client2/Products/CacheSetup/patch_utils.py",
line 9, in call_pattern
return getattr(self, pattern % __name__)(*args, **kw)
File "/var/www/zope/migration_test/lib/python/Products/PageTemplates/PageTemplate.py",
line 104, in pt_render
tal=not source, strictinsert=0)()
File "/var/www/zope/migration_test/lib/python/TAL/TALInterpreter.py",
line 238, in __call__
self.interpret(self.program)
File "/var/www/zope/migration_test/lib/python/TAL/TALInterpreter.py",
line 281, in interpret
handlers[opcode](self, args)
File "/var/www/zope/migration_test/lib/python/TAL/TALInterpreter.py",
line 457, in do_optTag_tal
self.do_optTag(stuff)
File "/var/www/zope/migration_test/lib/python/TAL/TALInterpreter.py",
line 442, in do_optTag
return self.no_tag(start, program)
File "/var/www/zope/migration_test/lib/python/TAL/TALInterpreter.py",
line 437, in no_tag
self.interpret(program)
File "/var/www/zope/migration_test/lib/python/TAL/TALInterpreter.py",
line 281, in interpret
handlers[opcode](self, args)
File "/var/www/zope/migration_test/lib/python/TAL/TALInterpreter.py",
line 455, in do_optTag_tal
self.no_tag(stuff[-2], stuff[-1])
File "/var/www/zope/migration_test/lib/python/TAL/TALInterpreter.py",
line 437, in no_tag
self.interpret(program)
File "/var/www/zope/migration_test/lib/python/TAL/TALInterpreter.py",
line 281, in interpret
handlers[opcode](self, args)
File "/var/www/zope/migration_test/lib/python/TAL/TALInterpreter.py",
line 617, in do_insertTranslation
self.interpret(stuff[1])
File "/var/www/zope/migration_test/lib/python/TAL/TALInterpreter.py",
line 281, in interpret
handlers[opcode](self, args)
File "/var/www/zope/migration_test/lib/python/TAL/TALInterpreter.py",
line 560, in do_i18nVariable
self.interpret(program)
File "/var/www/zope/migration_test/lib/python/TAL/TALInterpreter.py",
line 281, in interpret
handlers[opcode](self, args)
File "/var/www/zope/migration_test/lib/python/TAL/TALInterpreter.py",
line 455, in do_optTag_tal
self.no_tag(stuff[-2], stuff[-1])
File "/var/www/zope/migration_test/lib/python/TAL/TALInterpreter.py",
line 437, in no_tag
self.interpret(program)
File "/var/www/zope/migration_test/lib/python/TAL/TALInterpreter.py",
line 281, in interpret
handlers[opcode](self, args)
File "/var/www/zope/migration_test/lib/python/TAL/TALInterpreter.py",
line 531, in do_insertText_tal
text = self.engine.evaluateText(stuff[0])
File "/var/www/zope/migration_test/lib/python/Products/PageTemplates/TALES.py",
line 227, in evaluateText
text = self.evaluate(expr)
File "/var/www/zope/migration_test/lib/python/Products/PageTemplates/TALES.py",
line 221, in evaluate
return expression(self)
File "/var/www/zope/migration_test/lib/python/Products/PageTemplates/Expressions.py",
line 185, in __call__
return self._eval(econtext)
File "/var/www/zope/migration_test/lib/python/Products/PageTemplates/Expressions.py",
line 173, in _eval
ob = self._subexprs[-1](econtext)
File "/var/www/zope/migration_test/lib/python/Products/PageTemplates/Expressions.py",
line 127, in _eval
ob = restrictedTraverse(ob, path, getSecurityManager())
File "/var/www/zope/migration_test/lib/python/Products/PageTemplates/Expressions.py",
line 320, in restrictedTraverse
o = object[name]
KeyError: 'password'
==================================
I've been trying to get this thing migrated for some time now, and has
caused more fustration then I care to admit. Any assistance would be
appreciated. Thanks!
Scott
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV