8583012 Ticket 47936: Create a global lock to serialize write operations over several backends

Authored and Committed by tbordaz 7 years ago
    Ticket 47936: Create a global lock to serialize write operations over several backends
    
    Bug Description:
    	Some txn-post plugin may trigger operation on other backend.
    	This can easily conduct to deadlock, with locks (backend locks, plugin locks
    	or db page lock) taken in opposite order.
    
    Fix Description:
            Creating a global lock that will be acquired when updating any backend
    	(any ldbm database, cn=config, cn=schema).
    	It introduces a new config attribute:
    	dn: cn=config
    	nsslapd-global-backend-lock: <on|off(default)>
    
    https://fedorahosted.org/389/ticket/47936
    
    Reviewed by: Rich, Ludwig, Noriko (thanks to all of you !)
    
    Platforms tested: F20/F21
    
    Flag Day: no
    
    Doc impact: no
    
        
file modified
+29 -0
file modified
+30 -2
file modified
+32 -1
file modified
+1 -0
file modified
+2 -0