antirez
cd4e0f43df
Extend memory unit support in CONFIG SET.
...
Related to PR #2357 .
2015-02-12 16:51:20 +01:00
Salvatore Sanfilippo
866b3fc0ec
Merge pull request #2357 from lamby/config-set-maxmemory-units
...
Support "1G" etc. units in CONFIG SET maxmemory
2015-02-12 16:42:09 +01:00
antirez
29b54db320
Better memtoll() error checking.
...
Related to PR #2357 .
2015-02-12 16:40:46 +01:00
antirez
a1d9ec0d44
SPOP replication tests.
2015-02-11 10:52:28 +01:00
antirez
dffbbb5a78
SPOP explicit tests for the three different code paths.
2015-02-11 10:52:28 +01:00
antirez
a37d0f8b48
SPOP with count: fix replication for code path #3 .
2015-02-11 10:52:28 +01:00
antirez
9feee428f2
SPOP: reimplemented for speed and better distribution.
...
The old version of SPOP with "count" argument used an API call of dict.c
which was actually designed for a different goal, and was not capable of
good distribution. We follow a different three-cases approach optimized
for different ratiion between sets and requested number of elements.
The implementation is simpler and allowed the removal of a large amount
of code.
2015-02-11 10:52:28 +01:00
antirez
55003f7a11
alsoPropagate: handle REDIS_CALL_PROPAGATE and AOF loading.
2015-02-11 10:52:28 +01:00
antirez
cc7f0434b5
Change alsoPropagate() behavior to make it more usable.
...
Now the API automatically creates its argv copy and increment ref count
of passed objects.
2015-02-11 10:52:27 +01:00
antirez
6b5922dcbb
SPOP with count: initial fixes to the implementation.
...
Severan problems are addressed but still a few missing.
Since replication of this command was more complex than others since it
needs to replicate multiple SREM commands, an old API able to do this
was reused (it was taken inside the implementation since it was pretty
obvious soon or later that would be useful). The API was improved a bit
so that now a command may opt-out for the standard command replication
when the server.dirty counter is incremented, in order to "manually"
replicate what it wants.
2015-02-11 10:52:27 +01:00
antirez
585d1a60bf
Separate latency monitoring of eviction loop and eviction DELs.
2015-02-11 10:52:27 +01:00
antirez
8ddc14523f
dict.c: reset emptylen when bucket is not empty.
...
Fixed by @oranagra, thank you.
2015-02-11 10:52:27 +01:00
antirez
edda00b902
dict.c Rehashing visualization code snippet added to utils.
2015-02-11 10:52:27 +01:00
antirez
05841a6386
redis-cli --stat: show LOAD when loading.
2015-02-11 10:52:27 +01:00
antirez
8696874d75
Remove optional single-key path from evictionPoolPopulate().
2015-02-11 10:52:27 +01:00
antirez
5792a217f8
dict.c: add dictGetSomeKeys(), specialized for eviction.
2015-02-11 10:52:27 +01:00
antirez
f25fdd6246
dict.c: avoid code repetition in dictRehash().
...
Avoid code repetition introduced with PR #2367 , also fixes the return
value to always return 0 if there is nothing more to rehash.
2015-02-11 10:52:27 +01:00
Sun He
2385630d0d
dict.c/dictRehash: check again to update
2015-02-11 10:52:26 +01:00
antirez
4f427bc298
dict.c: don't try buckets that are empty for sure in dictGetRandomKey().
...
This is very similar to the optimization applied to dictGetRandomKeys,
but applied to the single key variant.
Related to issue #2306 .
2015-02-11 10:52:26 +01:00
antirez
1bcf67a75f
dict.c: dictGetRandomKeys() optimization for big->small table case.
...
Related to issue #2306 .
2015-02-11 10:52:26 +01:00
antirez
88cd9ebc09
dict.c: dictGetRandomKeys() visit pattern optimization.
...
We use the invariant that the original table ht[0] is never populated up
to the index before the current rehashing index.
Related to issue #2306 .
2015-02-11 10:52:26 +01:00
antirez
cd0fcf11e7
dict.c: put a bound to max work dictRehash() call can do.
...
Related to issue #2306 .
2015-02-11 10:52:26 +01:00
antirez
777020839a
dict.c: prevent useless resize to same size.
...
Related to issue #2306 .
2015-02-11 10:52:26 +01:00
antirez
170e41464d
Less blocking dictGetRandomKeys().
...
Related to issue #2306 .
2015-02-11 10:52:26 +01:00
antirez
5e3dcc522b
Faster memory efficiency test.
...
This test on Linux was extremely slow, since in Tcl we can't enable
easily tcp-nodelay, so the busy loop used to take *a lot* with bigger
writes. Fixed using pipelining.
2015-02-10 14:47:45 +01:00
antirez
e1fce55237
Added regression test for issue #2371 .
2015-02-10 14:40:27 +01:00
antirez
9e9abe29fe
HAVE_SYNC_FILE_RANGE should be protected by ifdef __linux__.
...
Related to issue #2372 .
2015-02-10 09:29:14 +01:00
Salvatore Sanfilippo
50a57c67b2
Merge pull request #2372 from mariano-perez-rodriguez/patch-2
...
Fix HAVE_BACKTRACE on Linux
2015-02-10 09:27:46 +01:00
antirez
bd128f7969
redis-cli --lru-test implemented (cache workload simulator).
2015-02-09 11:06:55 +01:00
antirez
ca23b2a6b7
redis-cli: interactive reconnection for latency modes.
...
--stat mode already used to reconnect automatically if the server is no
longer available. This is useful since this is an interactive mode used
for debugging, however the same applies to --latency and --latency-dist
modes, so now both use the reconnecting command execution as well.
The reconnection code was modified to use basic VT100 escape sequences
in order to play better with different kinds of output on the screen
when the reconnection happens, and to hide the reconnection attempt
output when finally the reconnection happens.
2015-02-08 23:28:27 +01:00
antirez
cfe21852e7
redis-cli --latecy-dist reverted to gray scale.
...
So far not able to find a color palette within the 256 colors which is
not confusing. However I believe it is a possible task, so will try
better later.
2015-02-08 17:39:42 +01:00
antirez
2723412b7b
redis-cli --latency-dist now uses a color palette.
...
Still not happy with the result but low grays are hard to see in certain
monitors with a non perfect gamma.
2015-02-07 20:15:40 +01:00
antirez
ace1acc532
redis-cli latency dist: add new top HL.
2015-02-07 18:06:14 +01:00
Mariano Pérez Rodríguez
c83a739bd8
Fix for #2371
...
Fixing #2371 as per @mattsta's suggestion
2015-02-07 14:02:33 -03:00
antirez
414df143f5
Add missing latency-dest legend symbol.
2015-02-07 15:05:40 +01:00
antirez
2860cf4139
Initial implementation of redis-cli --latency-dist.
2015-02-07 15:00:38 +01:00
Chris Lamb
ba74711e06
Support "1G" etc. units in CONFIG SET maxmemory
...
Signed-off-by: Chris Lamb <chris@chris-lamb.co.uk>
2015-02-04 18:36:38 +00:00
antirez
2ac7b5a8b4
Fix RDB corruption test after server behavior change.
2015-02-04 11:53:19 +01:00
antirez
78dd2b313e
Merge branch 'unstable' of github.com:/antirez/redis into unstable
2015-02-04 11:26:31 +01:00
antirez
c5dd686ecb
Replication: put server.master client creation into separated function.
2015-02-04 11:26:20 +01:00
antirez
719c6c2b96
Suppress sign warning in sort.c.
...
Related to #2346 .
2015-02-03 15:42:56 +01:00
antirez
96abf65900
Hopefully better sort.c optimization comments.
...
Related to #2346 .
2015-02-03 15:38:21 +01:00
Salvatore Sanfilippo
5fbb36f9e7
Merge pull request #2346 from sunheehnus/sort
...
Little optimization & bug fix in sort.c
2015-02-03 15:32:38 +01:00
antirez
1dbd8e94a7
More obvious indentation in setCommand().
2015-02-03 14:17:06 +01:00
antirez
51010007bc
Merge branch 'unstable' of git://github.com/mihirvj/redis into set-pr
2015-02-03 14:13:30 +01:00
antirez
fad758b322
Check RDB automatically in a few more cases.
2015-02-03 10:33:05 +01:00
antirez
7d1e158084
Handle redis-check-rdb as a standalone program.
...
This also makes it backward compatible in the usage, but for the command
name. However the old command name was less obvious so it is worth to
break it probably.
With the new setup the program main can perform argument parsing and
everything else useful for an RDB check regardless of the Redis server
itself.
2015-02-03 10:25:01 +01:00
antirez
45102a6f63
Norrow backtrace and setproctitle() to Linux+glibc.
...
Backtrace is a glibc extension, while setproctitle() implementation
depends on the memory layout and is partially libc dependent.
2015-02-03 10:09:21 +01:00
antirez
128c642d05
Ignore config.sh inside create-cluster script dir.
2015-02-03 09:34:20 +01:00
Salvatore Sanfilippo
cdc0e9bfb5
Merge pull request #2318 from mattcollier/patch-1
...
Fix redis-cli CSV NIL output
2015-02-02 22:47:57 +01:00