Comment 10 for bug 1211276

Revision history for this message
Steve Baker (steve-stevebaker) wrote :

#9 works for me, although there is a minor chance of a race where another engine starts an action after the INPROGRESS check.

How about this variant:
- API sends action to engine (round-robin)
- Engine checks status of stack
- Broadcast "Stop working on stack X" message to all engines
- IF stack status == "INPROGRESS":
  + Wait for response (0.5 sec timeout)
- Proceed with operation

So broadcast the stop regardless, and only wait for a response if it is known that another action was in progress