gpt4 book ai didi

lmdb:如何确定剩余的可用空间?

转载 作者:行者123 更新时间:2023-12-03 09:29:43 27 4
gpt4 key购买 nike

创建 lmdb 环境时,我可以指定 map 大小。有没有办法在任何时候确定用了多少 map 大小?

换句话说,我需要找出剩余多少可用空间才能解决空间不足的问题。

我唯一能想到的就是遍历所有数据库并使用 mdb_env_stat 来获取分支、叶和溢出页的数量。将所有 dbs(乘以页面大小)相加并与当前 map 大小进行比较。这是计算已用空间的正确方法吗?

最佳答案

这确实是我正在使用的方法(也是我唯一能找到的方法)。

对于每个数据库:

MDB_stat stat;
mdb_stat(d->transaction, d->dbi, &stat);
auto dbSize = stat.ms_psize * (stat.ms_leaf_pages + stat.ms_branch_pages + stat.ms_overflow_pages);

关于lmdb:如何确定剩余的可用空间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40498586/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com