一尘不染

Jedis更改Redis的语义?

redis

因此,Redis将zrange(和相关的排序集命令)指定为ORDERED结果集(也许没有重复的列表?)。

为什么然后Jedis(官方和推荐的REDIS客户端)上的zrange(和相关API)返回一个Set?根据定义,哪个没有订购概念?

这直接违反了redis操作的语义。

这是zrange jedis 2.0.0的实现:


  public Set<byte[]> zrange(final byte[] key, final int start, final int end) {
        checkIsInMulti();
        client.zrange(key, start, end);
        final List<byte[]> members = client.getBinaryMultiBulkReply();
        return new LinkedHashSet<byte[]>(members);
    }

Jedis贡献者,您打算修复它吗?


阅读 274

收藏
2020-06-20

共1个答案

一尘不染

根据https://github.com/xetorthio/jedis/issues/244,在2.2.0版中它将返回SorteSet

2020-06-20