redis/src
antirez 3c25c4a691 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.
2012-04-17 13:05:09 +02:00
..
Makefile A few var names fixed in Makefile. 2012-04-13 16:13:56 +02:00
Makefile.dep Makefile.dep updated. 2012-04-11 12:12:30 +02:00
adlist.c Process async client checks like client timeouts and BLPOP timeouts incrementally using a circular list. 2012-03-13 18:05:11 +01:00
adlist.h Process async client checks like client timeouts and BLPOP timeouts incrementally using a circular list. 2012-03-13 18:05:11 +01:00
ae.c implement aeWait using poll(2). Fixes issue #267. 2012-04-06 11:47:17 +02:00
ae.h Max limit to 10k clients removed, this implements feature request on issue #194 2011-12-15 11:42:40 +01:00
ae_epoll.c ae_epoll.c typo introduced in the previous commit fixed. 2011-12-15 11:50:15 +01:00
ae_kqueue.c Max limit to 10k clients removed, this implements feature request on issue #194 2011-12-15 11:42:40 +01:00
ae_select.c
anet.c added explanation for the magic 511 backlog number 2012-04-11 17:04:31 +02:00
anet.h Added a config directive for a Unix socket mask 2011-10-10 11:21:15 -07:00
aof.c For coverage testing use exit() instead of _exit() when termiating saving children. 2012-04-07 12:11:23 +02:00
asciilogo.h
bio.c Mask SIGALRM everything but in the main thread. 2012-03-27 13:48:57 +02:00
bio.h REDIS_BIO_AOF_FSYNC implemented 2011-09-15 18:25:53 +02:00
cluster.c Minor MIGRATE implementation simplification about ttl handling. 2012-04-10 16:46:29 +02:00
config.c Stop access to global vars. Not configurable. 2012-04-13 13:26:59 +02:00
config.h Everything x86 is little endian 2012-04-11 11:03:30 +02:00
crc16.c Exact variant of CRC16 specified into crc16.c 2011-10-02 14:05:29 +02:00
crc64.c crc64.c modified for incremental computation. 2012-04-09 12:20:47 +02:00
db.c Never used function stringObjectEqualsMs() removed. 2012-04-07 02:10:48 +02:00
debug.c remove mentions of VM in comments 2012-04-02 11:56:03 +02:00
dict.c fix typo 2012-03-15 14:27:14 +08:00
dict.h Fix for hash table collision attack. We simply randomize hash table initialization value at startup time. 2012-01-21 23:30:13 +01:00
endianconv.c endian.c/h -> endianconv.c/h to avoid issues with broken libraries search paths. 2012-02-14 16:11:46 +01:00
endianconv.h Add stdint.h in endianconv.h to fix issue #336. 2012-02-15 12:21:04 +01:00
fmacros.h Compilation fixed on OpenBSD making sure that _XOPEN_SOURCE is set to 700 in fmacros.h 2011-09-29 10:20:03 +02:00
help.h redis-cli help.h updated. Script to generate it updated as well. 2012-04-03 15:30:33 +02:00
intset.c endian.c/h -> endianconv.c/h to avoid issues with broken libraries search paths. 2012-02-14 16:11:46 +01:00
intset.h
lzf.h
lzfP.h
lzf_c.c
lzf_d.c
memtest.c memtest.c: integer overflow fixed. 2012-04-12 11:49:52 +02:00
mkreleasehdr.sh
multi.c Support for read-only slaves. Semantical fixes. 2012-03-20 17:32:48 +01:00
networking.c New client info field added to CLIENT LIST output: multi, containing the length of the current pipeline. Test modified accordingly. 2012-04-07 11:14:52 +02:00
object.c remove mentions of VM in comments 2012-04-02 11:56:03 +02:00
pqsort.c
pqsort.h
pubsub.c Use less memory when emitting the protocol, by using more shared objects for commonly emitted parts of the protocol. 2012-02-04 08:58:37 +01:00
rand.c 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
rand.h Defined macro with bigger number that redisLrand48() can output. 2011-09-23 15:06:07 +02:00
rdb.c 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. 2012-04-10 15:47:10 +02:00
rdb.h RDB files now embed a crc64 checksum. Version of RDB bumped to 5. 2012-04-09 22:40:41 +02:00
redis-benchmark.c fix redis-benchmark memory leak 2012-02-26 10:01:27 +01:00
redis-check-aof.c redis-check-aof is now large files safe also on 32 bit systems. 2012-02-14 19:57:51 +01:00
redis-check-dump.c RDB4 support in redis-check-dump. 2012-03-10 12:38:42 +01:00
redis-cli.c Suppress warnings compiling redis-cli with certain gcc versions. 2012-03-19 19:28:49 +01:00
redis-trib.rb redis-trib: fix the MIGRATE call that now has milliseconds timeout (were seconds before). 2012-03-31 11:28:37 +02:00
redis.c Stop access to global vars. Not configurable. 2012-04-13 13:26:59 +02:00
redis.h Stop access to global vars. Not configurable. 2012-04-13 13:26:59 +02:00
release.c
replication.c syncio.c calls in replication.c fixed for the new millisecond timeout API. 2012-03-31 11:23:30 +02:00
rio.c Fixed compilation of new rio.c changes (typos and so forth.) 2012-04-09 12:36:44 +02:00
rio.h Make inline functions rioRead/Write/Tell static. This fixes issue #447. 2012-04-11 11:58:32 +02:00
scripting.c EVAL errors are more clear now. 2012-04-13 15:12:16 +02:00
sds.c sds.c: sdsAllocSize() function added. 2012-03-14 14:58:26 +01:00
sds.h sds.c: sdsAllocSize() function added. 2012-03-14 14:58:26 +01:00
sha1.c
sha1.h
slowlog.c Added an unique ID field to every slow log entry. 2011-06-30 17:36:15 +02:00
slowlog.h Added an unique ID field to every slow log entry. 2011-06-30 17:36:15 +02:00
solarisfixes.h
sort.c lookupKeyByPattern() used by SORT GET/BY rewritten. Fixes issue #460. 2012-04-17 13:05:09 +02:00
syncio.c Better syncio.c with millisecond resolution. 2012-03-31 11:21:45 +02:00
t_hash.c Replicate HINCRBYFLOAT as HSET. 2012-03-23 10:22:58 +01:00
t_list.c use server.unixtime instead of time(NULL) where possible (cluster.c not checked though) 2012-03-27 17:39:58 +02:00
t_set.c dict.c API names modified to be more coincise and consistent. 2011-11-08 17:07:55 +01:00
t_string.c Fixed undefined behavior in *INCR style functions overflow detection. Sorry clang! 2012-02-21 18:26:11 +01:00
t_zset.c zzlIsInRange() now is capable of handling empty sorted sets that may end inside the data set when loading very old RDB files produced by early-stage versions of Redis. 2012-02-22 09:52:10 +01:00
testhelp.h testhelp.h now exits with retcode 1 on failed tests. 2011-11-02 16:52:10 +01:00
util.c Merge conflicts resolved. 2012-03-09 22:07:45 +01:00
util.h string2* functions take a const pointer 2012-01-02 15:24:50 -08:00
valgrind.sup more valgrind friendly test 2011-07-06 15:22:00 +02:00
version.h Version 2.9.7. 2012-04-10 16:34:33 +02:00
ziplist.c Big endian fix. The bug was introduced because of a typo. 2012-03-23 12:42:20 +01:00
ziplist.h Implements ziplistFind 2012-01-03 16:13:42 -08:00
zipmap.c endian.c/h -> endianconv.c/h to avoid issues with broken libraries search paths. 2012-02-14 16:11:46 +01:00
zipmap.h
zmalloc.c define zlibc_free() in a way that is not shadowed by jemalloc. 2012-03-27 16:54:53 +02:00
zmalloc.h future-proof version comparison 2012-04-05 10:41:28 +02:00