There was a possibility the status is_running never set back to 0. Also the unlock command could be executed twice.