antirez
acf41c96cb
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.
2012-04-18 11:37:14 +02:00
antirez
8ec9b03c6b
More robust maxclients test.
2012-04-18 11:34:18 +02:00
antirez
a5f8341245
Two small fixes to maxclients handling.
...
1) Don't accept maxclients set to < 0
2) Allow maxclients < 1024, it is useful for testing.
2012-04-18 11:31:24 +02:00
antirez
6a3f0ac68a
Added test for SORT corner case: pattern ending with just "->".
2012-04-17 16:28:59 +02:00
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
antirez
0705ff3f04
Less false positives in maxclients test, hopefully.
2012-04-17 10:04:42 +02:00
antirez
93a74949d7
Merge branch 'strict.lua' into unstable
2012-04-13 16:16:13 +02: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
13a21caae3
New test for scripting engine: DECR_IF_GT.
2012-04-13 15:23:32 +02:00
antirez
6f659f34cf
EVAL errors are more clear now.
2012-04-13 15:12:16 +02:00
antirez
3a02140415
Use Lua tostring() before concatenation.
2012-04-13 14:54:49 +02:00
antirez
3cd4ad267c
Tests modified to match the new global protection implementation.
2012-04-13 13:40:57 +02:00
antirez
d86c4a7bf0
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.
2012-04-13 13:36:08 +02:00
antirez
6663653f51
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.
2012-04-13 13:26:59 +02:00
antirez
c9edd1b28a
Globals protection global() function modified for speed and correctness.
2012-04-13 12:13:02 +02:00
antirez
2fd7c9efde
Tests for lua globals protection.
2012-04-13 11:48:45 +02:00
antirez
37b29ef2fa
Scripting: globals protection can now be switched on/off.
2012-04-13 11:23:45 +02:00
antirez
6e05f333a2
Print arch bits with redis-server -v
2012-04-12 11:50:18 +02:00
antirez
4c442e9d88
memtest.c: integer overflow fixed.
2012-04-12 11:49:52 +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
Salvatore Sanfilippo
0d83011a11
Merge pull request #449 from ErikDubbelboer/unstable
...
added explanation for the magic 511 backlog number
2012-04-11 09:25:44 -07:00
Erik Dubbelboer
815c06f2f7
added explanation for the magic 511 backlog number
2012-04-11 17:04:31 +02:00
antirez
ced068955d
Makefile.dep updated.
2012-04-11 12:12:30 +02:00
antirez
a470689d2e
make dep: redirect output to Makefile.dep.
2012-04-11 12:12:05 +02:00
antirez
c44ab51da1
Make inline functions rioRead/Write/Tell static. This fixes issue #447 .
2012-04-11 11:58:32 +02:00
antirez
d98b03b791
Macros ULONG_ONEZERO / ULONG_ZEROONE were inverted in #ifdef to test 32/64 bit arch.
2012-04-11 11:32:22 +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
Pieter Noordhuis
3f7438ef9b
Everything x86 is little endian
2012-04-11 11:03:30 +02:00
antirez
f2f2ba1b3a
Comment typo fixed. Clusetr -> Cluster.
2012-04-11 10:57:02 +02:00
antirez
0b913c650d
Check write(2) return value to avoid warnings, because in this context failing write is not critical.
2012-04-10 16:48:28 +02:00
antirez
a3fb7fd4f6
Minor MIGRATE implementation simplification about ttl handling.
2012-04-10 16:46:29 +02:00
antirez
0882715710
Version 2.9.7.
2012-04-10 16:34:33 +02:00
antirez
84bcd3aa24
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
antirez
82e32055d8
RDB files now embed a crc64 checksum. Version of RDB bumped to 5.
2012-04-09 22:40:41 +02:00
antirez
8491f1d9fd
Fixed compilation of new rio.c changes (typos and so forth.)
2012-04-09 12:36:44 +02:00
antirez
46738646d4
dump/restore fixed to use the new crc64 API.
2012-04-09 12:33:57 +02:00
antirez
736b7c3f04
Add checksum computation to rio.c
2012-04-09 12:33:09 +02:00
antirez
88c1d9550d
crc64.c modified for incremental computation.
2012-04-09 12:20:47 +02:00
antirez
5a181d43cb
rio.c file somewhat documented so that the casual reader can understand what's going on without reading the code.
2012-04-09 11:11:00 +02:00
antirez
a3af8d8e49
Test for maxclients.
2012-04-08 11:16:40 +02:00
antirez
69e7958918
Added new test to check that "CONFIG appendonly no" actually kills the background AOF operation in progress if any.
2012-04-07 13:22:04 +02:00
antirez
2cbdab903f
For coverage testing use exit() instead of _exit() when termiating saving children.
2012-04-07 12:11:23 +02:00
antirez
4ce22375f4
Tests for MONITOR.
2012-04-07 11:26:24 +02:00
antirez
09f66a0be8
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
antirez
4cb8bb2952
Never used function stringObjectEqualsMs() removed.
2012-04-07 02:10:48 +02:00
antirez
f02aa7bb79
Removed dead code: function rdbSaveTime() is no longer used since RDB now saves expires in milliseconds.
2012-04-07 02:03:29 +02:00
antirez
0daf7a2d16
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.
2012-04-06 23:52:53 +02:00
antirez
ff79ab71db
redis.tcl: no longer leave unread replies if an error happens during a MULTI/EXEC block.
2012-04-06 23:52:28 +02:00
antirez
618a922957
New INFO field in persistence section: bgrewriteaof_scheduled.
2012-04-06 21:12:50 +02:00