using virtual synchrony for CTDB

simo idra at
Fri Oct 6 20:37:33 GMT 2006

On Fri, 2006-10-06 at 11:50 -0700, Steven Dake wrote:
> On Fri, 2006-10-06 at 18:40 +1000, tridge at wrote:
> > I need to explain a bit more in the CTDB document about locking. I
> > actually expect we will end up with no remote locking at all, avoiding
> > it by using CTDB_REQ_CONDITIONAL_APPEND calls. This changes the
> > characteristics of the communication rather a lot :)
> > 
> I'm not sure how it would be possible to lock a global resource without
> communicating with all nodes that the resource should be locked.  One
> way used in the current kernel DLM is to have "resource masters" where
> control for a resource locking/unlocking is located on one particular
> node that has an affinity for the resource.  This works well in the
> common case of no lock contention (because there are no round trip
> replies) but does not work well in the case of lock contention (because
> off-affinity nodes must request the lock from the resource master).

The DMASTER/LMASTER concept is all about resource masters and resource
affinity. The common case for a file server is not have much contention
(take for example a server sharing home directories), and lock
contention is always expensive, no matter what you do.
What we want to achieve is to not pay the cost of a system engineered
against locking contention at the expenses of operations where you don't
have it.


Simo Sorce
Samba Team GPL Compliance Officer
email: idra at

More information about the samba-technical mailing list