primaryValues() 和 values() 在 REPLICAD-MODE 中返回相同的结果



我刚刚发现,如果缓存处于复制模式,primaryValues() 和 values() 将返回相同的结果。 这是设计使然吗?

有点困惑,因为我知道复制模式在内部被视为 PARTIONED - 模式,所以我仍然可以迭代主集并具有可用的键节点亲和力。 那么如何在节点上仅迭代复制缓存的主集呢?

这是我使用的代码狙击:

 GridCache<Long, Entity> cache= g.cache("REPLICATED");
 Collection<Entity>  result = cache.primaryValues();
// Collection<Entity>  result = cache.values();

复制缓存具有显式逻辑来返回 primaryValues() 的整个数据集。我同意你的看法——这不是正确的行为。它将在即将发布的 6.5.6 版本中修复。

最新更新