簡體   English   中英

Jedis改變了Redis的語義?

[英]Jedis Changing the semantics of 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貢獻者,你打算修復它嗎?

LinkedHashSet是一個有序集。 應該更改API以明確地反映它或僅返回列表。

這個對話更適合郵件列表而不是SO。

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM