FHIR
FHIR copied to clipboard
Add 'Retry-After' header in case of db locking / deadlock-related failures
Is your feature request related to a problem? Please describe. Its possible to get deadlock issues (especially during parallel batch/bundle processing). Currently that results in a 500 error and clients should retry.
Describe the solution you'd like Consider adding something more explicit about whether/when the client should retry. For example, if we can return 503 instead of 500, we could include a Retry-After header in the response.
Describe alternatives you've considered
Acceptance Criteria
- GIVEN [a precondition] AND [another precondition] WHEN [test step] AND [test step] THEN [verification step] AND [verification step]
Additional context Maybe update our client to automatically retry in this case as well?
Probably send some random time (random backoff) with configurability (min/max/average?)