Commit Graph

222 Commits

Author SHA1 Message Date
antirez
0195afae39 test-sds target in Makefile to run sds.c tests. 2014-12-10 09:50:27 +01:00
antirez
7e3ccddc6d Add -W to compilation flags. 2014-08-13 10:53:54 +02:00
NanXiao
951eefae3c Use resolv library in Solaris
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
2014-08-12 11:30:46 +02:00
Joshua Anderson
7a2450a7e5 src/Makefile: Reword "to run make test" message
Closes #1610
2014-08-08 10:20:22 +02:00
siahl
009cabf103 Add support for compiling on AIX
Closes #1900
2014-08-07 12:12:54 +02:00
antirez
cc4df5a6b8 ASCII sparklines generation API. 2014-07-02 10:13:53 +02:00
antirez
d7a07a2012 Latency monitor: basic samples collection. 2014-07-01 11:30:15 +02:00
antirez
552eb5407a 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
a89c8bb87c Sentinel test: Makefile target added. 2014-02-28 16:00:00 +01:00
antirez
452dea30f6 Makefile: remove odd syntax not compatible with some make versions.
See issue #1448.
2013-12-12 15:19:39 +01:00
antirez
82b672f633 BLPOP blocking code refactored to be generic & reusable. 2013-12-03 17:43:53 +01:00
Johan Bergström
8080e1cfbe use install as default installer (except on SunOS) 2013-03-21 13:32:08 +11:00
Johan Bergström
dc4003be71 Silence mkdir output 2013-03-17 18:37:38 +11:00
Johan Bergström
348be19b5f Only pass -rdynamic as linker option 2013-03-17 17:49:57 +11:00
Johan Bergström
33a4bc2c70 Remove extra spaces 2013-03-17 17:23:45 +11:00
Johan Bergström
978c895b69 make check is a common naming convention for tests 2013-03-16 18:40:22 +11:00
Johan Bergström
ada7aa7ac9 Spaces to tabs 2013-03-16 18:35:20 +11:00
Johan Bergström
bea60bec75 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
6356cf6808 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
1a27d41156 Makefile: valgrind target added (forces -O0 and libc malloc). 2013-02-11 12:11:28 +01:00
antirez
4cdbce341e Keyspace events notification API. 2013-01-28 13:14:36 +01:00
antirez
2f62c9663c 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
6b5daa2df2 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
80f8028e3c 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
760e776526 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
8c6301462b Fix PREFIX typo in Makefile. 2012-05-09 20:45:19 +02:00
antirez
b26808a532 Allow PREFIX to be overrided in Makefile. 2012-05-09 10:34:52 +02:00
antirez
088c508abc redis-cli --pipe for mass import. 2012-05-07 16:37:18 +02:00
antirez
a3eb7ac87d 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
29c8cf0116 redis-check-dump now is RDB version 6 ready. 2012-04-24 19:05:27 +02:00
Pieter Noordhuis
7e7b69fee1 Persist make settings and trigger rebuild if anything changes 2012-04-13 17:52:33 -07:00
Pieter Noordhuis
34c943b395 Don't set flags recursively 2012-04-13 17:52:33 -07:00
Pieter Noordhuis
620357fc8f Remove unused LIBS variable 2012-04-13 17:52:33 -07:00
Pieter Noordhuis
caba585121 First set defaults, then do composition 2012-04-13 17:52:33 -07:00
Pieter Noordhuis
c04278ba3b Question mark assignment is not needed 2012-04-13 17:52:33 -07:00
Pieter Noordhuis
0342dd7647 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
631539a5f2 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
c18405c909 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
91e56965a3 Make gcov fixed. 2012-04-12 11:51:58 +02:00
antirez
9c83aec955 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
a470689d2e make dep: redirect output to Makefile.dep. 2012-04-11 12:12:05 +02:00
Pieter Noordhuis
0a08d2b0e5 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
2cbdab903f For coverage testing use exit() instead of _exit() when termiating saving children. 2012-04-07 12:11:23 +02:00
Premysl Hruby
c35b4e845b add support for generation of lcov coverage reports 2012-04-05 12:23:35 +02:00
antirez
9510d65dc8 CRC64 implementation added to Redis code base. 2012-04-02 12:31:44 +02:00
antirez
c5166e3fc5 First implementation of --test-memory. Still a work in progress. 2012-03-16 17:17:39 +01:00
antirez
64b4c33c0b Build dependencies updated. 2012-03-10 12:40:03 +01:00
antirez
120a36f22b 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
7a3e372025 endian.c/h -> endianconv.c/h to avoid issues with broken libraries search paths. 2012-02-14 16:11:46 +01:00
antirez
ac834d237a A few small BSD related fixes. 2012-02-08 22:24:59 +01:00
Pieter Noordhuis
42c6a5da3d Don't force rebuild when params didn't change 2011-11-16 17:49:06 +01:00
Pieter Noordhuis
5bb2c88e94 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
4b8a63941d 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
321a0440c0 Use CCLINK as last argument 2011-11-15 09:39:38 -08:00
Pieter Noordhuis
61c0e893aa CCLINK already includes ALLOC_LINK 2011-11-15 09:36:13 -08:00
antirez
b28d0461b4 32bit build fixed, broken by a previous commit fixing build on Solaris 2011-11-08 21:00:52 +01:00
Ben Noordhuis
b83e95830f build: fix sunos build, compile lua with __C99FEATURES__=1 2011-10-30 03:20:00 +00:00
antirez
0bb5160cb0 Revert "Use the new install script as make install target. Message about install script requiring root changed a bit to make it more evident."
After talking with Pieter he changed my mind about this, it is better to
have a simpler install script that works everywhere, and the complex one
can be always executed if needed by hand. We'll make possibly a new
target for the full featured installation script, and even suggest it
after a Make install.

