# 刷新和合并期间的隔离

Manticore 在实时表的刷新和合并过程中提供隔离，防止任何更改影响正在运行的查询。

例如，在表压缩期间，一对磁盘块会被合并并产生一个新的块。在某个时刻，会创建表的新版本，新块替换了原始的这一对块。这一过程是无缝进行的，因此使用原始块的长时间运行的查询将继续看到旧版本的表，而新的查询将看到包含合并后块的新版本。

同样适用于刷新 RAM 块的情况，此时合适的 RAM 段会被合并成新的磁盘块，而参与的 RAM 块段则被放弃。在此操作期间，Manticore 对操作开始前启动的查询提供隔离。

此外，这些操作对替换和更新是透明的。如果您更新属于正在与另一个块合并的磁盘块中的文档的属性，更新将应用于该块和合并后生成的新块。如果在合并期间删除文档，该文档将同时在原始块和合并后生成的新块中被删除，新块要么将该文档标记为已删除，要么如果删除发生在合并过程的早期，则根本不会包含该文档。
<!-- proofread -->

