ZMI 目录清除和重建失败,并显示“POSKeyError:“No blob file””

发布于 2024-12-02 01:40:49 字数 2144 浏览 0 评论 0 原文

我们有一个站点从 plone 3 迁移到 plone 4.0.5。从 acl_users 中删除用户后无法正常工作(另一个问题),并且在没有运气的研究(作为最后的手段)尝试清除并重建目录后,我发现 acl_users 和 Portal_membership 之间存在差异。

失败并出现 POSKeyError: 'No blob file'(回溯如下)。我们不在应用程序中使用 Blob 存储,因为它是 Plone 3 诞生的。研究该问题会导致在 http://dev.plone.org/plone/ticket/11999?version=0 以及 http://plone.org/products/plone.app.blob/issues/10

任何人都可以解决这个问题。我是否必须设置一个虚拟 blob 存储或其他东西?

谢谢,

戈德

Traceback (innermost last):
  Module ZPublisher.Publish, line 127, in publish
  Module ZPublisher.mapply, line 77, in mapply
  Module ZPublisher.Publish, line 47, in call_object
  Module Products.CMFPlone.CatalogTool, line 356, in manage_catalogRebuild
  Module Products.CMFPlone.CatalogTool, line 346, in clearFindAndRebuild
  Module OFS.FindSupport, line 244, in ZopeFindAndApply
  Module OFS.FindSupport, line 244, in ZopeFindAndApply
  Module OFS.FindSupport, line 232, in ZopeFindAndApply
  Module Products.CMFPlone.CatalogTool, line 339, in indexObject
  Module Products.Archetypes.CatalogMultiplex, line 38, in indexObject
  Module Products.CMFPlone.CatalogTool, line 287, in catalog_object
  Module Products.ZCatalog.ZCatalog, line 521, in catalog_object
  Module Products.ZCatalog.Catalog, line 339, in catalogObject
  Module Products.ZCatalog.Catalog, line 278, in updateMetadata
  Module Products.ZCatalog.Catalog, line 416, in recordify
  Module plone.indexer.wrapper, line 59, in __getattr__
  Module plone.indexer.delegate, line 16, in __call__
  Module Products.CMFPlone.CatalogTool, line 135, in getObjSize
  Module Products.ATContentTypes.content.base, line 197, in get_size
  Module plone.app.blob.field, line 273, in get_size
  Module plone.app.blob.field, line 85, in get_size
  Module plone.app.blob.utils, line 52, in openBlob
  Module ZODB.Connection, line 838, in setstate
  Module ZODB.Connection, line 914, in _setstate
  Module ZEO.ClientStorage, line 991, in loadBlob 
POSKeyError: 'No blob file'

We have a site migrated from plone 3 to plone 4.0.5. I was getting discrepancies between acl_users and portal_membership after deleting users from acl_users didn't work properly (another issue) and a after no luck researching (as a last resort) tried a clear and rebuild on the catalog.

This failed with POSKeyError: 'No blob file' (traceback below). We do not use Blob storage in the application as it was born to Plone 3. Researching the problem results in an unanswered ticket at http://dev.plone.org/plone/ticket/11999?version=0 and also a dead end comment at http://plone.org/products/plone.app.blob/issues/10.

Anyone got any work around to this. Do I have to set up a dummy blob storage or something?

Thanks,

Gord

Traceback (innermost last):
  Module ZPublisher.Publish, line 127, in publish
  Module ZPublisher.mapply, line 77, in mapply
  Module ZPublisher.Publish, line 47, in call_object
  Module Products.CMFPlone.CatalogTool, line 356, in manage_catalogRebuild
  Module Products.CMFPlone.CatalogTool, line 346, in clearFindAndRebuild
  Module OFS.FindSupport, line 244, in ZopeFindAndApply
  Module OFS.FindSupport, line 244, in ZopeFindAndApply
  Module OFS.FindSupport, line 232, in ZopeFindAndApply
  Module Products.CMFPlone.CatalogTool, line 339, in indexObject
  Module Products.Archetypes.CatalogMultiplex, line 38, in indexObject
  Module Products.CMFPlone.CatalogTool, line 287, in catalog_object
  Module Products.ZCatalog.ZCatalog, line 521, in catalog_object
  Module Products.ZCatalog.Catalog, line 339, in catalogObject
  Module Products.ZCatalog.Catalog, line 278, in updateMetadata
  Module Products.ZCatalog.Catalog, line 416, in recordify
  Module plone.indexer.wrapper, line 59, in __getattr__
  Module plone.indexer.delegate, line 16, in __call__
  Module Products.CMFPlone.CatalogTool, line 135, in getObjSize
  Module Products.ATContentTypes.content.base, line 197, in get_size
  Module plone.app.blob.field, line 273, in get_size
  Module plone.app.blob.field, line 85, in get_size
  Module plone.app.blob.utils, line 52, in openBlob
  Module ZODB.Connection, line 838, in setstate
  Module ZODB.Connection, line 914, in _setstate
  Module ZEO.ClientStorage, line 991, in loadBlob 
POSKeyError: 'No blob file'

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

最终幸福 2024-12-09 01:40:49

这通常意味着您已将站点的:

  • var/filestorage/Data.fs

但未将:

  • var/blobstorage

移动到新位置。恢复 var/blobstorage(使用适当的文件系统权限,以便 ZEO 可以读取它)应该可以解决该问题。

This often times means you have moved your site's:

  • var/filestorage/Data.fs

but not:

  • var/blobstorage

to a new location. Restoring var/blobstorage (with the appropriate file system permissions so ZEO can read it) should resolve the issue.

妄想挽回 2024-12-09 01:40:49

正如另一个答案提到的,您正在使用 BLOB,因为在 Plone 4 中,我们默认将文件和图像迁移到 BLOB。

我怀疑无论什么对象在迁移后导致您出现此问题,在迁移前都可能处于某种损坏的状态。尝试恢复您的 Plone 3 备份并运行清除并重建,看看您是否从中获得任何信息。还尝试使用 PDBDebugMode post_mortem 调试,然后在运行清除和重建之前删除它们。

As the other answer mentions, you are using BLOBs because in Plone 4 we migrated to BLOBs for files and images by default.

I suspect that whatever object is causing you this problem after migration was probably in a somewhat broken state before migration. Try restoring your Plone 3 backups and running a clear and rebuild there to see if you get any information from that. Also try to find the offending object(s) under Plone 4 using PDBDebugMode post_mortem debugging and then delete them before running clear and rebuild.

塔塔猫 2024-12-09 01:40:49

我必须做同样的事情,将 var/blobstorage 复制到新位置,并使用 chown -R 和 chgrp -R 将所有者和组更改为 plone。

I had to do the same, copy var/blobstorage to the new location and change the owner and group to plone, with chown -R and chgrp -R.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文