This reverts commit f1e60d7530.
2011-10-03 16:04:44 +02:00
antirez
f1e60d7530 Use the new install script as make install target. Message about install script requiring root changed a bit to make it more evident. 2011-10-03 13:28:54 +02:00
antirez
e108bab043 Lua math.random and math.randomseed replaced with our own version based on redisSrand48(). Seed initialized to the same value at every EVAL/EVALSHA call. 2011-09-23 15:40:58 +02:00
antirez
cbdac04a5e libc neutral random function derived from a drand48() implementation added. Will be used to replace Lua's math.random implementation. 2011-09-23 14:51:48 +02:00
antirez
f9c6f39b2b merge conflicts resolved 2011-09-22 15:15:26 +02:00
antirez
b147cb9e1a debug message removed 2011-09-13 16:53:33 +02:00
antirez
02925dd96e bio.o added to redis-server objects 2011-09-13 15:59:48 +02:00
Pieter Noordhuis
4d6bf65c42 Wait for Lua to be built before linking redis-server 2011-07-27 14:47:02 +02:00
antirez
f790bd028c Added a 'runtest' script that is responsible to check if Tcl is available and run the test. This is invoked from Makefile as well. 2011-07-15 17:20:57 +02:00
antirez
319bb48c01 top level Makefile now just a proxy. Doing make clean inside src now does a full clean including deps, not just Redis source. Thanks to Pieter for the top level Makefile proxy trick. 2011-07-13 19:15:22 +02:00
antirez
331bf3292f when building redis-server use LINK and not CC as prefix in the output 2011-07-12 12:58:32 +02:00
antirez
0681c5ad84 master branch merged into scripting. 2011-07-12 12:39:16 +02:00
antirez
e6fcb5b30d make test depends on redis-check-aof as well. 2011-07-11 14:48:45 +02:00
antirez
6b91a11e3e removed --file argument from test invocation inside Makefile 2011-07-11 13:46:09 +02:00
antirez
52c863ddac use tclsh8.5 not only in which but also in the actual test execution. 2011-07-11 11:18:46 +02:00
antirez
d4edba6f43 explicitly use tclsh8.5 to run the test 2011-07-11 11:17:05 +02:00
antirez
daa70b1798 First implementation of the slow log feature 2011-06-30 13:27:32 +02:00
antirez
994ed2bc55 unstable merge conflicts resolved 2011-06-25 12:29:24 +02:00
antirez
d5b36c5114 Merge remote branch 'origin/unstable' into unstable 2011-06-25 12:22:59 +02:00
antirez
c9d0c3623a diskstore removed 2011-06-25 12:22:03 +02:00
Salvatore Sanfilippo
a004de0f15 Merge pull request #63 from djanowski/tcl
Add warning when `tcl` is not available to run tests
2011-06-24 09:59:37 -07:00
Damian Janowski
b3bc4452d2 Avoid bug reports when Tcl is not installed. 2011-06-24 13:56:06 -03:00
antirez
3e2a0bf44a Makefile deps updated 2011-06-20 11:58:54 +02:00
antirez
e93d36a638 It is now possible to build with: make 32bit USE_JEMALLOC=yes 2011-06-20 11:54:57 +02:00
antirez
7d9ba15669 Added -ldl when linking against jemalloc, needed on Linux 2011-06-20 11:54:35 +02:00
antirez
9e62dc17da Makefile modified to build with jemalloc 2011-06-20 11:52:15 +02:00
antirez
0d1650f8a9 Updated to unstable 2011-06-14 18:06:39 +02:00
Hampus Wessman
db6cea11c4 Fix Makefile colors.
echo with escape sequences isn't portable. Use printf instead.
2011-06-09 16:38:18 +02:00
antirez
73e718675b Better colorized Makefile implementation, inspired by git makefile 2011-06-08 17:09:18 +02:00
antirez
7585836e6e Lua function creation on EVAL, basic Lua return type to Redis protocol convertion done. 2011-05-25 12:32:43 +02:00
antirez
21d3294c70 makefile adapted to link against lua lib and to pass the 32bit flag to Lua building system 2011-05-25 12:32:43 +02:00
Pieter Noordhuis
2e4b0e7727 Abstract file/buffer I/O to support in-memory serialization 2011-05-13 17:31:00 +02:00
Pieter Noordhuis
5d08193126 Tests for string2ll; move isObject* to object.c 2011-05-05 16:26:50 +02:00
Pieter Noordhuis
5282562117 More allocators 2011-05-05 16:25:48 +02:00
antirez
35845afba0 Better pretty printed makefile output 2011-05-04 10:17:05 +02:00
antirez
0d8f1ac359 initial pretty printing in makefile 2011-05-04 09:32:32 +02:00
antirez
996d503d1a ASCII ART FTW 2011-04-13 10:58:21 +02:00
antirez
ecc9109434 Cluster branch merged to unstable. 2011-03-29 17:51:15 +02:00
antirez
336c82d583 zipmaps are now endianess agnostic, needed for on disk serialization of zipmaps without convertions layers 2011-03-09 17:31:02 +01:00
antirez
6eaad66373 Merge branch 'master' into unstable 2011-01-04 19:07:15 +01:00
antirez
33388d4304 added diskstore.c in Makefile and prototypes in redis.h 2010-12-28 14:42:09 +01:00
Pieter Noordhuis
ba55932674 Solaris doesn't support -rdynamic 2010-12-23 11:08:50 +00:00
Pieter Noordhuis
c8061392e1 Minor changes to Makefile 2010-12-15 12:48:12 +01:00
Pieter Noordhuis
a4e48b417d Don't hardcode make to "make" 2010-11-21 16:44:17 +01:00
antirez
11fd0c422b now redis-cli is able to show the Git SHA1 in the version output 2010-11-08 16:26:02 +01:00
antirez
240f8dbf3f build redis-server at the end so have a more pleasing to see Make output and the advice to run the test suite at the end. 2010-11-08 13:19:58 +01:00
antirez
be98a33b51 fixed compilation with 32bit target 2010-11-08 12:53:36 +01:00
Pieter Noordhuis
ec8f06675a Use hiredis from redis-benchmark 2010-11-04 13:37:05 +01:00
Pieter Noordhuis
e902b579b4 Import linenoise as dependency for redis-cli 2010-11-03 17:15:23 +01:00
Pieter Noordhuis
7fc4ce13ed Use hiredis from redis-cli 2010-11-03 16:09:38 +01:00
antirez
21dbc6499a merge conflict resolved 2010-10-28 22:59:47 +02:00
antirez
19e61097c5 synchronous I/O networking functions originally used just for replication refactored in a file as generally useful, they are used in the cluster branch for MIGRATE. 2010-10-24 16:22:52 +02:00
antirez
1a587ff843 Makefile typo fixed for tcmalloc option 2010-10-22 00:16:32 +02:00
antirez
13b3715925 reports if tcmalloc is in used in INFO output 2010-10-22 00:10:17 +02:00
antirez
0a802bd7a0 support for compiling with tcmalloc 2010-10-22 00:06:44 +02:00
Pieter Noordhuis
9f1ae9abee Allow to specify which specific test files to run 2010-10-13 09:26:44 +02:00
Pedro Melo
0997b4119d Fixed missed use of INSTALL_TOP
Thanks to sylr@github

