drbd: improve workaround for set_drbdsetup_props
This commit is contained in:
@ -188,7 +188,18 @@ sub alloc_image {
|
||||
($rc, $res) = $hdl->auto_deploy($name, $redundancy, 0, 0);
|
||||
check_drbd_rc($rc->[0]);
|
||||
|
||||
sleep(5); # else we get split brain?!
|
||||
# hack: this is required to avoid bugs with set_drbdsetup_props(),
|
||||
# which can result in a split brain if we do not wait.
|
||||
# Note: wait until all volumes have cstate:deploy
|
||||
my $max_wait = 15;
|
||||
for (my $i = 0; $i < $max_wait; $i++) {
|
||||
($rc, $res) = $hdl->list_assignments([], [$name], 0, { "cstate:deploy" => "true" }, []);
|
||||
check_drbd_rc($rc->[0]);
|
||||
my $len = scalar(@$res);
|
||||
last if $len == $redundancy;
|
||||
sleep(1);
|
||||
}
|
||||
sleep(1); # another sleep - it does not work without -no idea why?
|
||||
|
||||
($rc, $res) = $hdl->set_drbdsetup_props(
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user