为什么Data.fs.old消失了



我正在测试打包机制,因此pack-days设置为零,通过 ZMI 添加和删除对象以生成一些历史记录,并执行 zeopack ,到目前为止工作正常。

但是,如果自上次打包以来没有任何事务,并且触发了另一个新打包,则 Data.fs.old 将被删除/消失,为什么?

分别,哪些代码行在这样做?不知何故找不到它。

启动包始终会删除.old文件。

当没有什么要打包时,不会在其位置创建新的.old文件。

请参阅FileStorage.pack()方法;它在获取包装锁后立即删除现有的.old文件。

逻辑如下(删除了一些缩进和中间代码):

oldpath = self._file_name + ".old"
if os.path.exists(oldpath):
    os.remove(oldpath)
# collect pack info
pack_result = self.packer(self, referencesf, stop, gc)
if pack_result is None:
    return
os.rename(self._file_name, oldpath)

最新更新