Java RMapCache.keySet不一致行为

Java RMapCache.keySet不一致行为,java,redisson,Java,Redisson,我正在使用redisson3.12.5 我有这个映射“远程会话”,我正在尝试使用getMapCache(RMapCache)访问它 在获取地图后,我使用keySet查询它的键,但我看到了不一致的行为,我不知道为什么 我可能用错了图书馆,但这让我发疯:) 这是我的密码 List<RMapCache> cacheList = new ArrayList<>(); int count = 10; // get 10 caches

我正在使用redisson3.12.5

我有这个映射“远程会话”,我正在尝试使用getMapCache(RMapCache)访问它 在获取地图后,我使用keySet查询它的键,但我看到了不一致的行为,我不知道为什么

我可能用错了图书馆,但这让我发疯:)

这是我的密码

        List<RMapCache> cacheList = new ArrayList<>();
        int count = 10;
        // get 10 caches
        for (int i = 0; i < count; i++) {
            cacheList.add(redissonClient.getMapCache("REMOTE_SESSIONS", StringCodec.INSTANCE));
        }

        // for each one of them print the keyset
        for (int i = 0; i < count; i++) {
            Set set = cacheList.get(i).keySet(100);
            Iterator iterator = set.iterator();
            int actualCount = 0;
            while (iterator.hasNext()){
                iterator.next();
                actualCount++;
            }
            System.out.println("COUNT (from size) = " + set.size() + " - COUNT (actual) = " + actualCount);
        }
由于某些原因,键集的实际内容会发生变化。这可能与以下事实有关:在场景下,这是使用HSCAN实现的,但无法真正说明原因

知道为什么会这样吗?我能从地图上找到钥匙吗

我的最终目标是使用一种模式来查询密钥,但这种模式也不一致

非常感谢您的帮助。 谢谢

COUNT (from size) = 23 - COUNT (actual) = 23
COUNT (from size) = 23 - COUNT (actual) = 4
COUNT (from size) = 23 - COUNT (actual) = 4
COUNT (from size) = 23 - COUNT (actual) = 4
COUNT (from size) = 23 - COUNT (actual) = 4
COUNT (from size) = 23 - COUNT (actual) = 4
COUNT (from size) = 23 - COUNT (actual) = 23
COUNT (from size) = 23 - COUNT (actual) = 23
COUNT (from size) = 23 - COUNT (actual) = 23
COUNT (from size) = 23 - COUNT (actual) = 23