From my reading of the code, the locking of individual files requires exclusive access to the locking TDB. This is hard to scale to a cluster or a load-balaced server farm. Conversely, locking individual files via the underlying filesystem locks is both slow and tricky. There's always LDAP, although that might be WAY slower (;-)) I note that the sourceforge TDB project is described as using region locks... Is thos destined for Samba in the 3.x time period?
jeremy has some ideas but maybe later.
I'm unsure whether the original popster addresses this issue as well, but I have a problem that these new TDB files in (.../locks) cannot be configured in location (or the documentation is incomplete): account_policy, brlock, connections, deferred_open, gencache, group_mapping, locking, messages, ntdrivers, ntforms, ntprinters, registry, sessionid, share_info For a HA Samba, one would move all the "state files" from one cluster node to another. Usually this means that Samba uses non-default locations for such files (e.g. you cannot easily unmount /etc and import it to another node). Therefore I'd suggest to allow configuration of all such "state files". Preferrably one setting should change the "prefix" for all those files. Also time for re-open?
In Samba 3.0.7 when using "-l" to relocate the locks directory, the forementioned files are moved. However "smbstatus" does not have such an option and now displays no real status at all. (OK, using "-s" parse the setting from smb.conf ("lock directory") works. It would be great if smbstatus would support "-h" for "help" or the same semantics for "-l")