You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Originally posted by rkumpf August 18, 2022
Using the Go client (versions 0.18.5 and 0.19.1), a call to Client.DescribeWorkflowExecution for a non-existent workflow ID has a one minute delay before returning a CodeNotFound error.
if target := (*s.EntityNotExistsError)(nil); errors.As(err, &target) {
return false
}
The delay is avoided when the isServiceTransientError function is updated to include:
if status := yarpcerrors.FromError(err); status != nil && status.Code() == yarpcerrors.CodeNotFound {
return false
}
Maybe this is a symptom of a general problem where errors returned via Thrift are not mapped correctly to Cadence errors.
Is my understanding correct? Is there any way to avoid a delay in the EntityNotExistsError case without short-circuiting retries for real transient errors?
The text was updated successfully, but these errors were encountered:
Discussed in #4960
Originally posted by rkumpf August 18, 2022
Using the Go client (versions 0.18.5 and 0.19.1), a call to
Client.DescribeWorkflowExecution
for a non-existent workflow ID has a one minute delay before returning aCodeNotFound
error.The delay is caused by retries that should have been avoided by this code in the
isServiceTransientError
function (https://github.com/uber-go/cadence-client/blob/master/internal/internal_retry.go#L92-L94)The delay is avoided when the
isServiceTransientError
function is updated to include:Maybe this is a symptom of a general problem where errors returned via Thrift are not mapped correctly to Cadence errors.
Is my understanding correct? Is there any way to avoid a delay in the EntityNotExistsError case without short-circuiting retries for real transient errors?
The text was updated successfully, but these errors were encountered: