Migration 迁移ATFile时发生plone.app.blob运行时错误

Migration 迁移ATFile时发生plone.app.blob运行时错误,migration,plone,blob,runtime-error,Migration,Plone,Blob,Runtime Error,我正在3.2.1站点上进行blob迁移,在@blob文件迁移期间,在某些文件上出现“RuntimeError:调用Python对象错误时超过了最大递归深度” 我发现了这个,看起来他们通过创建自定义迁移器解决了图像的这个问题 有线索吗?下面是回溯 File "/home/simahawk/dev/plone/plone3/projx/src/plone.app.blob/src/plone/app/blob/content.py", line 113, in setFile mutat

我正在3.2.1站点上进行blob迁移,在@blob文件迁移期间,在某些文件上出现“RuntimeError:调用Python对象错误时超过了最大递归深度”

我发现了这个,看起来他们通过创建自定义迁移器解决了图像的这个问题

有线索吗?下面是回溯

  File "/home/simahawk/dev/plone/plone3/projx/src/plone.app.blob/src/plone/app/blob/content.py", line 113, in setFile
    mutator = self.getField('file').getMutator(self)
  File "/home/simahawk/dev/plone/plone3/buildout/eggs/Products.Archetypes-1.5.10-py2.4.egg/Products/Archetypes/BaseObject.py", line 241, in getField
    return self.Schema().get(key)
  File "/home/simahawk/dev/plone/plone3/buildout/eggs/Products.Archetypes-1.5.10-py2.4.egg/Products/Archetypes/BaseObject.py", line 828, in Schema
    schema = ISchema(self)
  File "/home/simahawk/dev/plone/plone3/projx/parts/zope2/lib/python/zope/app/component/hooks.py", line 96, in adapter_hook
    return siteinfo.adapter_hook(interface, object, name, default)
  File "/home/simahawk/dev/plone/plone3/buildout/eggs/archetypes.schemaextender-2.1.1-py2.4.egg/archetypes/schemaextender/extender.py", line 143, in cachingInstanceSchemaFactory
    key = IUUID(context, str(id(context)))
  File "/home/simahawk/dev/plone/plone3/projx/parts/zope2/lib/python/zope/app/component/hooks.py", line 96, in adapter_hook
    return siteinfo.adapter_hook(interface, object, name, default)
RuntimeError: maximum recursion depth exceeded in cmp
2013-03-06 10:16:49 INFO ATCT.migration Rolling back to last safe point

当使用Products.contentmigration从Plone 3.x迁移到Plone 4.x时,我遇到了相同的错误。似乎plone.app.blob迁移中存在错误。我们进行此自定义迁移是为了绕过递归错误:

问题出在.schemaextender版本(2.1.1)上。固定到1.6.0解决了这个问题。这也解决了3.3.5站点上的随机键错误。我认为这与和有关。较新版本的at.schemaextender似乎存在这些常见问题,但在该软件包的自述文件中没有关于Plone 3.x的信息。

最近FWIW中有一些blob迁移修复程序。不幸的是,我已经在使用github的p.a.blob了:在一个大型安装中,我们得到了相同的错误:我们修复了它:在Plone升级期间禁用映像和文件迁移,稍后手动调用迁移视图。这里没有升级,只是迁移到blob。这意味着我直接调用std迁移视图。