1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-03 01:18:10 +03:00
samba-mirror/ctdb/tools
Martin Schwenke 08310072aa ctdb-scripts: Support storing statd-callout state in cluster filesystem
CTDB_STATD_CALLOUT_SHARED_STORAGE is a new configuration variable
indicating where statd-callout should store its NFS client locking
data.  See the update to ctdb-script.options(5) for details.

This adds back functionality that was removed in commit
12cc826231.  The commit message doesn't
say why this was changed but it was most likely due to a cluster
filesystem hanging at inopportune times.  Hence, this is re-added as a
non-default option.  There are 2 justifications for re-adding it:

* The existing method (persistent_db) relies on dequeuing data during
  the monitor event, which loses any queued data on node crash.

* NFS-Ganesha writes NFSv4 client locking data to a cluster
  filesystem, by default.  Something similar might as well exist for
  NFSv3.

Note that this could create the files for sm-notify in add-client.
However, this would require an alternate implementation of
send_notifies() (or a change to the implementation for persistent_db
too).  It seems better to leave add-client lightweight and do the work
in notify, since add-client is a more frequent operation.

Unconditionally create the state directory on startup.  This is
currently implicitly created for persistent_db when the queue
directory is created.  However, it isn't created anywhere else for
shared_dir, so do it in a common place.

In test mode, the shared storage location has a prefix added so files
are created within the test environment.

Signed-off-by: Martin Schwenke <mschwenke@ddn.com>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
2024-12-13 13:57:32 +00:00
..
ctdb_diagnostics ctdb: Do not use egrep 2023-07-19 09:01:33 +00:00
ctdb_killtcp.c ctdb-tools: Switch tickle ACK sending message to INFO level 2023-07-10 14:21:30 +00:00
ctdb_lvs ctdb-tool: Add UNKNOWN pseudo state 2022-06-28 09:24:31 +00:00
ctdb_natgw ctdb-tool: Add UNKNOWN pseudo state 2022-06-28 09:24:31 +00:00
ctdb.c ctdb-tools: update cli tool to optionally load nodes from command 2024-08-06 00:43:36 +00:00
ltdbtool.c ctdb-tools: Fix signed/unsigned conversion by declaring as size_t 2019-06-05 10:25:49 +00:00
onnode ctdb-tools: Avoid ShellCheck warning SC2317 2023-07-05 11:18:37 +00:00
statd_callout_helper ctdb-scripts: Support storing statd-callout state in cluster filesystem 2024-12-13 13:57:32 +00:00