Commit | Line | Data |
---|---|---|
e369af6c GF |
1 | # Redis lookups and quoting in cluster mode |
2 | # | |
3 | # | |
4 | echo Setting up 2-node cluster... | |
a8d6d659 GF |
5 | sudo rm -fr DIR/redis-cluster |
6 | mkdir -p DIR/redis-cluster/node1 DIR/redis-cluster/node2 | |
e369af6c GF |
7 | # |
8 | echo Starting node1 | |
a8d6d659 GF |
9 | perl |
10 | system 'redis-server --bind 127.0.0.1 --port 6379 --cluster-enabled yes --cluster-config-file node1.conf --dir DIR/redis-cluster/node1 --logfile node1.log --daemonize yes --pidfile node1.pid --loglevel debug'; | |
e369af6c GF |
11 | **** |
12 | sleep 5 | |
13 | echo Starting node2 | |
a8d6d659 GF |
14 | perl |
15 | system 'redis-server --bind 127.0.0.1 --port 6380 --cluster-enabled yes --cluster-config-file node2.conf --dir DIR/redis-cluster/node2 --logfile node2.log --daemonize yes --pidfile node2.pid --loglevel debug'; | |
e369af6c GF |
16 | **** |
17 | # | |
18 | sleep 5 | |
19 | echo Creating slots, node1 | |
20 | perl | |
21 | system 'for x in {0..8191}; do echo "CLUSTER ADDSLOTS $x" | redis-cli -p 6379 | egrep -v OK; done'; | |
22 | **** | |
23 | sleep 5 | |
24 | echo Creating slots, node2 | |
25 | perl | |
26 | system 'for x in {8192..16383}; do echo "CLUSTER ADDSLOTS $x" | redis-cli -p 6380 | egrep -v OK; done'; | |
27 | **** | |
28 | sleep 5 | |
29 | echo Sending CLUSTER MEET | |
30 | perl | |
31 | system 'echo "CLUSTER MEET 127.0.0.1 6380" | redis-cli -p 6379 -c'; | |
32 | **** | |
33 | sleep 5 | |
34 | exim -be -d-all+expand+lookup | |
35 | ${lookup redis{set ${quote_redis:KEY_100_1001 ABCDEF} ${quote_redis:objvalue plus}}} | |
36 | ${lookup redis{set ${quote_redis:01t67it} ${quote_redis:bfhdkbflks}}} | |
37 | **** | |
38 | sleep 2 | |
39 | exim -be -d-all+expand+lookup | |
40 | ${lookup redis{get ${quote_redis:KEY_100_1001 ABCDEF}}} | |
41 | ${lookup redis{get ${quote_redis:01t67it}}} | |
42 | **** | |
43 | # | |
a8d6d659 GF |
44 | sleep 5 |
45 | perl | |
46 | my @pidfiles = ( "DIR/redis-cluster/node1/node1.pid", "DIR/redis-cluster/node2/ | |
47 | foreach my $pidfile (@pidfiles) { | |
48 | if ( -f $pidfile ) { | |
49 | open (my $fh, "<", $pidfile); | |
50 | while (my $pid = <$fh>) { | |
51 | chomp $pid; | |
52 | kill 'TERM', $pid; | |
53 | } | |
54 | } | |
55 | } | |
56 | **** | |
57 | sudo rm -fr DIR/redis-cluster | |
e369af6c | 58 | no_stderr_check |