1. 07 Apr, 2020 1 commit
    • Guy Benoish's avatar
      Fix memory corruption in moduleHandleBlockedClients · 193fc241
      Guy Benoish authored
      By using a "circular BRPOPLPUSH"-like scenario it was
      possible the get the same client on db->blocking_keys
      twice (See comment in moduleTryServeClientBlockedOnKey)
      
      The fix was actually already implememnted in
      moduleTryServeClientBlockedOnKey but it had a bug:
      the funxction should return 0 or 1 (not OK or ERR)
      
      Other changes:
      1. Added two commands to blockonkeys.c test module (To
         reproduce the case described above)
      2. Simplify blockonkeys.c in order to make testing easier
      3. cast raxSize() to avoid warning with format spec
      193fc241
  2. 31 Mar, 2020 2 commits
  3. 25 Mar, 2020 3 commits
  4. 05 Mar, 2020 5 commits
  5. 27 Feb, 2020 4 commits
  6. 12 Feb, 2020 4 commits
  7. 04 Feb, 2020 4 commits
    • Oran Agra's avatar
      fix uninitialized info_cb var in module.c · ec0c61da
      Oran Agra authored
      ec0c61da
    • Guy Benoish's avatar
      ld2string should fail if string contains \0 in the middle · 6fe55c2f
      Guy Benoish authored
      This bug affected RM_StringToLongDouble and HINCRBYFLOAT.
      I added tests for both cases.
      
      Main changes:
      1. Fixed string2ld to fail if string contains \0 in the middle
      2. Use string2ld in getLongDoubleFromObject - No point of
         having duplicated code here
      
      The two changes above broke RM_SaveLongDouble/RM_LoadLongDouble
      because the long double string was saved with length+1 (An innocent
      mistake, but it's actually a bug - The length passed to
      RM_SaveLongDouble should not include the last \0).
      6fe55c2f
    • antirez's avatar
      bbce3ba9
    • Guy Benoish's avatar
      Modules: Fix blocked-client-related memory leak · 40295fb3
      Guy Benoish authored
      If a blocked module client times-out (or disconnects, unblocked
      by CLIENT command, etc.) we need to call moduleUnblockClient
      in order to free memory allocated by the module sub-system
      and blocked-client private data
      
      Other changes:
      Made blockedonkeys.tcl tests a bit more aggressive in order
      to smoke-out potential memory leaks
      40295fb3
  8. 10 Jan, 2020 1 commit
  9. 29 Dec, 2019 1 commit
  10. 18 Dec, 2019 3 commits
  11. 17 Dec, 2019 4 commits
  12. 13 Dec, 2019 1 commit
  13. 12 Dec, 2019 3 commits
    • Yossi Gottlieb's avatar
      Improve RM_ModuleTypeReplaceValue() API. · 0283db58
      Yossi Gottlieb authored
      With the previous API, a NULL return value was ambiguous and could
      represent either an old value of NULL or an error condition. The new API
      returns a status code and allows the old value to be returned
      by-reference.
      
      This commit also includes test coverage based on
      tests/modules/datatype.c which did not exist at the time of the original
      commit.
      0283db58
    • antirez's avatar
      Remove useless space from moduleLoad(). · 476333d1
      antirez authored
      476333d1
    • Oran Agra's avatar
      Add module API for AvoidReplicaTraffic · b5f3247c
      Oran Agra authored
      This is useful to tell redis and modules to try to avoid doing things that may
      increment the replication offset, and should be used when draining a master
      and waiting for replicas to be in perfect sync before a failover.
      b5f3247c
  14. 11 Dec, 2019 1 commit
  15. 09 Dec, 2019 1 commit
  16. 05 Dec, 2019 1 commit
  17. 03 Dec, 2019 1 commit