117 Commits

Author SHA1 Message Date
antirez
fa7679c047 ASCII sparklines generation API. 2014-07-02 10:13:53 +02:00
antirez
eabdfb3e30 Latency monitor: basic samples collection. 2014-07-01 11:30:15 +02:00
antirez
61f3239044 HLLSELFTEST command implemented.
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.
2014-03-28 12:11:55 +01:00
antirez
ffef0610c8 Sentinel test: Makefile target added. 2014-02-28 16:00:00 +01:00
antirez
34a9b7d656 Makefile: remove odd syntax not compatible with some make versions.
See issue #1448.
2013-12-12 15:19:39 +01:00
antirez
83e363d3e6 BLPOP blocking code refactored to be generic & reusable. 2013-12-03 17:43:53 +01:00
Johan Bergström
1e598a514f use install as default installer (except on SunOS) 2013-03-21 13:32:08 +11:00
Johan Bergström
aabae1c8f5 Silence mkdir output 2013-03-17 18:37:38 +11:00
Johan Bergström
28762e28b0 Only pass -rdynamic as linker option 2013-03-17 17:49:57 +11:00
Johan Bergström
4415c47612 Remove extra spaces 2013-03-17 17:23:45 +11:00
Johan Bergström
c9498223ab make check is a common naming convention for tests 2013-03-16 18:40:22 +11:00
Johan Bergström
1fe70ba598 Spaces to tabs 2013-03-16 18:35:20 +11:00
Johan Bergström
ec31f87ad8 Slightly refactor CFLAGS/LDFLAGS/LIBS
This way, we can avoid -rdynamic and -pthread warnings on darwin.
2013-03-16 18:33:42 +11:00
antirez
6386d8ffc3 Set process name in ps output to make operations safer.
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.
2013-02-26 11:52:12 +01:00
antirez
9a847c8fd4 Makefile: valgrind target added (forces -O0 and libc malloc). 2013-02-11 12:11:28 +01:00
antirez
766a541a0a Keyspace events notification API. 2013-01-28 13:14:36 +01:00
antirez
a5af538d98 Introduced the Build ID in INFO and --version output.
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.
2012-11-29 14:20:08 +01:00
antirez
43cc64d30e First implementation of Redis Sentinel.
This commit implements the first, beta quality implementation of Redis
Sentinel, a distributed monitoring system for Redis with notification
and automatic failover capabilities.

