burnin: Implement retryable operations
authorIustin Pop <iustin@google.com>
Tue, 21 Jul 2009 08:53:27 +0000 (10:53 +0200)
committerIustin Pop <iustin@google.com>
Tue, 21 Jul 2009 12:14:11 +0000 (14:14 +0200)
commit73ff3118044044c0fb52bdfe678f713bce4b974a
tree00bfbba3f1603018f55a1ea6fbef328b64c93d9c
parent699d856f86b9bf140097c85b78e61ea397cbb34f
burnin: Implement retryable operations

Some burnin steps are idempotent: e.g. reinstalling an instance (from
burning p.o.v.) can be done multiple times without any side-effects that
would affect later burnin steps. As such, failing the whole burnin
process due a reinstall failure is undesirable.

This patch modifies burnin by marking each opcode (in case of individual
execution) and job set retryable or not. Retryable actions will be
retried up to a number of times, after which we give up and return
failure.

One side-effect is that in case of full-failure in retryable job sets we
lose the original exception (but we do log its string format), so we
have a little bit less information in this case.

Signed-off-by: Iustin Pop <iustin@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
tools/burnin