aboutsummaryrefslogtreecommitdiffstats
path: root/yt/cpp/mapreduce/raw_client/rpc_parameters_serialization.cpp
diff options
context:
space:
mode:
authorhiddenpath <hiddenpath@yandex-team.com>2024-12-23 15:18:22 +0300
committerhiddenpath <hiddenpath@yandex-team.com>2024-12-23 16:12:22 +0300
commitfac5ce91c704b4a1d3aa2f059842df3ba3a955bd (patch)
tree00fa7a628e7aa63df387c095cf8a2c7cbac3e3e9 /yt/cpp/mapreduce/raw_client/rpc_parameters_serialization.cpp
parentfbc08848ae794f01d5107e6b556045e62fd36afe (diff)
downloadydb-fac5ce91c704b4a1d3aa2f059842df3ba3a955bd.tar.gz
YT-23616: Move read_blob_table and read_file to THttpRawClient
commit_hash:6c9209d019fa324c9ae4f182b18e7d089a32937d
Diffstat (limited to 'yt/cpp/mapreduce/raw_client/rpc_parameters_serialization.cpp')
-rw-r--r--yt/cpp/mapreduce/raw_client/rpc_parameters_serialization.cpp31
1 files changed, 31 insertions, 0 deletions
diff --git a/yt/cpp/mapreduce/raw_client/rpc_parameters_serialization.cpp b/yt/cpp/mapreduce/raw_client/rpc_parameters_serialization.cpp
index 4d6edede16..2869ddcc0f 100644
--- a/yt/cpp/mapreduce/raw_client/rpc_parameters_serialization.cpp
+++ b/yt/cpp/mapreduce/raw_client/rpc_parameters_serialization.cpp
@@ -663,6 +663,37 @@ TNode SerializeParamsForReadTable(
return result;
}
+TNode SerializeParamsForReadBlobTable(
+ const TTransactionId& transactionId,
+ const TRichYPath& path,
+ const TKey& key,
+ const TBlobTableReaderOptions& options)
+{
+ auto lowerLimitKey = key;
+ lowerLimitKey.Parts_.push_back(options.StartPartIndex_);
+ auto upperLimitKey = key;
+ upperLimitKey.Parts_.push_back(std::numeric_limits<i64>::max());
+
+ TNode result = PathToParamNode(
+ TRichYPath(path).
+ AddRange(TReadRange()
+ .LowerLimit(TReadLimit().Key(lowerLimitKey))
+ .UpperLimit(TReadLimit().Key(upperLimitKey))));
+
+ SetTransactionIdParam(&result, transactionId);
+
+ result["start_part_index"] = options.StartPartIndex_;
+ result["offset"] = options.Offset_;
+ if (options.PartIndexColumnName_) {
+ result["part_index_column_name"] = *options.PartIndexColumnName_;
+ }
+ if (options.DataColumnName_) {
+ result["data_column_name"] = *options.DataColumnName_;
+ }
+ result["part_size"] = options.PartSize_;
+ return result;
+}
+
TNode SerializeParamsForParseYPath(const TRichYPath& path)
{
TNode result;