time is too far in the future 问题的处理

做 Domino 开发有一段时间的人估计都见过这个错误,产生的原因是曾经把 Domino 服务器的时间往回调过。

说的更细致一些,比如服务器的时间曾经是2012年,所以视图更新时间、上次复制时间等信息都记录为2012年。这时如果把时间调回2011年,那么就算有新的文档添加到数据库,它的修改时间也比视图的更新时间要晚,所以在这种情况下视图并不会自动更新。我举的只是其中一个问题,足以说明问题的严重性。

关于如何解决这个问题,IBM 技术支持网站给出的方法是新建拷贝或者新建复本,但一个一个处理太麻烦了。可以使用我之前提到的批量拷贝库来处理这个问题:

  • 通过操作系统的 ls 命令获取文件列表
  • 生成批量拷贝库(如果需要保持复本关系要加 REPLICA 参数)的脚本
  • 将所有库拷贝到临时目录
  • 停掉服务器,删除原目录、将临时目录改名为原目录名

我实际操作过一次,一个有几十个库的系统不到半小时就搞定了。大家也可以试试看。