diff options
Diffstat (limited to 'yt/cpp/mapreduce/io/skiff_table_reader.cpp')
| -rw-r--r-- | yt/cpp/mapreduce/io/skiff_table_reader.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/yt/cpp/mapreduce/io/skiff_table_reader.cpp b/yt/cpp/mapreduce/io/skiff_table_reader.cpp index c96adade41e..94662741b45 100644 --- a/yt/cpp/mapreduce/io/skiff_table_reader.cpp +++ b/yt/cpp/mapreduce/io/skiff_table_reader.cpp @@ -1,5 +1,6 @@ #include "skiff_table_reader.h" +#include <yt/cpp/mapreduce/interface/errors.h> #include <yt/cpp/mapreduce/interface/logging/yt_log.h> #include <library/cpp/yson/node/node_io.h> @@ -155,6 +156,16 @@ bool TSkiffTableReader::IsRawReaderExhausted() const return Finished_; } +void TSkiffTableReader::Abort() +{ + Input_.Abort(); +} + +bool TSkiffTableReader::IsAborted() const +{ + return Input_.IsAborted(); +} + //////////////////////////////////////////////////////////////////////////////// TVector<TSkiffTableReader::TSkiffTableSchema> TSkiffTableReader::CreateSkiffTableSchemas( @@ -288,6 +299,9 @@ void TSkiffTableReader::ReadRow() void TSkiffTableReader::EnsureValidity() const { + if (IsAborted()) { + ythrow TInputStreamAbortedError() << "Stream was aborted"; + } Y_ENSURE(Valid_, "Iterator is not valid"); } |
