aboutsummaryrefslogtreecommitdiffstats
path: root/yt/cpp/mapreduce/interface/common.cpp
diff options
context:
space:
mode:
authorermolovd <ermolovd@yandex-team.com>2024-09-19 21:14:13 +0300
committerermolovd <ermolovd@yandex-team.com>2024-09-19 21:25:01 +0300
commit1c463c12c42bc4a7071b8a1fc530e5b87d3dca9c (patch)
tree5ec1cd1d68ba79f7bbe31f5259e766dcb3bb4ec3 /yt/cpp/mapreduce/interface/common.cpp
parent5ce9b712aa7fd8eacab0c51a076f9b8cacad3ca3 (diff)
downloadydb-1c463c12c42bc4a7071b8a1fc530e5b87d3dca9c.tar.gz
Fix: reset RawTypeV3, when Type is set (and vice versa)
commit_hash:af63b4f5a0c2db692a0224330b79c5088c6982dc
Diffstat (limited to 'yt/cpp/mapreduce/interface/common.cpp')
-rw-r--r--yt/cpp/mapreduce/interface/common.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/yt/cpp/mapreduce/interface/common.cpp b/yt/cpp/mapreduce/interface/common.cpp
index 831762fa95..966be8341f 100644
--- a/yt/cpp/mapreduce/interface/common.cpp
+++ b/yt/cpp/mapreduce/interface/common.cpp
@@ -348,6 +348,7 @@ TColumnSchema& TColumnSchema::Type(const NTi::TTypePtr& type) &
{
Y_ABORT_UNLESS(type.Get(), "Cannot create column schema with nullptr type");
TypeV3_ = type;
+ RawTypeV3_ = {};
return *this;
}
@@ -355,6 +356,7 @@ TColumnSchema TColumnSchema::Type(const NTi::TTypePtr& type) &&
{
Y_ABORT_UNLESS(type.Get(), "Cannot create column schema with nullptr type");
TypeV3_ = type;
+ RawTypeV3_ = {};
return *this;
}
@@ -388,6 +390,25 @@ TColumnSchema TColumnSchema::Type(EValueType type, bool required) &&
return Type(ToTypeV3(type, required));
}
+const TMaybe<TNode>& TColumnSchema::RawTypeV3() const
+{
+ return RawTypeV3_;
+}
+
+TColumnSchema& TColumnSchema::RawTypeV3(TNode rawTypeV3) &
+{
+ RawTypeV3_ = std::move(rawTypeV3);
+ TypeV3_ = nullptr;
+ return *this;
+}
+
+TColumnSchema TColumnSchema::RawTypeV3(TNode rawTypeV3) &&
+{
+ RawTypeV3_ = std::move(rawTypeV3);
+ TypeV3_ = nullptr;
+ return *this;
+}
+
bool operator==(const TColumnSchema& lhs, const TColumnSchema& rhs)
{
return