Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Retry should generate sleep time after attempt #792

Closed
@daniel-sanche

Description

@daniel-sanche

Currently our retry logic pulls the next sleep time from the generator before starting an rpc. This allows us to immediately fail with a ValueError if the generator stops providing backoff values

The downside of this approach is that the backoff is locked in before the rpc is attempted.

Bigtable has a feature where the server can provide a backoff value to the client for the next attempt. The design of Python's retry classes is flexible enough to allow this, except for the fact that the next backoff value is locked in early.

To support this feature, I suggest that we only call the backoff generator when we are ready for the next sleep.

Metadata

Metadata

Assignees

Labels

priority: p2Moderately-important priority. Fix may not be included in next release.type: feature request‘Nice-to-have’ improvement, new feature or different behavior or design.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions