Plone ZODB数据库记录在未来

时间:2011-03-25 09:52:08

标签: plone zope zodb

我有一个plone-instance的问题。在启动时,我得到这个重要的消息

  

2011-03-25 10:23:06关键ZODB.FileStorage /srv/plone/var/filestorage/Data.fs数据库记录未来1258954454秒

在ZMI中,我可以看到plone-instance文件夹及其中的所有内容都具有日期“2051-02-14 15:57”(它是bobobase_modification_time的值)。每个新对象都有相同的时间戳。

由于ZODB的打包不会使Data.fs变小,并且在上面的CRITICAL消息出现之前,实例的启动需要很长时间。除此之外,该网站似乎工作正常。特别是在Plone中,时间值似乎是正确的。

我检查了以下(此处调试会话的语法高亮版本:http://pastie.org/1709881):

  

>>> plone = app.plonesite
  >>> plone.created()
  DateTime('2010/11/15 13:39:42.694 GMT + 1')
  >>> plone.modified()
  DateTime('2010/11/15 13:39:42.694 GMT + 1')
  >>> plone.bobobase_modification_time()
  DateTime('2051 / 02/14 15:57:21.077 GMT + 1')

     

#尝试根据
设置创建日期   #http://plone.org/documentation/kb/set-creation-date
  #setCreationDate不再起作用了

     

>>>从DateTime导入DateTime
  >>> d =日期时间('2010/11/16')
  >>> plone.setModificationDate(d)
  >>> plone.setCreationDate(d)
  追溯(最近的呼叫最后):
    文件“”,第1行,在?
中   AttributeError:setCreationDate
  >>> plone.setEffectiveDate(d)
  >>> plone.reindexObject()

     

>>> plone.created()
  DateTime('2010/11/15 13:39:42.694 GMT + 1')
  >>> plone.modified()
  日期时间( '2010/11/16')
  >>> plone.bobobase_modification_time()
  DateTime('2051 / 02/14 15:57:21.077 GMT + 1')

对于bobobase_modification_time()的错误时间,我该怎么办?我可以将这个值设置为合理的时间吗?

更新:写这篇文章给我带来了一些新的想法,搜索什么。我认为线程http://thread.gmane.org/gmane.comp.web.zope.general/12994/focus=12999描述了我的网站发生了什么。我现在将尝试通过导出然后导入对象来修复它。

1 个答案:

答案 0 :(得分:1)

你在服务器上运行Zope的时间已经过去了,ZODB真的不喜欢这样。

有人曾写过一个补丁来自动纠正这种情况,请参阅:

http://www.mail-archive.com/zodb-dev@zope.org/msg03916.html

YMMV应用那个。