diff options
author | hor911 <hor911@ydb.tech> | 2023-02-23 12:37:45 +0300 |
---|---|---|
committer | hor911 <hor911@ydb.tech> | 2023-02-23 12:37:45 +0300 |
commit | 73dbf37dfe3ffaf8923d0ce1f89c0b00148345fb (patch) | |
tree | 896543a6f2777c620a1a126eeb740feeba2ff382 | |
parent | 2c97e0c9e48d56f449a3abea7594e3655636c39d (diff) | |
download | ydb-73dbf37dfe3ffaf8923d0ce1f89c0b00148345fb.tar.gz |
Fix transport failure retries
В предыдущей серии я упорядочивал обработку ошибок. Починил кейс когда нет транспортных ошибок, есть ошибка HTTP и Content-Length: 0. Но при этом отломал обработку случая когда есть транспортные ошибки. Они перестали ретраиться. Здесь я это чиню.
-rw-r--r-- | ydb/library/yql/providers/common/http_gateway/yql_http_gateway.cpp | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/ydb/library/yql/providers/common/http_gateway/yql_http_gateway.cpp b/ydb/library/yql/providers/common/http_gateway/yql_http_gateway.cpp index 95b26e9219..6e140a1eeb 100644 --- a/ydb/library/yql/providers/common/http_gateway/yql_http_gateway.cpp +++ b/ydb/library/yql/providers/common/http_gateway/yql_http_gateway.cpp @@ -419,13 +419,11 @@ private: } void Done(CURLcode result, long httpResponseCode) final { + HttpResponseCode = httpResponseCode; + OnStart(HttpResponseCode); if (CURLE_OK != result) { return Fail(TIssue(TStringBuilder{} << "error: " << curl_easy_strerror(result) << " detailed: " << GetDetailedErrorText())); } - if (!HttpResponseCode) { - HttpResponseCode = httpResponseCode; - OnStart(HttpResponseCode); - } if (!Cancelled) OnFinish(TIssues()); } |