mirror of
https://github.com/samba-team/samba.git
synced 2025-01-12 09:18:10 +03:00
8eb20c2347
Currently the lock is held until the corresponding eventscript completes, since the process still exists. If the regular part of an eventscript hangs then the lock might unnecessarily be held for a long time. The pathological case is when a monitor event gets stuck in D-wait state and the script times out but can't be killed so the lock is still held. This can cause an unwanted monitor replay. Change this so that the lock is released immediately after the reconfiguration is complete. Signed-off-by: Martin Schwenke <martin@meltin.net> Reviewed-by: Amitay Isaacs <amitay@gmail.com>
27 lines
512 B
Bash
Executable File
27 lines
512 B
Bash
Executable File
#!/bin/sh
|
|
|
|
. "${TEST_SCRIPTS_DIR}/unit.sh"
|
|
|
|
define_test "takeip, take reconfigure lock, monitor -> reconfigure, replay disabled"
|
|
|
|
setup_nfs
|
|
|
|
public_address=$(ctdb_get_1_public_address)
|
|
|
|
err=""
|
|
|
|
ok_null
|
|
|
|
simple_test_event "takeip" $public_address
|
|
|
|
ctdb_fake_scriptstatus -8 "DISABLED" "$err"
|
|
|
|
eventscript_call ctdb_reconfigure_take_lock
|
|
|
|
ok <<EOF
|
|
Replaying previous status for this script due to reconfigure...
|
|
[Replay of DISABLED scriptstatus - note incorrect return code.] $err
|
|
EOF
|
|
|
|
simple_test_event "monitor"
|