Best practices: Adding Persistent Handle support

Christopher R. Hertel crh at
Wed Jun 7 20:09:53 UTC 2017

Addressing Tom's and Metze's concerns...


The configuration information would be read at start-up time.

There are, however, two situations that could cause trouble.
- Samba re-reads its configuration file periodically, but changes to
  the configuration will not impact an already-established connection
  unless the admin chooses to restart Samba itself, an event that
  would be equivalent to a server reboot.

- If, following a server reboot or failover, the server to which the
  client reconnects (the same server, or a new one) has a different
  CA/Persistence configuration than was used on the original connection
  then the client would be unable to re-establish the Persistent Handle.

The situations in which configuration changes (or differences) could cause
this sort of trouble would all be situation in which the cluster
administrator had changed the configuration or had misconfigured the cluster
in the first place.

Also, your info about the untested condition is exactly the feedback I
needed.  Thanks!


We share the same underlying concern, but here's my thinking on the subject:

- The ability to support Continuous Availability is a feature of the
  underlying file system.  I don't think it makes sense to enable CA on,
  for instance, an EXT4-based share or any other non-clustered FS.  I can
  imagine that it might be useful for test/dev purposes, just to show that
  the bits are being set properly in the NegProt and TreeConnect responses,
  but other than that I don't know why we would ever allow those bits to
  be set on a non-clustered file system.

- Different file systems may offer different mechanisms for Persistent
  Handle support, and CTDB doesn't yet provide the semantics needed for
  persistent handles (though Amitay and Martin are working on it).  From
  this, I prefer to expose this functionality via the VFS layer so that
  Persistent Handle support can be tailored to the individual file system.
  ...and this still would allow us to provide a generic module that would
  use any new CTDB features that are provided over the next several months.

So, what I really want is to allow the administrator to disable Persistent
Handles in the configuration if they so choose.  If these handles are not
disabled, then the VFS module that actually implements them would also
enable them.  I think that sending the bits should be tied to having an
actual, working implementation.

Chris -)-----

More information about the samba-technical mailing list