1. 05 Mar, 2020 3 commits
    • Guy Benoish's avatar
      Blocking XREAD[GROUP] should always reply with valid data (or timeout) · 7f3fcedb
      Guy Benoish authored
      This commit solves the following bug:
      127.0.0.1:6379> XGROUP CREATE x grp $ MKSTREAM
      OK
      127.0.0.1:6379> XADD x 666 f v
      "666-0"
      127.0.0.1:6379> XREADGROUP GROUP grp Alice BLOCK 0 STREAMS x >
      1) 1) "x"
         2) 1) 1) "666-0"
               2) 1) "f"
                  2) "v"
      127.0.0.1:6379> XADD x 667 f v
      "667-0"
      127.0.0.1:6379> XDEL x 667
      (integer) 1
      127.0.0.1:6379> XREADGROUP GROUP grp Alice BLOCK 0 STREAMS x >
      1) 1) "x"
         2) (empty array)
      
      The root cause is that we use s->last_id in streamCompareID
      while we should use the last *valid* ID
      7f3fcedb
    • antirez's avatar
      XCLAIM: Create the consumer only on successful claims. · f93b2fa5
      antirez authored
      Fixes #6744.
      f93b2fa5
    • Guy Benoish's avatar
      Stream: Handle streamID-related edge cases · 89682d96
      Guy Benoish authored
      This commit solves several edge cases that are related to
      exhausting the streamID limits: We should correctly calculate
      the succeeding streamID instead of blindly incrementing 'seq'
      This affects both XREAD and XADD.
      
      Other (unrelated) changes:
      Reply with a better error message when trying to add an entry
      to a stream that has exhausted last_id
      89682d96
  2. 19 Nov, 2019 4 commits
  3. 26 Apr, 2019 1 commit
  4. 13 Mar, 2019 3 commits
  5. 20 Nov, 2018 3 commits
  6. 05 Nov, 2018 8 commits
  7. 17 Oct, 2018 9 commits
  8. 15 Oct, 2018 8 commits
  9. 09 Oct, 2018 1 commit