2

我们有一个相当大的 Plone 实例在它自己的挂载点上运行。ZMI界面列出数据库大小为7101.4M。我们使用 Relstorage zodbpack.py 脚本每周运行一次数据库包,删除超过 7 天的对象。过去两周,运行包的 cron 作业输出以下内容:

Sun Jun 26 07:00:38 BST 2011 packing cms mount
/home/zope/home/parts/zope2/lib/python/zope/configuration/xmlconfig.py:323: DeprecationWarning: zope.app.annotation has moved to zope.annotation. Import of zope.app.annotation will become unsupported in Zope 3.5
__import__(arguments[0])
/home/zope/home/eggs/p4a.common-1.0.7-py2.4.egg/p4a/common/configure.zcml:19: DeprecationWarning: The five:localsite directive is deprecated and will be removed in Zope 2.12.
See Five/doc/localsite.txt .
 <five:localsite class=".Portal.PloneSite" />
/home/zope/home/parts/zope2/lib/python/zope/configuration/fields.py:417: UserWarning: You did not specify an i18n translation domain for the 'description' field in /home/zope/home/eggs/Products.CMFSquidTool-1.5.1-py2.4.egg/Products/CMFSquidTool/configure.zcml
 warnings.warn(
/home/zope/home/parts/zope2/lib/python/zope/configuration/fields.py:417: UserWarning: You did not specify an i18n translation domain for the 'title' field in /home/zope/home/eggs/Products.CMFSquidTool-1.5.1-py2.4.egg/Products/CMFSquidTool/configure.zcml
 warnings.warn(
Unhandled exception in thread started by
Error in sys.excepthook:

Original exception was:
Sun Jun 26 09:56:31 BST 2011 finished pack

第一行和最后一行由 cron 作业运行的 shell 脚本输出。

打包后数据库大小减小,因此看起来它正在做某事。对于如何进一步调试此错误,我有点茫然。

很长一段时间,包运行正常。然后,我们更改了数据库的连接参数,但忘记在 cron 作业中更新它们,因此包在 11 周内没有运行。在出现此错误之前它成功运行了两次 - 长时间没有运行包可能与错误有关吗?

任何帮助将非常感激。

我们正在运行:

  • 克隆 3.3.5
  • 佐普 2.10.11
  • 再存储 1.4.1
  • ZODB 3.8.4-轮询
4

1 回答 1

2

该错误与 Python 有关,与 RelStorage 无关。有关我认为与此处相关的错误报告,请参见http://bugs.python.org/issue1722344。该错误适用于 Python 2.5 和 2.6,但也可能适用于 Python 2.4。如果尚未升级 Python 2.4,请尝试将其升级到最新版本。

无论如何,在这种情况下消息是无害的。打包只使用一个线程,并且您确实会在最后收到成功消息(Sun Jun 26 09:56:31 BST 2011 finished pack仅在打包成功时才会显示)。

您也可以尝试升级到 RelStorage 1.5.0(上周发布);显着改进以处理更大规模的打包数据库和繁忙的站点。

于 2011-07-04T12:22:40.760 回答