I would add one more test here, basically emulate what happens in run_job.  Set the executing bit, then set its result, then ensure calling _restart() blows up.