def get_cachedir_bsig(self):
        try:
            return self.cachesig
        except AttributeError:
            pass

        # Collect signatures for all children
        children = self.children()
        sigs = [n.get_cachedir_csig() for n in children]
        # Append this node's signature...
        sigs.append(self.get_contents_sig())
        # ...and it's path
        sigs.append(self.path)
        # Merge this all into a single signature
        result = self.cachesig = SCons.Util.MD5collect(sigs)
        return result
Acquire lock for transaction.
dataset/ETHPy150Open kayhayen/Nuitka/nuitka/build/inline_copy/lib/scons-2.3.2/SCons/Node/FS.py/File.get_cachedir_bsig--crossover with--dataset/ETHPy150Open AppScale/appscale/AppDB/zkappscale/zktransaction_stub.py/ZKTransaction.acquire_lock