【发布时间】:2016-06-21 15:28:48
【问题描述】:
我有一个在服务器中运行的ChronicleMap (v2.3.2),使用以下调用创建:
ChronicleMapBuilder.of(MyKey.class, MyValue.class).entries(20_000_000).createPersistedTo(pathToData);
ChronicleMap 中存储的条目数量有可能需要发展。因此,我设想在应用程序启动时执行以下操作:
- 从磁盘加载现有的
ChronicleMap - 从现有
ChronicleMap中获取最大条目数 - 如果新大小(从配置文件加载)没有不同,则完成,否则...
- 使用新大小创建一个新的
ChronicleMap - 将旧
ChronicleMap的内容复制到新的 - 关闭并删除旧的
ChronicleMap
但是,我在 ChronicleMap 公开的界面中看不到任何内容,这将让我找出在创建 entries 方法时传递给它的值。我假设longSize() 只是实际存储的条目数,而不是映射的最大大小。
有没有办法找出这个值?或者也许有更好的方法来进行这种迁移?
【问题讨论】: