When CANCELED is returned, the operation was cancelled. Mark the
error as recoverable and allows the Client to resend the samples.
When DEADLINE_EXCEEDED is returned, the operation might not be
completed. Mark the error as recoverable and allows the Client to
resend the samples.
When PERMISSION_DENIED or UNAUTHENTICATED errors are returned, it's
the errors are not caused by the samples - so we mark the errors as
recoverable errors and allows the Client to resend the samples until
the permission and authentication are fixed.