More info at http://redis.io/topics/sentinel
2012-07-23 13:14:44 +02:00
antirez
83ebbd4c5e bitop.c renamed bitops.c
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).
2012-05-24 15:20:06 +02:00
antirez
c2ca94242c Bit-related string operations moved to bitop.c
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.
2012-05-24 15:19:51 +02:00
antirez
9a2fd16d17 Fix PREFIX typo in Makefile. 2012-05-09 20:45:19 +02:00
antirez
74f6d485ed Allow PREFIX to be overrided in Makefile. 2012-05-09 10:34:52 +02:00
antirez
7ba8e7081c redis-cli --pipe for mass import. 2012-05-07 16:37:18 +02:00
antirez
d8d9eaf973 Re-introduce -g -rdynamic -ggdb when linking, fixing strack traces.
A previous commit removed -g -rdynamic -ggdb as LDFLAGS, not allowing
Redis to produce a stack trace wth symbol names on crash.
This commit fixes the issue.
2012-04-26 16:53:11 +02:00
antirez
031c56d57c redis-check-dump now is RDB version 6 ready. 2012-04-24 19:05:27 +02:00
Pieter Noordhuis
6240f57022 Persist make settings and trigger rebuild if anything changes 2012-04-13 17:52:33 -07:00
Pieter Noordhuis
b4b298b783 Don't set flags recursively 2012-04-13 17:52:33 -07:00
Pieter Noordhuis
ff8ec1c8ee Remove unused LIBS variable 2012-04-13 17:52:33 -07:00
Pieter Noordhuis
f742e4a9ba First set defaults, then do composition 2012-04-13 17:52:33 -07:00
Pieter Noordhuis
15fd1bc04a Question mark assignment is not needed 2012-04-13 17:52:33 -07:00
Pieter Noordhuis
77e0138ff3 The lcov target shouldn't clean
This is not needed because every change in compiler/linker flags
triggers a cleanup.
2012-04-13 17:52:30 -07:00
Pieter Noordhuis
18bb9b5d82 Rename ADD_*FLAGS -> REDIS_*FLAGS, REDIS_*FLAGS -> FINAL_*FLAGS
This reflects that REDIS_*FLAGS will only be used for compilation of
Redis and not for its dependencies. Similarly, that FINAL_*FLAGS are
composed of other variables and holds the options that are finally
passed to the compiler and linker.
2012-04-13 17:34:31 -07:00
antirez
9edfc484e4 A few var names fixed in Makefile.
I modified it for error in a previous commit doing search & replace.
2012-04-13 16:13:56 +02:00
antirez
3ee2833956 Make gcov fixed. 2012-04-12 11:51:58 +02:00
antirez
f709a2a369 Makefile now introduces Redis-specific CFLAGS / LDFLAGS. Gcov target fixed. Added comments to describe how it works. 2012-04-12 11:09:38 +02:00
antirez
eab775f1e7 make dep: redirect output to Makefile.dep. 2012-04-11 12:12:05 +02:00
Pieter Noordhuis
b866abc78e Clean up Makefiles
Remove unused variables. Instead of overriding non-standard variables
such as ARCH and PROF, use standard variables CFLAGS and LDFLAGS to
override Makefile settings. Move dependencies generated by `make dep` to
a separate file.
2012-04-11 11:24:17 +02:00
antirez
04c1bc9106 For coverage testing use exit() instead of _exit() when termiating saving children. 2012-04-07 12:11:23 +02:00
Premysl Hruby
081f0c32ee add support for generation of lcov coverage reports 2012-04-05 12:23:35 +02:00
antirez
618b51c6a6 CRC64 implementation added to Redis code base. 2012-04-02 12:31:44 +02:00
antirez
26330d4a06 First implementation of --test-memory. Still a work in progress. 2012-03-16 17:17:39 +01:00
antirez
b1839bd367 Build dependencies updated. 2012-03-10 12:40:03 +01:00
antirez
eb3d93fd27 add -f flag to cp when installing, otherwise stopping the server is
needed when installing a new Redis version. Thanks to Scott Kevill.
Fixes issue #335.
2012-02-14 16:15:24 +01:00
antirez
9a68f79cd5 endian.c/h -> endianconv.c/h to avoid issues with broken libraries search paths. 2012-02-14 16:11:46 +01:00
antirez
3fcae1cc78 A few small BSD related fixes. 2012-02-08 22:24:59 +01:00
Pieter Noordhuis
860acb386c Don't force rebuild when params didn't change 2011-11-16 17:49:06 +01:00
Pieter Noordhuis
e679a81c9a Rebuild source when allocator changes
To do so, the Makefile stores the contents of the MALLOC environment
variable in a file named .make-malloc. When the contents of this file
and the MALLOC variable are not equal, it forces a rebuild of the Redis
source tree.

A side-effect of this change is that choosing an allocator can now be
done using the single MALLOC variable instead of USE_TCMALLOC,
USE_JEMALLOC and so forth. These variables continue to work for
backwards compatibility.
2011-11-15 13:09:34 -08:00
Pieter Noordhuis
f3220a5b88 Rebuild deps/ and src/ when ARCH changes
This change moves the build instructions for dependencies to a separate
Makefile in deps/. The ARCH environment variable is stored in a
.make-arch file in the same directory as the Makefile. The contents of
this file is read and compared to the current ARCH, and, on a mismatch
triggers rebuilding the entire source tree.

When file .make-arch exists and matches with ARCH from the environment,
the dependencies are assumed to already be built.

The new "clean" target only cleans the Redis source tree, not its
dependencies. To clear the dependencies as well, the "distclean" target
can be used.
2011-11-15 12:41:35 -08:00
Pieter Noordhuis
03720c888d Use CCLINK as last argument 2011-11-15 09:39:38 -08:00
Pieter Noordhuis
cc037c7317 CCLINK already includes ALLOC_LINK 2011-11-15 09:36:13 -08:00