8#include <ydb-cpp-sdk/client/table/query_stats/stats.h>
10#include <userver/yaml_config/fwd.hpp>
12USERVER_NAMESPACE_BEGIN
16enum class TransactionMode { kSerializableRW, kOnlineRO, kStaleRO };
18struct OperationSettings
final {
19 std::uint32_t retries{0};
22 std::chrono::milliseconds operation_timeout_ms{0};
23 std::chrono::milliseconds cancel_after_ms{0};
24 std::chrono::milliseconds client_timeout_ms{0};
25 std::optional<TransactionMode> tx_mode{std::nullopt};
26 std::chrono::milliseconds get_session_timeout_ms{0};
29 std::string_view trace_id{};
33struct QuerySettings
final {
34 std::optional<
bool> keep_in_query_cache{std::nullopt};
35 std::optional<NYdb::NTable::ECollectQueryStatsMode> collect_query_stats{
41namespace formats::
parse {
44 To<ydb::OperationSettings>);