102 Commits

Author SHA1 Message Date
antirez
4e4da410fd propagate PUBLISH messages using the redis cluster nodes bus. Still need to process the incoming packets of that type. Work in progress. 2011-10-07 15:37:34 +02:00
antirez
96c208fe73 A node can populate a slot if a message from a trusted slot is received claiming ownership of this slot, that is currently empty or served by a node in FAIL state. However this feature was broken since calling clusterAddSlot() was not enough as the slot bit is already set in the node that pong us. We need to directly alter the table. This commit fixes the issue. 2011-10-05 17:40:02 +02:00
antirez
cdd2206102 just minor aesthetic changes to cluster.c 2011-10-05 16:02:45 +02:00
antirez
357f49db2f replaced redisAssert() with redisAssertWithInfo() in a shitload of places. 2011-10-04 18:43:03 +02:00
antirez
be453487d8 Rewrite MIGRATE as DEL for AOF/replication. Also increment the dirty counter to both force replication and persistence. 2011-10-03 15:51:10 +02:00
antirez
213df92591 increment server.dirty in restore command to make sure it is replicated and increments the dirty count for persistence concerns. 2011-10-03 15:45:14 +02:00
antirez
223ec0fad1 when processing gossip packets make sure to also update the node bitmap when associating slots to nodes. Fixed simply using the appropriate helper function to add a slot. 2011-10-01 15:11:07 +02:00
antirez
f962242490 Fixed two bugs in the CLUSTER SETSLOT ... NODE subcommand 2011-09-30 22:17:24 +02:00
antirez
ce26413ea5 Clear the importing status from the slot if a CLUSTER SETSLOT command permanently assigns the slot to the importing node. 2011-09-30 19:20:56 +02:00
antirez
1bec2c3634 added comment about SETSLOT NODE form. 2011-09-29 15:26:01 +02:00
antirez
0ff23b8ab3 show node with myself flag always as connected in CLUSTER NODES output. 2011-09-28 18:28:36 +02:00
antirez
3ad12623d4 rioInitWithFile nad rioInitWithBuffer functions now take a rio structure pointer to avoid copying a structure to return value to the caller. 2011-09-22 16:00:40 +02:00
antirez
dbdf74ddfd merge conflicts resolved 2011-09-22 15:15:26 +02:00
antirez
0b00199553 DB API refactoring. The changes were designed together with Pieter Noordhuis. 2011-06-20 16:42:16 +02:00
Pieter Noordhuis
43b1feb2f0 Make RDB types/opcodes explicit; load/save object type 2011-05-13 22:14:39 +02:00
Pieter Noordhuis
ce9195ad16 Abstract file/buffer I/O to support in-memory serialization 2011-05-13 17:31:00 +02:00
antirez
e2ded22f0f clear importing/exporing state when appropriate on SETSLOT or ADDSLOTS cluster commands 2011-05-06 16:08:10 +02:00
antirez
a93aacdada CLUSTER SETSLOT command and some refactoring of the cluster command 2011-05-06 15:44:09 +02:00
antirez
14062270a5 CLUSTER DELSLOTS 2011-05-06 13:38:27 +02:00
antirez
0fd4ab0854 Fixed semantics of CLUSTER SETSLOT, SELECT now only denied in cluster mode if selected DB is not 0 so that MIGRATE still works well. 2011-05-05 18:10:02 +02:00
antirez
6a032c6698 CLUSTER SETSLOT STABLE fixed 2011-05-05 17:56:12 +02:00
antirez
8c339a617a missing return caused protocol desync in CLUSTER SETSLOT 2011-05-05 17:52:19 +02:00
antirez
4ef69c926e Fixed problem in cluster redirection due to a stupid typo 2011-05-05 17:50:14 +02:00
antirez
7583202453 cluster import/export of hash slots implemented in the query redirection engine 2011-05-05 11:13:21 +02:00
antirez
1bc8ae14e2 if /dev/urandom is not available use rand() to get a random node name 2011-05-04 10:30:22 +02:00
antirez
eebf473cc5 CLUSTER SETSLOT implemented 2011-05-04 09:31:37 +02:00
antirez
470803a8f8 render migrating and importing slots in cluster nodes info 2011-05-02 19:04:33 +02:00
antirez
e051491c9d CLUSTER subcommands to set slots in migrating or importing state. Still a work in progress... 2011-04-29 17:34:03 +02:00
antirez
135dcfc42c CLUSTER GETKEYSINSLOT implemented 2011-04-29 16:17:58 +02:00
antirez
ee3ddf1ada CLUSTER KEYSLOT command 2011-04-29 14:31:18 +02:00
antirez
086fac186f take a hashslot -> keys index, will be used for cluster rehasing 2011-04-28 19:00:33 +02:00
antirez
acb49cf34f no longer useful debugging printf removed 2011-04-13 11:42:05 +02:00
antirez
2edb0f89b5 Merge branch 'unstable' of github.com:antirez/redis into unstable 2011-04-12 15:36:10 +02:00
Salvatore Sanfilippo
e469604ec5 added known nodes info in CLUSTER INFO 2011-04-11 17:40:35 +02:00
antirez
cf24d4a2bb update state when FAIL is cleared from a node 2011-04-08 14:19:52 +02:00
antirez
34311de49b do not process node failure messages about yourself 2011-04-08 10:17:41 +02:00
antirez
ccc1628a02 fixed lame error in slot assignment 2011-04-07 23:33:18 +02:00
antirez
bcece33104 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
5dbde06808 master node without slaves rejoin fixed 2011-04-07 23:10:32 +02:00
antirez
e62a8f5863 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
644c333c3f node cluster configuration file configurable via redis.conf 2011-04-07 21:34:41 +02:00
antirez
b2178843aa useless newline removed from log message 2011-04-07 19:22:24 +02:00
antirez
28bcc32dfd 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
32b6f78c4b first version of cluster config loading code 2011-04-07 17:46:28 +02:00
antirez
c79332ab24 initial cluster config load code 2011-04-07 12:55:02 +02:00
antirez
bb8190b479 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
da14691f5f 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
6920cfbaf9 minor change with no actual effects til the loading node config code is in place 2011-03-30 18:12:51 +02:00
antirez
455f2e90bc 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
7841574e10 fix to configuration saving on first start 2011-03-30 16:51:28 +02:00