Signed-off-by: Pedro Melo <melo@simplicidade.org>
2010-09-13 16:50:57 +01:00
Pedro Melo
e984050fb9 Make sure INSTALL_TOP exists before we install to it
Signed-off-by: Pedro Melo <melo@simplicidade.org>
2010-09-13 16:11:55 +01:00
Pedro Melo
e13865033d Rename INSTALL_TOP to PREFIX; update documentation
Signed-off-by: Pedro Melo <melo@simplicidade.org>
2010-09-13 16:09:11 +01:00
antirez
8fedd04dcc Makefile deps updated 2010-08-30 11:37:17 +02:00
Pieter Noordhuis
aaada3f962 Merge branch 'master' into intset-split
Conflicts:
	src/Makefile
	src/t_set.c
2010-08-20 12:40:55 +02:00
antirez
acc0185493 make install target, finally ;) 2010-07-06 19:07:16 +02:00
Pieter Noordhuis
96ffb2fe97 merged intset code into the split files 2010-07-02 19:57:12 +02:00
antirez
24110a4d7d Make log target fixed 2010-07-01 14:45:37 +02:00
antirez
e2641e09cc redis.c split into many different C files.
networking related stuff moved into networking.c

moved more code

more work on layout of source code

SDS instantaneuos memory saving. By Pieter and Salvatore at VMware ;)

cleanly compiling again after the first split, now splitting it in more C files

moving more things around... work in progress

split replication code

splitting more

Sets split

Hash split

replication split

even more splitting

more splitting

minor change
2010-07-01 14:38:51 +02:00