1. 14 Jul, 2015 1 commit
  2. 23 Jun, 2015 1 commit
    • antirez's avatar
      Geo: big refactoring of geo.c, zset.[ch] removed. · 0b931390
      antirez authored
      This commit simplifies the implementation in a few ways:
      
      1. zsetScore implementation improved a bit and moved into t_zset.c where
         is now also used to implement the ZSCORE command.
      
      2. Range extraction from the sorted set remains a separated
         implementation from the one in t_zset.c, but was hyper-specialized in
         order to avoid accumulating results into a list and remove the ones
         outside the radius.
      
      3. A new type is introduced: geoArray, which can accumulate geoPoint
         structures in a vector with power of two expansion policy. This is
         useful since we have to call qsort() against it before returning the
         result to the user.
      
      4. As a result of 1, 2, 3, the two files zset.c and zset.h are now
         removed, including the function to merge two lists (now handled with
         functions that can add elements to existing geoArray arrays) and
         the machinery used in order to pass zset results.
      
      5. geoPoint structure simplified because of the general code structure
         simplification, so we no longer need to take references to objects.
      
      6. Not counting the JSON removal the refactoring removes 200 lines of
         code for the same functionalities, with a simpler to read
         implementation.
      
      7. GEORADIUS is now 2.5 times faster testing with 10k elements and a
         radius resulting in 124 elements returned. However this is mostly a
         side effect of the refactoring and simplification. More speed gains
         can be achieved by trying to optimize the code.
      0b931390
  3. 22 Jun, 2015 3 commits
    • antirez's avatar
      Geo: compile again with optimizations · 3d9031ed
      antirez authored
      For some reason the Geo PR included disabling the fact that Redis is
      compiled with optimizations. Apparently it was just @mattsta attempt to
      speedup the modify-compile-test iteration and there are no other
      reasons.
      3d9031ed
    • antirez's avatar
      Geo: JSON features removed · b18c68aa
      antirez authored
      The command can only return data in the normal Redis protocol. It is up
      to the caller to translate to JSON if needed.
      b18c68aa
    • Matt Stancliff's avatar
      [In-Progress] Add Geo Commands · 7f4ac3d1
      Matt Stancliff authored
      Current todo:
        - replace functions in zset.{c,h} with a new unified Redis
          zset access API.
      
      Once we get the zset interface fixed, we can squash
      relevant commits in this branch and have one nice commit
      to merge into unstable.
      
      This commit adds:
        - Geo commands
        - Tests; runnable with: ./runtest --single unit/geo
        - Geo helpers in deps/geohash-int/
        - src/geo.{c,h} and src/geojson.{c,h} implementing geo commands
        - Updated build configurations to get everything working
        - TEMPORARY: src/zset.{c,h} implementing zset score and zset
          range reading without writing to client output buffers.
        - Modified linkage of one t_zset.c function for use in zset.c
      
      Conflicts:
      	src/Makefile
      	src/redis.c
      7f4ac3d1
  4. 28 Jan, 2015 1 commit
    • Matt Stancliff's avatar
      Convert check-dump to Redis check-rdb mode · 145473ac
      Matt Stancliff authored
      redis-check-dump is now named redis-check-rdb and it runs
      as a mode of redis-server instead of an independent binary.
      
      You can now use 'redis-server redis.conf --check-rdb' to check
      the RDB defined in redis.conf.  Using argument --check-rdb
      checks the RDB and exits.  We could potentially also allow
      the server to continue starting if the RDB check succeeds.
      
      This change also enables us to use RDB checking programatically
      from inside Redis for certain failure conditions.
      145473ac
  5. 09 Jan, 2015 1 commit
    • antirez's avatar
      Add "-lrt" in Makefile for Solaris. · 0d22121c
      antirez authored
      This fix is from @NanXiao, however I was not able to retain authorship
      because the Pull Request original repository was removed.
      0d22121c
  6. 02 Jan, 2015 2 commits
  7. 23 Dec, 2014 1 commit
  8. 17 Dec, 2014 1 commit
  9. 12 Dec, 2014 1 commit
  10. 10 Dec, 2014 1 commit
  11. 13 Aug, 2014 1 commit
  12. 12 Aug, 2014 1 commit
    • NanXiao's avatar
      Use resolv library in Solaris · 951eefae
      NanXiao authored
      For some Solaris flavours, the inet_aton in in resolv library.
      Not linking this library will introduce link error.
      
      Improves compatability with older Solaris and still
      works on new Solaris.
      
      Closes #1092
      951eefae
  13. 08 Aug, 2014 1 commit
  14. 07 Aug, 2014 1 commit
  15. 02 Jul, 2014 1 commit
  16. 01 Jul, 2014 1 commit
  17. 28 Mar, 2014 1 commit
    • antirez's avatar
      HLLSELFTEST command implemented. · 552eb540
      antirez authored
      To test the bitfield array of counters set/get macros from the Redis Tcl
      suite is hard, so a specialized command that is able to test the
      internals was developed.
      552eb540
  18. 28 Feb, 2014 1 commit
  19. 12 Dec, 2013 1 commit
  20. 03 Dec, 2013 1 commit
  21. 21 Mar, 2013 1 commit
  22. 17 Mar, 2013 3 commits
  23. 16 Mar, 2013 3 commits
  24. 26 Feb, 2013 1 commit
    • antirez's avatar
      Set process name in ps output to make operations safer. · 6356cf68
      antirez authored
      This commit allows Redis to set a process name that includes the binding
      address and the port number in order to make operations simpler.
      
      Redis children processes doing AOF rewrites or RDB saving change the
      name into redis-aof-rewrite and redis-rdb-bgsave respectively.
      
      This in general makes harder to kill the wrong process because of an
      error and makes simpler to identify saving children.
      
      This feature was suggested by Arnaud GRANAL in the Redis Google Group,
      Arnaud also pointed me to the setproctitle.c implementation includeed in
      this commit.
      
      This feature should work on all the Linux, OSX, and all the three major
      BSD systems.
      6356cf68
  25. 11 Feb, 2013 1 commit
  26. 28 Jan, 2013 1 commit
  27. 29 Nov, 2012 1 commit
    • antirez's avatar
      Introduced the Build ID in INFO and --version output. · 2f62c966
      antirez authored
      The idea is to be able to identify a build in a unique way, so for
      instance after a bug report we can recognize that the build is the one
      of a popular Linux distribution and perform the debugging in the same
      environment.
      2f62c966
  28. 23 Jul, 2012 1 commit
  29. 24 May, 2012 2 commits
    • antirez's avatar
      bitop.c renamed bitops.c · 80f8028e
      antirez authored
      bitop.c contains the "Bit related string operations" so it seems more
      logical to call it bitops instead of bitop.
      This also makes it matching the name of the test (unit/bitops.tcl).
      80f8028e
    • antirez's avatar
      Bit-related string operations moved to bitop.c · 760e7765
      antirez authored
      All the general string operations are implemented in t_string.c, however
      the bit operations, while targeting the string type, are better served
      in a specific file where we have the implementations of the following
      four commands and helper functions:
      
          GETBIT
          SETBIT
          BITOP
          BITCOUNT
      
      In the future this file will probably contain more code related to
      making the BITOP and BITCOUNT operations faster.
      760e7765
  30. 09 May, 2012 2 commits
  31. 07 May, 2012 1 commit