aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorhor911 <hor911@ydb.tech>2023-03-17 14:00:13 +0300
committerhor911 <hor911@ydb.tech>2023-03-17 14:00:13 +0300
commit00b4742f37cc92a223d788bde49f90301d8ee487 (patch)
treeb1231f08e345c3e463a549def1a59c8e0f982dce
parenta2c9dca2891fe7d1e93aa8805358eaf50dce6368 (diff)
downloadydb-00b4742f37cc92a223d788bde49f90301d8ee487.tar.gz
Report retries as transient issues
-rw-r--r--ydb/library/yql/providers/s3/actors/yql_s3_read_actor.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/ydb/library/yql/providers/s3/actors/yql_s3_read_actor.cpp b/ydb/library/yql/providers/s3/actors/yql_s3_read_actor.cpp
index 33549af57e7..9871f32b9a6 100644
--- a/ydb/library/yql/providers/s3/actors/yql_s3_read_actor.cpp
+++ b/ydb/library/yql/providers/s3/actors/yql_s3_read_actor.cpp
@@ -1855,7 +1855,11 @@ public:
if (Issues) {
RetryStuff->NextRetryDelay = RetryStuff->GetRetryState()->GetNextRetryDelay(HttpResponseCode >= 300 ? HttpResponseCode : 0);
LOG_CORO_D("TEvReadFinished with Issues (try to retry): " << Issues.ToOneLineString());
- if (!RetryStuff->NextRetryDelay) {
+ if (RetryStuff->NextRetryDelay) {
+ // inplace retry: report problem to TransientIssues and repeat
+ Send(ComputeActorId, new IDqComputeActorAsyncInput::TEvAsyncInputError(InputIndex, Issues, NYql::NDqProto::StatusIds::UNSPECIFIED));
+ } else {
+ // can't retry here: fail download
RetryStuff->RetryState = nullptr;
InputFinished = true;
LOG_CORO_W("ReadError: " << Issues.ToOneLineString() << ", LastOffset: " << LastOffset << ", LastData: " << GetLastDataAsText());