This repository has been archived by the owner on Aug 25, 2023. It is now read-only.
Increasing retries and delay to make 500 errors causes by Datastore e… #13
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
…ventual consistency less likely to happen.
Details:
When table entity doesn’t exist, then we create proper table entity, and based on that entity we schedule proper copy job.
Based on that copy job couldn’t be scheduled before creation of table entity, after copy job assumes that table entity exist.
Not having table entity is treaded as an error → if we really don’t have table entity for backup what we made, then it means that we have inconsistent data in Datastore.
In existing cases, from eventual consistency of Datastore we don’t get existing table_entity and we retried request till the success.
Existing errors shown that this request was retried 5 times before task fails.
Fortunately, whole task was retried and 3rd attempt of retry was successful.
As error is not repeatitable (occurs randomly in time, probably being dependent from datastore servers load), I increased number of retries and make it in longest period of time to make this kind of errors less likely to happen.