Currently, the blueapi client run_plan method can hang indefinitely, for example if rabbitMQ crashes. This is because even if the plan completes successfully, if rabbitMQ has died, the client never gets any more messages from blueapi. We should add a timeout so that if run_plan hangs for more than a certain time (probably plan dependent), we move on and reload the blueapi client.
Acceptance Criteria
- We can't hang indefinitely when running a plan
Currently, the blueapi client
run_planmethod can hang indefinitely, for example if rabbitMQ crashes. This is because even if the plan completes successfully, if rabbitMQ has died, the client never gets any more messages from blueapi. We should add a timeout so that ifrun_planhangs for more than a certain time (probably plan dependent), we move on and reload the blueapi client.Acceptance Criteria