Bug 9943 - CTDB_RECOVERY_LOCK example in ctdb.sysconfig may lead to problems
CTDB_RECOVERY_LOCK example in ctdb.sysconfig may lead to problems
Product: CTDB 2.5.x or older
Classification: Unclassified
Component: ctdb
All All
: P5 normal
: ---
Assigned To: Amitay Isaacs
Samba QA Contact
Depends on:
  Show dependency treegraph
Reported: 2013-06-11 07:32 UTC by Marcin Garski
Modified: 2013-10-23 01:29 UTC (History)
0 users

See Also:


Note You need to log in before you can comment on or make changes to this bug.
Description Marcin Garski 2013-06-11 07:32:30 UTC
In config/ctdb.sysconfig file there is a uncomment CTDB_RECOVERY_LOCK option, which value is set to "/some/place/on/shared/storage".

Use of quotes, without any information to remove it, may lead to problems that are hard to examine. I have configured CTDB on two nodes to use CTDB_RECOVERY_LOCK="/ctdb/lockfile" (/ctdb is on shared storage), start ctdb service (without any errors), then unplug one of the nodes. Then on node that was still connected I have got this errors:

Taking out recovery lock from recovery daemon
Take the recovery lock
ctdb_recovery_lock: Failed to get recovery lock on '/ctdb/lockfile'
Unable to get recovery lock - aborting recovery and ban ourself for 300 seconds
Banning this node for 300 seconds

I didn't know why ctdb failed to get recovery lock on '/ctdb/lockfile' as this file was always accessible from this node. Removing quotes from CTDB_RECOVERY_LOCK resolved my problem (CTDB_RECOVERY_LOCK=/ctdb/lockfile).

You should remove quotes from CTDB_RECOVERY_LOCK option from ctdb.sysconfig file, please also consider some validity test of entered CTDB_RECOVERY_LOCK path.
Comment 1 Amitay Isaacs 2013-10-23 01:29:14 UTC
Specifying CTDB_RECOVERY_LOCK file with quotes is not a problem.  It works fine.  Please ensure that there are no unprintable characters in the quoted string.

Are you still having this problem?