Steve Baker <sba...@redhat.com> wrote on 06/02/2014 05:37:25 PM:

> > BTW You missed off another strategy that we have discussed in the
> > past, and which I think Steve Baker might(?) be working on: retrying
> > failed calls at the client level.
> >
> As part of the client-plugins blueprint I'm planning on implementing
> retry policies on API calls. So when currently we call:
> self.nova().servers.create(**kwargs)
> 
> This will soon be:
> self.client().servers.create(**kwargs)
> 
> And with a retry policy (assuming the default unique-ish server name is
> used):
> 
self.client_plugin().call_with_retry_policy('cleanup_yr_mess_and_try_again',
> self.client().servers.create, **kwargs)
> 
> This should be suitable for handling transient errors on API calls such
> as 500s, response timeouts or token expiration. It shouldn't be used for
> resources which later come up in an ERROR state; convergence or
> update-failure-recovery would be better for that.

Response timeouts can be problematic here for non-idempotent operations, 
right?

Thanks,
Mike

_______________________________________________
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to