diff options
| author | nadya73 <[email protected]> | 2023-09-27 16:55:40 +0300 |
|---|---|---|
| committer | nadya73 <[email protected]> | 2023-09-27 17:43:45 +0300 |
| commit | 54ce98c42f381b12614dd327dc58a129a661c70b (patch) | |
| tree | ad18b9dfa5638be96373f2aa460508ddaafc9302 /yt/cpp/mapreduce/io/node_table_reader.cpp | |
| parent | c437fa9f244a185589a18f4b97cb5ed8bf432876 (diff) | |
[yt/cpp/mapreduce] YT-19790: Fix RangeIndex for table readers with retries
Diffstat (limited to 'yt/cpp/mapreduce/io/node_table_reader.cpp')
| -rw-r--r-- | yt/cpp/mapreduce/io/node_table_reader.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/yt/cpp/mapreduce/io/node_table_reader.cpp b/yt/cpp/mapreduce/io/node_table_reader.cpp index d39e1398a5a..1170cbcbabf 100644 --- a/yt/cpp/mapreduce/io/node_table_reader.cpp +++ b/yt/cpp/mapreduce/io/node_table_reader.cpp @@ -294,7 +294,7 @@ ui32 TNodeTableReader::GetTableIndex() const ui32 TNodeTableReader::GetRangeIndex() const { CheckValidity(); - return RangeIndex_.GetOrElse(0); + return RangeIndex_.GetOrElse(0) + RangeIndexShift_; } ui64 TNodeTableReader::GetRowIndex() const @@ -355,6 +355,9 @@ void TNodeTableReader::OnStreamError(std::exception_ptr exception, TString error YT_LOG_ERROR("Read error: %v", error); Exception_ = exception; if (Input_.Retry(RangeIndex_, RowIndex_)) { + if (RangeIndex_) { + RangeIndexShift_ += *RangeIndex_; + } RowIndex_.Clear(); RangeIndex_.Clear(); PrepareParsing(); |
