]>
git.saurik.com Git - redis.git/log
antirez [Tue, 24 Apr 2012 17:14:03 +0000 (19:14 +0200)]
Explicitly use bash for install_server.sh. Fixes issue #397
antirez [Tue, 24 Apr 2012 17:05:27 +0000 (19:05 +0200)]
redis-check-dump now is RDB version 6 ready.
antirez [Tue, 24 Apr 2012 15:15:21 +0000 (17:15 +0200)]
Spurious debugging printf removed.
antirez [Tue, 24 Apr 2012 14:54:07 +0000 (16:54 +0200)]
Added two new encodings to ziplist.c
1) One integer "immediate" encoding that can encode from 0 to 12 in the
encoding byte itself.
2) One 8 bit signed integer encoding that can encode 8 bit signed small
integers in a single byte.
The idea is to exploit all the not used bits we have around in a
backward compatible way.
antirez [Tue, 24 Apr 2012 10:53:30 +0000 (12:53 +0200)]
rdbLoad() should check REDIS_RDB_VERSION instead of hardcoded number.
antirez [Tue, 24 Apr 2012 10:51:59 +0000 (12:51 +0200)]
ziplist.c: added comments about the new 24 bit encoding.
Grisha Trubetskoy [Fri, 20 Apr 2012 14:38:42 +0000 (10:38 -0400)]
Add a 24bit integer to ziplists to save one byte for ints that can
fit in 24 bits (thanks to antirez for catching and solving the two's compliment
bug).
Increment REDIS_RDB_VERSION to 6
antirez [Tue, 24 Apr 2012 09:11:55 +0000 (11:11 +0200)]
A few compiler warnings suppressed.
antirez [Tue, 24 Apr 2012 09:07:15 +0000 (11:07 +0200)]
Fix and refactoring of code used to get registers on crash.
This fixes compilation on FreeBSD (and possibly other systems) by
not using ucontext_t at all if HAVE_BACKTRACE is not defined.
Also the ifdefs to get the registers are modified to explicitly test for the
operating system in the first level, and the arch in the second level
of nesting.
antirez [Mon, 23 Apr 2012 15:27:39 +0000 (17:27 +0200)]
Ziplist encoding now tested with negative integers as well.
antirez [Mon, 23 Apr 2012 08:57:43 +0000 (10:57 +0200)]
New time limit for protocol desync test set to 30 seconds to reduce false positives.
antirez [Mon, 23 Apr 2012 08:43:24 +0000 (10:43 +0200)]
Remove loadfile() access from the scripting engine.
Michael Schlenker [Tue, 17 Apr 2012 20:20:54 +0000 (22:20 +0200)]
Replace unnecessary calls to echo and cat
Tcl's exec can send data to stdout itself, no need to call cat/echo for
that usually.
antirez [Sat, 21 Apr 2012 19:49:21 +0000 (21:49 +0200)]
Even inside #if 0 comments are comments.
antirez [Sat, 21 Apr 2012 17:20:03 +0000 (19:20 +0200)]
Limit memory used by big SLOWLOG entries.
Two limits are added:
1) Up to SLOWLOG_ENTRY_MAX_ARGV arguments are logged.
2) Up to SLOWLOG_ENTRY_MAX_STRING bytes per argument are logged.
3) slowlog-max-len is set to 128 by default (was 1024).
The number of remaining arguments / bytes is logged in the entry
so that the user can understand better the nature of the logged command.
antirez [Thu, 19 Apr 2012 22:04:07 +0000 (00:04 +0200)]
redis.conf AOF section comments improved.
antirez [Sat, 21 Apr 2012 10:08:26 +0000 (12:08 +0200)]
README now makes clear that our support for solaris derived systems is "best effort".
antirez [Thu, 19 Apr 2012 21:49:33 +0000 (23:49 +0200)]
New tests related to scripts max execution time.
antirez [Thu, 19 Apr 2012 21:35:15 +0000 (23:35 +0200)]
SHUTDOWN NOSAVE now can stop a non returning script. Issue #466.
antirez [Wed, 18 Apr 2012 21:56:07 +0000 (23:56 +0200)]
Currenly not used code in dict.c commented out.
antirez [Wed, 18 Apr 2012 21:50:16 +0000 (23:50 +0200)]
Tests for scripting PRNG.
antirez [Wed, 18 Apr 2012 21:41:00 +0000 (23:41 +0200)]
cr16.c removed from 2.6 branch, was not used.
antirez [Wed, 18 Apr 2012 18:53:37 +0000 (20:53 +0200)]
redis-cli --bigkeys output modified to be simpler to read..
antirez [Wed, 18 Apr 2012 18:33:02 +0000 (20:33 +0200)]
redis-cli --bigkeys
antirez [Wed, 18 Apr 2012 16:13:31 +0000 (18:13 +0200)]
Test SDIFF with first set empty.
antirez [Wed, 18 Apr 2012 16:10:48 +0000 (18:10 +0200)]
Test SINTER against same integer elements, but different set encoding.
antirez [Wed, 18 Apr 2012 16:05:02 +0000 (18:05 +0200)]
Test SINTER with non existing key.
antirez [Wed, 18 Apr 2012 16:00:12 +0000 (18:00 +0200)]
Added an SMOVE test where src and dest key are the same.
antirez [Wed, 18 Apr 2012 15:56:17 +0000 (17:56 +0200)]
New hash fuzzing test.
antirez [Wed, 18 Apr 2012 15:38:02 +0000 (17:38 +0200)]
Document mostly dead code in RPOPLPUSH implementation.
antirez [Wed, 18 Apr 2012 15:32:48 +0000 (17:32 +0200)]
Explicit RPOP/LPOP tests.
antirez [Wed, 18 Apr 2012 15:22:14 +0000 (17:22 +0200)]
Test LINSERT syntax error.
antirez [Wed, 18 Apr 2012 15:17:53 +0000 (17:17 +0200)]
Test LINDEX out of range index.
Salvatore Sanfilippo [Wed, 18 Apr 2012 14:26:36 +0000 (07:26 -0700)]
Merge pull request #455 from pietern/2.6-mkopts
Persist Makefile flags (2.6)
antirez [Wed, 18 Apr 2012 09:37:14 +0000 (11:37 +0200)]
Marginally cleaner lookupKeyByPattern() implementation.
just fieldobj itself as sentinel of the fact a field object is used or
not, instead of using the filed length, that may be confusing both for
people and for the compiler emitting a warning.
antirez [Wed, 18 Apr 2012 09:34:18 +0000 (11:34 +0200)]
More robust maxclients test.
antirez [Wed, 18 Apr 2012 09:31:24 +0000 (11:31 +0200)]
Two small fixes to maxclients handling.
1) Don't accept maxclients set to < 0
2) Allow maxclients < 1024, it is useful for testing.
antirez [Tue, 17 Apr 2012 14:28:50 +0000 (16:28 +0200)]
Added test for SORT corner case: pattern ending with just "->".
antirez [Tue, 17 Apr 2012 11:05:09 +0000 (13:05 +0200)]
lookupKeyByPattern() used by SORT GET/BY rewritten. Fixes issue #460.
lookupKeyByPattern() was implemented with a trick to speedup the lookup
process allocating two fake Redis obejcts on the stack. However now that
we propagate expires to the slave as DEL operations the lookup of the
key may result into a call to expireIfNeeded() having the stack
allocated object as argument, that may in turn use it to create the
protocol to send to the slave. But since this fake obejcts are
inherently read-only this is a problem.
As a side effect of this fix there are no longer size limits in the
pattern to be used with GET/BY option of SORT.
See https://github.com/antirez/redis/issues/460 for bug details.
antirez [Tue, 17 Apr 2012 08:04:42 +0000 (10:04 +0200)]
Less false positives in maxclients test, hopefully.
Pieter Noordhuis [Sat, 14 Apr 2012 00:50:38 +0000 (17:50 -0700)]
Persist `make` settings and trigger rebuild if anything changes
Pieter Noordhuis [Sat, 14 Apr 2012 00:46:28 +0000 (17:46 -0700)]
Don't set flags recursively
Pieter Noordhuis [Sat, 14 Apr 2012 00:44:34 +0000 (17:44 -0700)]
Remove unused LIBS variable
Pieter Noordhuis [Sat, 14 Apr 2012 00:43:06 +0000 (17:43 -0700)]
First set defaults, then do composition
Pieter Noordhuis [Sat, 14 Apr 2012 00:41:40 +0000 (17:41 -0700)]
Question mark assignment is not needed
Pieter Noordhuis [Sat, 14 Apr 2012 00:38:29 +0000 (17:38 -0700)]
Ignore gcov/lcov artifacts
Pieter Noordhuis [Sat, 14 Apr 2012 00:38:12 +0000 (17:38 -0700)]
The lcov target shouldn't clean
This is not needed because every change in compiler/linker flags
triggers a cleanup.
Pieter Noordhuis [Sat, 14 Apr 2012 00:34:31 +0000 (17:34 -0700)]
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.
antirez [Fri, 13 Apr 2012 13:23:32 +0000 (15:23 +0200)]
New test for scripting engine: DECR_IF_GT.
antirez [Fri, 13 Apr 2012 13:12:16 +0000 (15:12 +0200)]
EVAL errors are more clear now.
antirez [Fri, 13 Apr 2012 12:54:49 +0000 (14:54 +0200)]
Use Lua tostring() before concatenation.
antirez [Fri, 13 Apr 2012 11:40:57 +0000 (13:40 +0200)]
Tests modified to match the new global protection implementation.
antirez [Fri, 13 Apr 2012 11:36:08 +0000 (13:36 +0200)]
mt.declared is no longer needed.
Lua global protection can now be simpified becuase we no longer have the
global() function. It's useless to occupy memory with this table, it is
also not faster because the metamethods we use are only called when a
global object does not exist or we are trying to create it from a
script.
antirez [Fri, 13 Apr 2012 11:26:59 +0000 (13:26 +0200)]
Stop access to global vars. Not configurable.
After considering the interaction between ability to delcare globals in
scripts using the 'global' function, and the complexities related to
hanlding replication and AOF in a sane way with globals AND ability to
turn protection On and Off, we reconsidered the design. The new design
makes clear that there is only one good way to write Redis scripts, that
is not using globals. In the rare cases state must be retained across
calls a Redis key can be used.
antirez [Fri, 13 Apr 2012 10:13:02 +0000 (12:13 +0200)]
Globals protection global() function modified for speed and correctness.
antirez [Fri, 13 Apr 2012 09:48:45 +0000 (11:48 +0200)]
Tests for lua globals protection.
antirez [Fri, 13 Apr 2012 09:16:50 +0000 (11:16 +0200)]
Scripting: globals protection can now be switched on/off.
antirez [Thu, 29 Mar 2012 10:02:28 +0000 (12:02 +0200)]
Protect globals access in Lua scripting.
antirez [Fri, 13 Apr 2012 14:13:56 +0000 (16:13 +0200)]
A few var names fixed in Makefile.
I modified it for error in a previous commit doing search & replace.
antirez [Thu, 12 Apr 2012 09:50:18 +0000 (11:50 +0200)]
Print arch bits with redis-server -v
antirez [Thu, 12 Apr 2012 09:49:52 +0000 (11:49 +0200)]
memtest.c: integer overflow fixed.
antirez [Thu, 12 Apr 2012 09:51:58 +0000 (11:51 +0200)]
Make gcov fixed.
antirez [Thu, 12 Apr 2012 09:09:38 +0000 (11:09 +0200)]
Makefile now introduces Redis-specific CFLAGS / LDFLAGS. Gcov target fixed. Added comments to describe how it works.
Erik Dubbelboer [Wed, 11 Apr 2012 15:04:31 +0000 (17:04 +0200)]
added explanation for the magic 511 backlog number
antirez [Wed, 11 Apr 2012 10:12:30 +0000 (12:12 +0200)]
Makefile.dep updated.
antirez [Wed, 11 Apr 2012 10:12:05 +0000 (12:12 +0200)]
make dep: redirect output to Makefile.dep.
antirez [Wed, 11 Apr 2012 09:58:32 +0000 (11:58 +0200)]
Make inline functions rioRead/Write/Tell static. This fixes issue #447.
antirez [Wed, 11 Apr 2012 09:32:22 +0000 (11:32 +0200)]
Macros ULONG_ONEZERO / ULONG_ZEROONE were inverted in #ifdef to test 32/64 bit arch.
Pieter Noordhuis [Sun, 25 Mar 2012 02:25:03 +0000 (19:25 -0700)]
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.
Pieter Noordhuis [Sun, 25 Mar 2012 02:33:08 +0000 (19:33 -0700)]
Everything x86 is little endian
antirez [Tue, 10 Apr 2012 14:46:29 +0000 (16:46 +0200)]
Minor MIGRATE implementation simplification about ttl handling.
antirez [Tue, 10 Apr 2012 14:48:28 +0000 (16:48 +0200)]
Check write(2) return value to avoid warnings, because in this context failing write is not critical.
antirez [Tue, 10 Apr 2012 14:34:51 +0000 (16:34 +0200)]
Version 2.5.6.
antirez [Sun, 8 Apr 2012 09:16:40 +0000 (11:16 +0200)]
Test for maxclients.
antirez [Mon, 9 Apr 2012 10:33:57 +0000 (12:33 +0200)]
dump/restore fixed to use the new crc64 API.
antirez [Tue, 10 Apr 2012 13:47:10 +0000 (15:47 +0200)]
It is now possible to enable/disable RDB checksum computation from redis.conf or via CONFIG SET/GET. Also CONFIG SET support added for rdbcompression as well.
antirez [Mon, 9 Apr 2012 20:40:41 +0000 (22:40 +0200)]
RDB files now embed a crc64 checksum. Version of RDB bumped to 5.
antirez [Mon, 9 Apr 2012 10:36:44 +0000 (12:36 +0200)]
Fixed compilation of new rio.c changes (typos and so forth.)
antirez [Mon, 9 Apr 2012 10:33:09 +0000 (12:33 +0200)]
Add checksum computation to rio.c
antirez [Mon, 9 Apr 2012 10:20:47 +0000 (12:20 +0200)]
crc64.c modified for incremental computation.
antirez [Mon, 9 Apr 2012 09:11:00 +0000 (11:11 +0200)]
rio.c file somewhat documented so that the casual reader can understand what's going on without reading the code.
antirez [Sat, 7 Apr 2012 11:22:04 +0000 (13:22 +0200)]
Added new test to check that "CONFIG appendonly no" actually kills the background AOF operation in progress if any.
antirez [Sat, 7 Apr 2012 10:11:23 +0000 (12:11 +0200)]
For coverage testing use exit() instead of _exit() when termiating saving children.
antirez [Sat, 7 Apr 2012 09:26:24 +0000 (11:26 +0200)]
Tests for MONITOR.
antirez [Sat, 7 Apr 2012 09:14:52 +0000 (11:14 +0200)]
New client info field added to CLIENT LIST output: multi, containing the length of the current pipeline. Test modified accordingly.
antirez [Sat, 7 Apr 2012 00:10:48 +0000 (02:10 +0200)]
Never used function stringObjectEqualsMs() removed.
antirez [Sat, 7 Apr 2012 00:03:29 +0000 (02:03 +0200)]
Removed dead code: function rdbSaveTime() is no longer used since RDB now saves expires in milliseconds.
antirez [Fri, 6 Apr 2012 21:52:53 +0000 (23:52 +0200)]
Two new tests for BGREWRTIEAOF.
Check for scheduled rewrite if a BGSAVAE is in progress.
Check for error if a rewrite is already in progress.
antirez [Fri, 6 Apr 2012 21:52:28 +0000 (23:52 +0200)]
redis.tcl: no longer leave unread replies if an error happens during a MULTI/EXEC block.
antirez [Fri, 6 Apr 2012 19:12:50 +0000 (21:12 +0200)]
New INFO field in persistence section: bgrewriteaof_scheduled.
antirez [Fri, 6 Apr 2012 10:27:31 +0000 (12:27 +0200)]
version bumped to 2.5.5
jokea [Fri, 6 Jan 2012 10:56:07 +0000 (18:56 +0800)]
implement aeWait using poll(2). Fixes issue #267.
antirez [Thu, 5 Apr 2012 13:52:08 +0000 (15:52 +0200)]
expireGenericCommand(): better variable names and a top-comment that describes the function's behavior.
Premysl Hruby [Wed, 28 Mar 2012 09:48:36 +0000 (11:48 +0200)]
for (p)expireat use absolute time, without double recomputation
Premysl Hruby [Wed, 28 Mar 2012 10:03:32 +0000 (12:03 +0200)]
fix mstime() ommited while comparing if key is already expired
Premysl Hruby [Wed, 4 Apr 2012 17:17:32 +0000 (19:17 +0200)]
add support for generation of lcov coverage reports
Premysl Hruby [Thu, 5 Apr 2012 06:25:22 +0000 (08:25 +0200)]
future-proof version comparison
antirez [Wed, 4 Apr 2012 17:54:23 +0000 (19:54 +0200)]
On slow computers, 10 seconds are not enough for this heavy replication test.
Premysl Hruby [Tue, 3 Apr 2012 15:40:31 +0000 (17:40 +0200)]
allocate alternate signal stack, change of sigaction flags for sigterm
Premysl Hruby [Tue, 3 Apr 2012 12:18:35 +0000 (14:18 +0200)]
in kill_server send the signal once, then wait for up to 5sec before sending lethal SIGKILL