diff options
author | antirez <antirez@gmail.com> | 2015-01-22 18:57:45 +0100 |
---|---|---|
committer | antirez <antirez@gmail.com> | 2015-01-22 18:59:44 +0100 |
commit | 267f2ec40bd48168910364c5fd6aa02fae1037dd (patch) | |
tree | 58570fc4a6155214114d86b1b94689f8194d22ac | |
parent | c7e31c681228e040a4bf83c8d7f6b774b177d68b (diff) | |
download | redis-267f2ec40bd48168910364c5fd6aa02fae1037dd.tar.gz |
Avoid duplicated instance execution code in Cluster test.
-rw-r--r-- | tests/instances.tcl | 47 |
1 files changed, 21 insertions, 26 deletions
diff --git a/tests/instances.tcl b/tests/instances.tcl index 7d87cdf59..353d9b2d2 100644 --- a/tests/instances.tcl +++ b/tests/instances.tcl @@ -33,6 +33,25 @@ if {[catch {cd tmp}]} { exit 1 } +# Execute the specified instance of the server specified by 'type', using +# the provided configuration file. Returns the PID of the process. +proc exec_instance {type cfgfile} { + if {$type eq "redis"} { + set prgname redis-server + } elseif {$type eq "sentinel"} { + set prgname redis-sentinel + } else { + error "Unknown instance type." + } + + if {$::valgrind} { + set pid [exec valgrind --track-origins=yes --suppressions=../../../src/valgrind.sup --show-reachable=no --show-possibly-lost=no --leak-check=full ../../../src/${prgname} $cfgfile &] + } else { + set pid [exec ../../../src/${prgname} $cfgfile &] + } + return $pid +} + # Spawn a redis or sentinel instance, depending on 'type'. proc spawn_instance {type base_port count {conf {}}} { for {set j 0} {$j < $count} {incr j} { @@ -59,20 +78,7 @@ proc spawn_instance {type base_port count {conf {}}} { close $cfg # Finally exec it and remember the pid for later cleanup. - if {$type eq "redis"} { - set prgname redis-server - } elseif {$type eq "sentinel"} { - set prgname redis-sentinel - } else { - error "Unknown instance type." - } - - if {$::valgrind} { - set pid [exec valgrind --track-origins=yes --suppressions=../../../src/valgrind.sup --show-reachable=no --show-possibly-lost=no --leak-check=full ../../../src/${prgname} $cfgfile &] - } else { - set pid [exec ../../../src/${prgname} $cfgfile &] - } - + set pid [exec_instance $type $cfgfile] lappend ::pids $pid # Check availability @@ -411,18 +417,7 @@ proc restart_instance {type id} { # Execute the instance with its old setup and append the new pid # file for cleanup. - if {$type eq "redis"} { - set prgname redis-server - } else { - set prgname redis-sentinel - } - - if {$::valgrind} { - set pid [exec valgrind --track-origins=yes --suppressions=../../../src/valgrind.sup --show-reachable=no --show-possibly-lost=no --leak-check=full ../../../src/${prgname} $cfgfile &] - } else { - set pid [exec ../../../src/${prgname} $cfgfile &] - } - + set pid [exec_instance $type $cfgfile] set_instance_attrib $type $id pid $pid lappend ::pids $pid |