On Fri, Nov 29, 2013 at 10:05 AM, Jose A. Lopes <[email protected]> wrote:
> The instance shutdown retry loop only forces shutdown on timeout, not
> if the hypervisor raises an exception. However, forcing instance
> shutdown in this situation is necessary to cope with instance shutdown
> detection and the possibility of managing instances created with other
> versions of Ganeti.
>
> Signed-off-by: Jose A. Lopes <[email protected]>
> ---
> lib/backend.py | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/lib/backend.py b/lib/backend.py
> index 9e12639..114a807 100644
> --- a/lib/backend.py
> +++ b/lib/backend.py
> @@ -1411,7 +1411,7 @@ def InstanceShutdown(instance, timeout, reason,
> store_reason=True):
>
> try:
> utils.Retry(_TryShutdown(), 5, timeout)
> - except utils.RetryTimeout:
> + except (utils.RetryTimeout, RPCFail):#
I'm not convinced this is the right patch.
You're even retrying in the end of any condition that would be an rpc
fail: isn't this too broad?
Shouldn't this be coped with *inside* the hypervisor, instead of at
backend level?
Thanks,
Guido
> # the shutdown did not succeed
> logging.error("Shutdown of '%s' unsuccessful, forcing", iname)
>
> --
> 1.8.4.1
>
--
Guido Trotter
Ganeti Engineering
Google Germany GmbH
Dienerstr. 12, 80331, München
Registergericht und -nummer: Hamburg, HRB 86891
Sitz der Gesellschaft: Hamburg
Geschäftsführer: Graham Law, Christine Elizabeth Flores
Steuernummer: 48/725/00206
Umsatzsteueridentifikationsnummer: DE813741370