Changeset 1591
- Timestamp:
- 10/30/08 20:06:22 (2 months ago)
- Files:
-
- branches/0.4.7/modules-heartbeat/ap-cluster.py (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
branches/0.4.7/modules-heartbeat/ap-cluster.py
r1358 r1591 30 30 CL_DOMAIN = "_cxheartbeat._udp.local" 31 31 32 def acquire(signal,mutex,cell,name ):32 def acquire(signal,mutex,cell,name,env): 33 33 res = mutex.acquire() 34 34 cell["status"] = res 35 35 cell["thread"] = None 36 signal(("mutex","mutex.%s.lock" % (name)), {"res": res} )36 signal(("mutex","mutex.%s.lock" % (name)), {"res": res}, env) 37 37 38 38 … … 53 53 } 54 54 55 def immediate(self, argv): 56 self.uid = UID() 57 sig = "mutex.%s.lock" % (argv.envl.name) 58 self.catch = (sig,) 59 self.signal_keys[sig] = cmask.ScriptUp 60 self.lock = Lock() 61 55 62 def pre(self, argv): 56 57 command.pre(self,argv)58 if argv.call_mask & cmask.Immediate:59 self.uid = UID()60 sig = "mutex.%s.lock" % (argv.envl.name)61 self.catch = (sig,)62 self.signal_keys[sig] = cmask.ScriptUp63 self.lock = Lock()64 return65 63 66 64 # if there is an acquired mutex, run `postUp()` through all subtree … … 100 98 mx.instance: 101 99 102 t = Thread(target=acquire,args=(self.signal,mx.instance,argv.envg.mx[argv.envl.name],argv.envl.name ))100 t = Thread(target=acquire,args=(self.signal,mx.instance,argv.envg.mx[argv.envl.name],argv.envl.name, argv.env)) 103 101 mx.thread = t 104 102 t.start() … … 124 122 # 125 123 ### 124 self.log("debug","Alliluja!") 126 125 self.lock.release() 127 126
