summaryrefslogtreecommitdiffstats
path: root/yql/essentials/sql/settings/translation_settings.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'yql/essentials/sql/settings/translation_settings.cpp')
-rw-r--r--yql/essentials/sql/settings/translation_settings.cpp18
1 files changed, 17 insertions, 1 deletions
diff --git a/yql/essentials/sql/settings/translation_settings.cpp b/yql/essentials/sql/settings/translation_settings.cpp
index 81cf2785150..02fd18501b2 100644
--- a/yql/essentials/sql/settings/translation_settings.cpp
+++ b/yql/essentials/sql/settings/translation_settings.cpp
@@ -6,6 +6,7 @@
#include <library/cpp/deprecated/split/split_iterator.h>
+#include <util/string/cast.h>
#include <util/string/split.h>
#include <util/string/join.h>
#include <util/system/env.h>
@@ -33,7 +34,7 @@ public:
};
[[noreturn]] TString ThrowBad(TStringBuf flag, const TVector<TString>& args) {
- YQL_ENSURE(false, "Bad " << flag << "args [" << JoinSeq(", ", args) << "]");
+ YQL_ENSURE(false, "Bad " << flag << " args [" << JoinSeq(", ", args) << "]");
}
} // namespace
@@ -188,6 +189,21 @@ void ParseTranslationSettings(const TExtendedSqlFlags& flags, TTranslationSettin
}
},
},
+ {
+ "MaxParseTreeDepth",
+ [](const TVector<TString>& args, TTranslationSettings& s) {
+ if (args.size() != 1) {
+ ThrowBad("MaxParseTreeDepth", args);
+ }
+
+ size_t value = 0;
+ if (!TryFromString(args[0], value)) {
+ ThrowBad("MaxParseTreeDepth", args);
+ }
+
+ s.MaxParseTreeDepth = value;
+ },
+ },
};
for (const auto& [flag, args] : flags) {