磁盘存储文件(* .drf,*。crf,*。krf)文件在达到“最大oplog大小”后不被删除-Pivotal Gemfire

问题描述 投票:0回答:1

我有一个具有以下属性的磁盘存储:

<disk-store name="DATA" compaction-threshold="40" auto-compact="true" max-oplog-size="512" queue-size="10000">

<disk-dirs>

<disk-dir>/storage/data/</disk-dir>

</disk-dirs>

</disk-store>

我正在将数据添加到以下区域:

<region-attributes id="testRegionAttrib" concurrency-checks-enabled="true" statistics-enabled="true" initial-capacity="10000"

data-policy="persistent-replicate" scope="distributed-ack" disk-store-name="DATA">

<entry-time-to-live>

<expiration-attributes timeout="500"/>

</entry-time-to-live>

</region-attributes>

<region-attributes id="rLockAttrib" data-policy="replicate" scope="global"/>


<region name="testRegion" refid="testRegionAttrib">

<index name="idPkIndex">

<primary-key field="id" />

</index>

</region>

我可以看到一些BACKUPDATA文件在经过500秒的时间后就被删除,如region-attribute TTL属性中所述。但是,在达到500秒的时间后,不会删除在500秒之后创建的其他文件。

我想实现,以便在TTL周期后删除任何完整的BACKUPDATA文件(在这种情况下为1MB)。

我在屏幕截图的前后均附上附件,以使内容更加清晰。Before

After

gemfire
1个回答
0
投票
区域上的TTL适用于区域条目本身。因此,例如,在500秒后,您的输入将对region.get不可见。

但是,该TTL并不直接应用于磁盘存储文件。区域条目将在磁盘存储文件中标记为已删除,并且随着更多条目被删除,压缩将发生并回收磁盘上的空间,但这并不意味着所有文件都将消失。

© www.soinside.com 2019 - 2024. All rights reserved.