diff options
| author | maybenotilya <[email protected]> | 2026-05-20 11:52:31 +0300 |
|---|---|---|
| committer | maybenotilya <[email protected]> | 2026-05-20 12:55:06 +0300 |
| commit | f435c8b2b1cd55fcd478711b06415706e4aa2c87 (patch) | |
| tree | 6190ecc7077f10374e97754b61990a46a8f86e12 /yt/cpp/mapreduce/interface | |
| parent | e38316cbd79d3392e61ea64e479c45e2fddf8004 (diff) | |
YT-27970: Multiplexing for RPC requests
* Changelog entry
Type: fix
Component: cpp-sdk
Mark light and heavy RPC requests with different multiplexing bands. Only for PingTransaction for now
commit_hash:9177c1e3811a5108933a87dd3f241d235490ce2d
Diffstat (limited to 'yt/cpp/mapreduce/interface')
| -rw-r--r-- | yt/cpp/mapreduce/interface/config.cpp | 2 | ||||
| -rw-r--r-- | yt/cpp/mapreduce/interface/config.h | 6 |
2 files changed, 8 insertions, 0 deletions
diff --git a/yt/cpp/mapreduce/interface/config.cpp b/yt/cpp/mapreduce/interface/config.cpp index 8399ed042c1..e222e35c723 100644 --- a/yt/cpp/mapreduce/interface/config.cpp +++ b/yt/cpp/mapreduce/interface/config.cpp @@ -477,6 +477,7 @@ void Serialize(const TConfig& config, NYson::IYsonConsumer* consumer) .Item("enable_debug_command_line_arguments").Value(config.EnableDebugCommandLineArguments) .Item("config_remote_patch_path").Value(config.ConfigRemotePatchPath) .Item("enable_client_tracing").Value(config.EnableClientTracing) + .Item("enable_multiplexing_band").Value(config.EnableControlMultiplexingBand) .EndMap(); } @@ -549,6 +550,7 @@ void Deserialize(TConfig& config, const TNode& node) DESERIALIZE_ITEM("enable_debug_command_line_arguments", config.EnableDebugCommandLineArguments); DESERIALIZE_ITEM("config_remote_patch_path", config.ConfigRemotePatchPath); DESERIALIZE_ITEM("enable_client_tracing", config.EnableClientTracing); + DESERIALIZE_ITEM("enable_multiplexing_band", config.EnableControlMultiplexingBand); } #undef DESERIALIZE_ITEM diff --git a/yt/cpp/mapreduce/interface/config.h b/yt/cpp/mapreduce/interface/config.h index a2c3f9fdde8..03c0cd53fee 100644 --- a/yt/cpp/mapreduce/interface/config.h +++ b/yt/cpp/mapreduce/interface/config.h @@ -294,6 +294,12 @@ struct TConfig /// Allow to create trace_id on client side and propogate with request bool EnableClientTracing = true; + /// Use a separate connection for lightweight control requests. + /// If this option is set to true, a separate connection is opened for lightweight requests (for example, ping_transaction). + /// This is needed so that important lightweight requests do not wait for heavy requests, such as file writes, to complete. + /// However, using this option increases the number of open TCP connections. + bool EnableControlMultiplexingBand = false; + static bool GetBool(const char* var, bool defaultValue = false); static int GetInt(const char* var, int defaultValue); static TDuration GetDuration(const char* var, TDuration defaultValue); |
