Клиент бесконечно повторяет запрос несуществующего заказа
Сервер gRPC на любую ошибку делает return nil, err, в том числе когда заказ не найден. Клиентский перехватчик повторяет вызовы с кодом Unknown и Internal. Когда пользователь открывает удалённый заказ, клиент делает пять повторов, и нагрузка на сервис растёт.
Что исправить на сервере?
- Возвращать осмысленные коды: NotFound, InvalidArgument
- Возвращать ошибку текстом в поле ответа
- Всегда возвращать codes.OK и пустой ответ
- Возвращать Internal, но с подробным сообщением
