1. 10 May, 2016 4 commits
    • antirez's avatar
      Modules: avoid conflict between modules func pointers and dynamic symbols. · 85919f80
      antirez authored
      In modules we fill a set of function pointers defined in redismodule.h,
      populating a set of APIs that are callable from the module. We use this
      manual process instead of resorting to dynamic linking so that we have
      exact control on how we pass the API to the module, and we can even pass
      different functions for the same name, depending on the API version
      declared by the module.
      
      However if the function pointers in redismodule.h and the functions
      defined in module.c have the same name, they conflict since the core
      exports the symbols to the module.
      
      There is probably some compiler flags trick to avoid this, but in order
      to be safer in the future and be more easily compatible with different
      builidng systems, this commit changes the internal function prefix from
      RedisModule_ to RM_, so for example:
      
          RM_StringSet() will be exported as RedisModule_StringSet()
      85919f80
    • antirez's avatar
    • Dvir Volk's avatar
      fixed makefile for linux · 34f2fb7d
      Dvir Volk authored
      34f2fb7d
    • antirez's avatar
      Modules: first preview 31 March 2016. · 6dead2cf
      antirez authored
      6dead2cf
  2. 08 May, 2016 2 commits
  3. 07 May, 2016 1 commit
    • antirez's avatar
      redis-cli: integrate help.h with COMMAND output. · 8eb43bf7
      antirez authored
      Use the COMMAND output to fill with partial information the built-in
      help. This makes redis-cli able to at least complete commands that are
      exported by the Redis server it is connected to, but were not available
      in the help.h file when the redis-cli binary was compiled.
      8eb43bf7
  4. 06 May, 2016 1 commit
  5. 05 May, 2016 20 commits
  6. 04 May, 2016 7 commits
  7. 02 May, 2016 2 commits
    • antirez's avatar
      Cluster regression test for #3043. · 9c48f28e
      antirez authored
      The test works but is very slow so far, since it involves resharding
      1/5 of all the cluster slots from master 0 to the other 4 masters and
      back into the original master.
      9c48f28e
    • antirez's avatar
      New masters with slots are now targets of migration if others are. · 4fdde78c
      antirez authored
      This fixes issue #3043.
      
      Before this fix, after a complete resharding of a master slots
      to other nodes, the master remains empty and the slaves migrate away
      to other masters with non-zero nodes. However the old master now empty,
      is no longer considered a target for migration, because the system has
      no way to tell it had slaves in the past.
      
      This fix leaves the algorithm used in the past untouched, but adds a
      new rule. When a new or old master which is empty and without slaves,
      are assigend with their first slot, if other masters in the cluster have
      slaves, they are automatically considered to be targets for replicas
      migration.
      4fdde78c
  8. 30 Apr, 2016 1 commit
  9. 25 Apr, 2016 2 commits