antirez
a54d9805ee
Merge branch 'unstable' of github.com:antirez/redis into unstable
2011-04-13 10:39:06 +02:00
antirez
1087227d41
redis-trib: show list of commands
2011-04-13 10:38:56 +02:00
antirez
744f34d834
redis-trib can now assign hash slots to initialize a cluster. Next step is to join the cluster.
2011-04-12 17:06:33 +02:00
antirez
d415f9ff41
Merge branch 'unstable' of github.com:antirez/redis into unstable
2011-04-12 15:36:10 +02:00
Salvatore Sanfilippo
f29d1fb0b2
assert_empty in redis-trib
2011-04-11 18:26:00 +02:00
Salvatore Sanfilippo
8c4c50906c
added known nodes info in CLUSTER INFO
2011-04-11 17:40:35 +02:00
Salvatore Sanfilippo
b800a3ab20
a first refactoring of redis-trib.rb
2011-04-11 16:58:47 +02:00
Salvatore Sanfilippo
407798c1e1
Redis-trib initial implementation (currently can not do any actual work)
2011-04-11 16:41:06 +02:00
Salvatore Sanfilippo
1c708b25ee
added minimal cluster section in INFO output. This is only useful to check if the instance is or not configured as a cluster node, all the other informations are accessible using the CLUSTER command.
2011-04-11 16:40:37 +02:00
antirez
8d727af8c4
update state when FAIL is cleared from a node
2011-04-08 14:19:52 +02:00
antirez
fd7a584f7a
do not process node failure messages about yourself
2011-04-08 10:17:41 +02:00
antirez
a55c7868c1
fixed lame error in slot assignment
2011-04-07 23:33:18 +02:00
antirez
5a547b27f7
evaluate cluster state after config load. Still bugs in the slot allocation after nodes config load to fix.
2011-04-07 23:23:27 +02:00
antirez
93666e583c
master node without slaves rejoin fixed
2011-04-07 23:10:32 +02:00
antirez
152d937b8c
when loading config set the ping/pong timestaps to the current value. Even a node in FAIL state can be accepted again if there are no slaves for this node so election was not possible
2011-04-07 23:06:01 +02:00
antirez
1793752d97
node cluster configuration file configurable via redis.conf
2011-04-07 21:34:41 +02:00
antirez
2bc52b2c02
useless newline removed from log message
2011-04-07 19:22:24 +02:00
antirez
d01a6bb3f9
fixes to configuration loading and saving. However there is to still fix the logic for reconnection/behavior of nodes after a restart.
2011-04-07 19:04:16 +02:00
antirez
92690d29fe
first version of cluster config loading code
2011-04-07 17:46:28 +02:00
antirez
726a39c15f
initial cluster config load code
2011-04-07 12:55:02 +02:00
Pieter Noordhuis
02e6006532
Explicitly zero zval since it is stored on the stack
2011-04-06 16:39:22 +02:00
Pieter Noordhuis
d4d3a70da2
Update target encoding for sorted set from rdb
2011-04-06 16:38:34 +02:00
Pieter Noordhuis
100ed062c0
Test for ENCODING_SKIPLIST instead of ENCODING_RAW
2011-04-06 16:17:07 +02:00
Pieter Noordhuis
4cc4d1648b
Typo
2011-04-06 16:15:15 +02:00
Pieter Noordhuis
7d8c555e92
Merge branch 'unstable' into unstable-zset
...
Conflicts:
src/object.c
2011-04-06 16:15:01 +02:00
antirez
0b7f6d0913
make sure that OBJECT ENCODING returns skiplist for sorted sets, and not raw, so that once we will merge specially encoded sorted sets everything will make sense.
2011-04-06 15:36:10 +02:00
antirez
ece74202bb
OBJECT command implemented
2011-04-06 12:19:45 +02:00
antirez
f797c7dc17
bad data on RESTORE can no longer crash the server but create a memory leak with some input string
2011-04-05 13:57:28 +02:00
antirez
f304f22b22
Merge branch 'unstable' of github.com:antirez/redis into unstable
2011-04-01 19:00:21 +02:00
antirez
626f6b2d64
DUMP implemented, RESTORE and MIGRATE fixed. Use zcalloc() instead of zmalloc()+memset() in sds.c when a new string is created with NULL initialization pointer.
2011-04-01 18:59:28 +02:00
antirez
5b94b8ac5d
fixed memory leak introduced with the previous commit. Many thanks to Pieter Noordhuis for spotting it in no time
2011-03-31 19:52:15 +02:00
antirez
25ef31920a
Fixed issue #503 . MONITOR + QUIT could crash the server, there are actually other interactions that could have the same effect (for instance Pub/Sub).
2011-03-31 16:44:43 +02:00
antirez
6c390c0b23
minor change with no actual effects til the loading node config code is in place
2011-03-30 18:12:51 +02:00
antirez
ef21ab960e
centralized cluster config file name. Assigned slots in CLUSTER NODES output and in cluster config file.
2011-03-30 17:41:13 +02:00
antirez
4b72c5617f
fix to configuration saving on first start
2011-03-30 16:51:28 +02:00
antirez
c7c7cfbddc
cluster configuration saving
2011-03-30 14:58:19 +02:00
antirez
ecc9109434
Cluster branch merged to unstable.
2011-03-29 17:51:15 +02:00
antirez
cc1cb7e540
Merge remote branch 'origin/getkeys' into unstable
2011-03-29 10:54:38 +02:00
antirez
a07bc92692
Preloading messages log level changed from WARNING to DEBUG
2011-03-28 19:03:57 +02:00
antirez
4b61ca460c
fixed a bug in RENAME getKeys() function
2011-03-28 18:46:22 +02:00
antirez
6e1b9b58ec
bug fixed in zunionstore specific getKeys() implementation
2011-03-28 18:21:06 +02:00
antirez
b4b5144694
Fixes to the new preloading / key discovery APIs
2011-03-28 17:54:42 +02:00
antirez
42b2621cdc
implemented preload of EXEC using the new getKeys() system
2011-03-28 17:29:26 +02:00
antirez
a3cf904121
minor style change
2011-03-23 23:13:15 +01:00
antirez
9791f0f8ce
new preloading implemented, still EXEC not handled correctly, everything to test
2011-03-23 18:09:17 +01:00
antirez
e360e3bb7e
Fixed sdssplitargs() handling of hex-style escapes.
2011-03-22 22:49:12 +01:00
antirez
03af999cb0
command table altered for the new API to get position of keys arguments in commands
2011-03-22 19:36:09 +01:00
Pieter Noordhuis
48991620f7
Remove sorted set when empty after ZREMRANGEBY*
2011-03-21 23:54:46 +01:00
antirez
612810af6e
sdscatrepr() fixed. Now newlines and other special chars are escaped correctly
2011-03-20 18:24:49 +01:00
Pieter Noordhuis
dddf5335f4
Fix DEBUG DIGEST, SORT and AOF rewrite
2011-03-14 13:30:06 +01:00
Pieter Noordhuis
69298a05eb
Offset should be size_t
2011-03-14 10:53:53 +01:00
Pieter Noordhuis
72690afdd2
Remove unused function
2011-03-14 10:53:14 +01:00
Pieter Noordhuis
e53ca04b50
Test for empty inner range when looking for elements in range
2011-03-11 18:18:02 +01:00
Pieter Noordhuis
8588bfa370
Make zzl API unaware of the robj where the ziplist is stored
2011-03-11 17:06:07 +01:00
Pieter Noordhuis
df26a0ae0b
Encode sorted set after loading from dump
2011-03-10 17:50:13 +01:00
Pieter Noordhuis
255eebe221
Convert encoding of result when in limits
2011-03-10 17:02:05 +01:00
Pieter Noordhuis
dba3a153a7
Remove comment
2011-03-10 16:53:20 +01:00
antirez
7493d2a032
fixed diskstore race condition
2011-03-10 16:39:19 +01:00
Pieter Noordhuis
56ce42faf1
Generic iterator code for usage in ZUNIONSTORE/ZINTERSTORE
2011-03-10 16:34:52 +01:00
Pieter Noordhuis
bbfe232f60
Make zzlLength take a ziplist argument
2011-03-10 16:17:14 +01:00
Pieter Noordhuis
d4e07f1714
Add new string to long long function
2011-03-10 16:16:27 +01:00
antirez
dc75b1edfb
encoding agnostic intsets
2011-03-09 19:14:04 +01:00
antirez
f220437450
ziplist are now endianess agnostic
2011-03-09 18:49:59 +01: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
b5325132f1
memrev variants only doing the work if the target host is big endian
2011-03-09 17:28:16 +01:00
antirez
48e4621590
Ehm... sorry if we don't support PDP endianess
2011-03-09 16:33:09 +01:00
antirez
e12cb14308
endianess conversion API, to be applied to specially encoded data types for arch agnostic encoding.
2011-03-09 16:24:18 +01:00
Pieter Noordhuis
cc4c964b33
Fix used function in ZCARD
2011-03-09 16:13:39 +01:00
Pieter Noordhuis
a669d5e999
Convert encoding when thresholds overflow
2011-03-09 16:13:06 +01:00
antirez
b1a8e3e89e
byte ordering detection in config.h
2011-03-09 15:44:21 +01:00
Pieter Noordhuis
3ea204e103
Configurable thresholds for encoded sorted sets
2011-03-09 14:01:57 +01:00
Pieter Noordhuis
e12b27acf7
Persistence code for encoded sorted sets
2011-03-09 13:16:38 +01:00
Pieter Noordhuis
d1c920c538
Support dual encoding for more commands
2011-03-09 12:37:59 +01:00
Pieter Noordhuis
aff255c81d
Support dual encoding for ZRANGEBYSCORE et al
2011-03-09 11:29:21 +01:00
Pieter Noordhuis
4c5f0966b2
Helpers to move around in encoded sorted set
2011-03-09 11:06:31 +01:00
Pieter Noordhuis
63b7b7fb34
Support dual encoding for ZREMRANGEBYRANK
2011-03-09 10:30:55 +01:00
Pieter Noordhuis
5d1b4fb698
Support dual encoding for ZRANGE
2011-03-09 00:12:29 +01:00
Pieter Noordhuis
0f23eb3b10
Properly free encoded sorted set
2011-03-08 23:56:59 +01:00
Pieter Noordhuis
4a14dbbac2
Look up and remove elements by range
2011-03-08 23:56:33 +01:00
Pieter Noordhuis
9f9b60f974
Typo
2011-03-08 22:14:46 +01:00
Pieter Noordhuis
8218db3dae
Little less obfuscation
2011-03-08 21:36:46 +01:00
Pieter Noordhuis
0b10e10444
Support dual encoding in ZREM
2011-03-08 17:11:15 +01:00
antirez
e270a7fa58
removed useless call
2011-03-08 16:52:39 +01:00
Pieter Noordhuis
3ca7532a2d
Don't encode element argument when dealing with ziplist
2011-03-08 16:51:41 +01:00
Pieter Noordhuis
21c5b508a4
Initial work for ziplist backed sorted sets
2011-03-08 16:44:22 +01:00
Pieter Noordhuis
9e7cee0ed0
Add function to create ziplist-backed sorted set
2011-03-08 16:08:52 +01:00
Pieter Noordhuis
672b0a1b25
Fast conversion of double when representable as long long
2011-03-08 16:08:11 +01:00
antirez
3a21cb99e5
same final call of two if branches moved outside
2011-03-08 15:55:34 +01:00
antirez
e09b51869b
useless function removed
2011-03-08 15:10:20 +01:00
antirez
c5b6f46132
comment typo fixed
2011-03-08 15:03:51 +01:00
Pieter Noordhuis
45290ad9bb
Rename zset range functions
2011-03-08 10:57:53 +01:00
Pieter Noordhuis
8e1b327706
Test for ranges where min > max
2011-03-08 10:57:39 +01:00
Pieter Noordhuis
df278b8b0b
Compiler should decide on inlining
2011-03-08 10:57:33 +01:00
Pieter Noordhuis
22b9bf1594
Move logic concerned with zset ranges
...
This also optimizes ZREVRANGEBYSCORE for pathological cases where a
sorted set contains many elements with the same score. Previously,
it would traverse the list from back to front in such a case.
2011-03-08 10:57:24 +01:00
Pieter Noordhuis
a300477368
Undo rename of function names where something went wrong
2011-03-08 10:57:06 +01:00
antirez
c2f816b423
Merge remote branch 'pietern/unstable-sigs' into unstable
2011-03-07 12:22:00 +01:00
Pieter Noordhuis
3f4eef215b
Show database number in cli prompt when non-zero
2011-03-06 21:14:40 +01:00
Pieter Noordhuis
96e34b3ce1
Store SELECTed database for reconnect (issue #468 )
2011-03-06 20:46:49 +01:00
Pieter Noordhuis
33753a732a
Minor memory leak in redis-cli (issue #464 )
2011-03-06 20:13:01 +01:00
Pieter Noordhuis
ca36b4ab31
Only save history when stdin is a tty (issue #465 )
2011-03-06 20:02:33 +01:00
Pieter Noordhuis
633a941028
Save RDB on SIGTERM (see issue #471 )
2011-03-06 17:49:40 +01:00
antirez
d9fac6c07a
possible fix for a failed assertion introduced with the latest diskstore speedup fix
2011-03-04 18:10:43 +01:00
antirez
0b537972f4
Fixed return value of GETRANGE / SUBSTR
2011-03-04 16:22:50 +01:00
antirez
4aec2ec8c4
AOF file descriptor leak fixed
2011-03-04 16:13:54 +01:00
antirez
15db4aa006
TTL command fixed to work reliably with diskstore
2011-03-04 15:49:01 +01:00
antirez
8b108ed307
debugging message moved from REDIS_WARING to REDIS_DEBUG
2011-03-04 15:45:38 +01:00
antirez
be14f38de6
Redis manifesto added
2011-03-01 15:20:35 +01:00
antirez
1213abe477
fix type in rdbSaveKeyValuePair() when saving an intset. Don't merge this commit into 2.2 as will not apply cleanly.
2011-02-28 17:55:05 +01:00
antirez
26117e84f0
direct saving of specially encoded types implemented for lists and sets too
2011-02-28 17:53:47 +01:00
antirez
0a04b5f5a0
define name typo fixed
2011-02-28 17:36:12 +01:00
antirez
9ad853ccde
added new RDB codes for ziplist encoded lists and intset encodeed sets
2011-02-28 17:06:31 +01:00
antirez
9fa7beb515
save ziplist encoded type as a different type id. Done as separated commit since this is the part that will not merge cleanly in 2.2
2011-02-28 17:06:09 +01:00
antirez
f8956ed6d8
convert the zipmap into hash in rdb loading if the zipmap has too many elements
2011-02-28 16:55:34 +01:00
antirez
4d60dea853
RDB/AOF loading times logged with millisecond precision
2011-02-28 15:31:54 +01:00
antirez
1187b0a56e
fix for zipmap raw saving in unstable branch
2011-02-28 15:13:49 +01:00
antirez
d4fb9f4144
encoded types API to get blob length
2011-02-28 14:48:49 +01:00
antirez
2cc993655f
save zipmap encoded hashes as blobs. Work in progress.
2011-02-28 09:56:48 +01:00
antirez
419e1cca74
less delays in diskstore when there are many writes. more work to do.
2011-02-25 19:11:25 +01:00
antirez
900ab8fc7a
more disk store fields in INFO
2011-02-25 10:59:57 +01:00
Pieter Noordhuis
6c682e559c
Restore argc/argv in EXEC after command is executed
2011-02-23 14:37:22 +01:00
Paul Gideon Dann
df50d707f3
Allow port to be 0 in configuration, in order to allow disabling of TCP.
2011-02-22 12:13:29 +01:00
antirez
29920dceb8
conflict resolved in cherry pick
2011-02-22 00:03:03 +01:00
antirez
f96a9f82d8
suppress a Linux warning, for 2.2 sake
2011-02-21 17:51:52 +01:00
antirez
09d2abdca2
check return value of getcwd()
2011-02-21 17:51:28 +01:00
antirez
465b4189e6
CONFIG SET/GET for all the special encoding parameters of sets, lists, hashes
2011-02-17 12:20:59 +01:00
antirez
30318c1ddd
SPOP replication/AOF patch ported to unstable branch
2011-02-16 12:41:40 +01:00
antirez
21cda08b3b
CONFIG GET/SET dir implemented
2011-02-14 02:51:27 +01:00
antirez
05600eb8a7
fixed two diskstore issues, a quasi-deadlock creating problems with I/O speed and a race condition among threads
2011-02-11 11:16:15 +01:00
antirez
9c104c6886
introduced a new logging function for big messages
2011-02-09 10:10:35 +01:00
antirez
a8cc969cd4
Merge remote branch 'pietern/unstable-brpoplpush' into unstable
2011-02-07 15:28:01 +01:00
antirez
a53b4c2409
Fix for the previous port 0 patch, thanks to Pieter for noticing the error
2011-02-07 13:43:29 +01:00
antirez
68d6345ddf
If port zero is specified, Redis will not listen for TCP connections
2011-02-07 12:52:01 +01:00
Pieter Noordhuis
554a5dd2fc
Clarify comment
2011-02-03 12:56:53 +01:00
Pieter Noordhuis
d5870d7ac3
Reply with single null bulk for unsuccesful BRPOPLPUSH
2011-02-03 12:56:50 +01:00
antirez
452229b6fb
propagate key eviction to slaves and AOF, like for expires, so that replicas and AOFs are always consistent even in maxmemory mode.
2011-01-27 16:52:37 +01:00
antirez
be86082be4
Fixed a theoretical non exploitable security bug reported by @chrisrohlf. In theory if we undefine SDS_ABORT_ON_OOM from sds.c AND modify zmalloc.c in order to don't quit on out of memory (but this would break every other part of Redis), on out of memory there is a possible heap overflow.
2011-01-27 10:27:25 +01:00
antirez
d7ed7fd2fc
INFO commandstats section reset with config resetstat, a new microseconds per call field, and a few other minor things
2011-01-24 10:56:06 +01:00
antirez
9b45592c69
portability fix in redis benchmark, using zu format specified with size_t instead of lu
2011-01-24 10:05:42 +01:00
antirez
0d808ef275
Now INFO outputs the "INFO default" output if no argument is passed. Also added counts of calls for every command, thanks to an idea by Mike Shaver
2011-01-23 22:14:15 +01:00
antirez
1b085c9f48
INFO output refactoring. Now "INFO section" will report only the specified section
2011-01-23 16:41:07 +01:00
antirez
d9cb288c9e
profiling information in INFO
2011-01-23 11:46:34 +01:00
antirez
89a1433e69
Fixed issue #435 and at the same time introduced explicit ping in the master-slave channel that will detect a blocked master or a broken even if apparently connected TCP link.
2011-01-20 13:18:23 +01:00
antirez
c4df22afb6
Fixed compilation on FreeBSD
2011-01-20 10:59:49 +01:00
Pieter Noordhuis
3bcffcbe5b
Remove client from list of unblocked clients when it is free'd
2011-01-17 10:04:13 +01:00
antirez
52dc87bb18
lame typo causing bad hashes memory characteristic
2011-01-15 22:24:22 +01:00
antirez
7a1fd61e3d
implemented two new INFO fields showing the size of clients max input and output buffers.
2011-01-14 10:20:02 +01:00
antirez
3a73be7524
master-slave replication fixed, it was not listing any key using KEYS command in the slave.
2011-01-14 09:53:57 +01:00
antirez
5b831607e7
redisServer structure fields reordered for clarity
2011-01-14 00:19:19 +01:00
antirez
a5062bbab0
fixed bgsave_in_progress in INFO when BGSAVEing with diskstore enabled, don't DEBUG FLUSHCACHE when bgsave is in progress.
2011-01-09 19:25:34 +01:00
antirez
0a0f83ab2c
DEBUG FLUSHCACHE needs to wait that everything was synched on disk
2011-01-09 19:01:44 +01:00