summaryrefslogtreecommitdiffstats
path: root/yt/cpp/mapreduce/io/node_table_reader.cpp
diff options
context:
space:
mode:
authornadya73 <[email protected]>2023-09-27 16:55:40 +0300
committernadya73 <[email protected]>2023-09-27 17:43:45 +0300
commit54ce98c42f381b12614dd327dc58a129a661c70b (patch)
treead18b9dfa5638be96373f2aa460508ddaafc9302 /yt/cpp/mapreduce/io/node_table_reader.cpp
parentc437fa9f244a185589a18f4b97cb5ed8bf432876 (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.cpp5
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();