2011-06-23 10 views
2

Plone 4.1rc3(または4.0.x)にアップグレードしたときに、(最初に3.3.xにアップグレードしても)壊れたメンバーディレクトリがあるように見えるPlone 2.5サイトがあります。どのように修正するのですか:メンバー(CMFPlone製品のこのオブジェクトは壊れています)?

は、アップグレードの過程で、私はこれを取得:

2011-06-23 13:44:39 ERROR plone.app.upgrade Upgrade aborted. Error: 
Traceback (most recent call last): 
    File "/Users/aclark/Downloads/eggs-directory/Products.CMFPlone-4.1rc3-py2.6.egg/Products/CMFPlone/MigrationTool.py", line 175, in upgrade 
    step['step'].doStep(setup) 
    File "/Users/aclark/Downloads/eggs-directory/Products.GenericSetup-1.6.3-py2.6.egg/Products/GenericSetup/upgrade.py", line 142, in doStep 
    self.handler(tool) 
    File "/Users/aclark/Downloads/eggs-directory/plone.app.upgrade-1.1rc3-py2.6.egg/plone/app/upgrade/v40/alphas.py", line 478, in updateLargeFolderType 
    update(brain) 
    File "/Users/aclark/Downloads/eggs-directory/plone.app.upgrade-1.1rc3-py2.6.egg/plone/app/upgrade/v40/alphas.py", line 472, in update 
    obj._setPortalTypeName('Folder') 
AttributeError: _setPortalTypeName 
> /Users/aclark/Downloads/eggs-directory/plone.app.upgrade-1.1rc3-py2.6.egg/plone/app/upgrade/v40/alphas.py(472)update() 
    471   obj = brain.getObject() 
--> 472   obj._setPortalTypeName('Folder') 
    473   reindex(obj, idxs=['portal_type', 'Type', 'object_provides']) 

ipdb> obj 
<persistent broken Products.CMFPlone.LargePloneFolder.LargePloneFolder instance '\x00\x00\x00\x00\x00\x00\x07W'> 

なぜこの出来事はありますか?これは既にLargePloneFolderの非推奨コードによって処理されるべきではありませんか?私は以前これを見たことがない。ある時点で、Products.CMPloneパッケージとPloneパッケージ(どちらか一方が今シムになっているようなもの)に関して、コードの再編成があったことが分かりました。それが問題の原因になるのではないかと思います。 ZMIで

は、メンバーフォルダには、次のようになります。

enter image description here

私が試してみて、調査に何ができる/この問題を解決しますか?

答えて

5

あなたのメンバーフォルダはArchetypes以前の日です。私が正しく覚えていれば、Plone 2.1.xの初期リリースのATContentTypesの移行では、ある時点で大きなフォルダが失われてしまいました。

Plone 2.5では、新しい「Large Plone Folder」を作成し、正しいタイプ(Products.ATContentTypes.content.folder.folder.ATBTreeFolder)を確認し、「Members」フォルダの内容をそのフォルダに移動し、古いMembersフォルダを削除します新しい大きなフォルダの名前をMembersに変更します。

ATContentTypesの移行コードがまだ存在するかもしれませんが、私はそれを呼び出す方法はもう思い出せません。また、Products.contentmigrationに基づいて独自の移行コードを作成し、Plone 3.xサイトで実行することもできます。

+0

すごくうれしかったです。 – aclark

関連する問題