First and foremost, thanks *very* much for ctdb. It's a joy to use after banging around with other HA solutions. We're planning to use it to export Samba and NFS shares throughout campus.
I'm having one problem with the NFS part though. When ctdbd initially starts statd (we're using CTDB_MANAGES_NFS=yes), it does so without appending the stuff in the STATD_HOSTNAME variable in /etc/sysconfig/nfs, which is where the statd-callout script is passed to statd. In our case, this means that statd is running as,
rpc.statd -p 662 -o 2020
rpc.statd -n gfs -H /etc/ctdb/statd-callout -p 662 -o 2020
I could be wrong, but it looks to me that ctdb is using the nfslock init script to start statd. This script doesn't use $STATD_HOSTNAME at all, so it follows that the statd-callout script isn't passed to statd.
If I kill statd and let ctdb start the 60.nfs script restart it when it monitors then statd is run with the correct statd-callout script, since 60.nfs does append the $STATD_HOSTNAME variable when rpc.statd is invoked.
I guess you are using a RedHat based system? On such a system it would indeed use the nfslock and nfs init scripts and currently expect them to take care of the STATD_HOSTNAME variable.
I think this was fixed a long time ago. Certainly fixed in all supported versions. Since Samba 4.3 CTDB even supports STATD_HA_CALLOUT when restarted rpc.statd when it is unresponsive.
Fixed in all currently supported releases.