@@ -138,7 +138,7 @@ class TOptPipelineConfigurator : public IPipelineConfigurator, TLogLevelPromoute
138
138
IOutputStream* Stream;
139
139
};
140
140
141
- NSQLTranslation::TTranslationSettings GetTranslationSettings (const THolder<TGatewaysConfig >& gatewaysConfig ) {
141
+ NSQLTranslation::TTranslationSettings GetTranslationSettings (const THashSet<TString >& sqlFlags ) {
142
142
static const THashMap<TString, TString> clusters = {
143
143
{ " plato" , TString (YtProviderName) },
144
144
{ " plato_rtmr" , TString (RtmrProviderName) },
@@ -151,9 +151,7 @@ NSQLTranslation::TTranslationSettings GetTranslationSettings(const THolder<TGate
151
151
settings.SyntaxVersion = 1 ;
152
152
settings.InferSyntaxVersion = true ;
153
153
settings.V0Behavior = NSQLTranslation::EV0Behavior::Report;
154
- if (gatewaysConfig && gatewaysConfig->HasSqlCore ()) {
155
- settings.Flags .insert (gatewaysConfig->GetSqlCore ().GetTranslationFlags ().begin (), gatewaysConfig->GetSqlCore ().GetTranslationFlags ().end ());
156
- }
154
+ settings.Flags = sqlFlags;
157
155
return settings;
158
156
}
159
157
@@ -326,7 +324,7 @@ YQL_ACTION(Parse)
326
324
327
325
bool parsed = (options & TYqlAction::YqlProgram)
328
326
? prg->ParseYql ()
329
- : prg->ParseSql (GetTranslationSettings (YqlServer.GatewaysConfig ));
327
+ : prg->ParseSql (GetTranslationSettings (YqlServer.SqlFlags ));
330
328
331
329
if (parsed) {
332
330
ui32 prettyFlg = TAstPrintFlags::PerLine | TAstPrintFlags::ShortQuote;
@@ -353,7 +351,7 @@ YQL_ACTION(Compile)
353
351
TProgramPtr prg = MakeFileProgram (program, YqlServer, {}, {}, tmpDir.Name ());
354
352
prg->SetParametersYson (parameters);
355
353
356
- bool noError = (options & TYqlAction::YqlProgram) ? prg->ParseYql () : prg->ParseSql (GetTranslationSettings (YqlServer.GatewaysConfig ));
354
+ bool noError = (options & TYqlAction::YqlProgram) ? prg->ParseYql () : prg->ParseSql (GetTranslationSettings (YqlServer.SqlFlags ));
357
355
noError = noError && prg->Compile (GetUsername ());
358
356
359
357
if (options & (EOptions::PrintAst | EOptions::PrintExpr)) {
@@ -387,7 +385,7 @@ YQL_ACTION(OptimizeOrValidateFile)
387
385
TTempDir tmpDir;
388
386
TProgramPtr prg = MakeFileProgram (program, input, attr, inputFile, outputFile, YqlServer, tmpDir.Name ());
389
387
390
- bool noError = (options & TYqlAction::YqlProgram) ? prg->ParseYql () : prg->ParseSql (GetTranslationSettings (YqlServer.GatewaysConfig ));
388
+ bool noError = (options & TYqlAction::YqlProgram) ? prg->ParseYql () : prg->ParseSql (GetTranslationSettings (YqlServer.SqlFlags ));
391
389
392
390
prg->SetParametersYson (parameters);
393
391
prg->SetDiagnosticFormat (NYson::EYsonFormat::Pretty);
@@ -462,7 +460,7 @@ YQL_ACTION(FileRun)
462
460
TTempDir tmpDir;
463
461
TProgramPtr prg = MakeFileProgram (program, input, attr, inputFile, outputFile, YqlServer, tmpDir.Name ());
464
462
465
- bool noError = (options & TYqlAction::YqlProgram) ? prg->ParseYql () : prg->ParseSql (GetTranslationSettings (YqlServer.GatewaysConfig ));
463
+ bool noError = (options & TYqlAction::YqlProgram) ? prg->ParseYql () : prg->ParseSql (GetTranslationSettings (YqlServer.SqlFlags ));
466
464
467
465
prg->SetDiagnosticFormat (NYson::EYsonFormat::Pretty);
468
466
prg->SetParametersYson (parameters);
@@ -634,13 +632,14 @@ TAutoPtr<TYqlServer> CreateYqlServer(
634
632
ui64 nextUniqueId,
635
633
TUserDataTable filesMapping,
636
634
THolder<TGatewaysConfig>&& gatewaysConfig,
635
+ const THashSet<TString>& sqlFlags,
637
636
IModuleResolver::TPtr modules,
638
637
IUdfResolver::TPtr udfResolver,
639
638
TFileStoragePtr fileStorage)
640
639
{
641
640
TAutoPtr<TYqlServer> server = new TYqlServer (
642
641
config, functionRegistry, udfIndex, nextUniqueId,
643
- std::move (filesMapping), std::move (gatewaysConfig), modules, udfResolver, fileStorage);
642
+ std::move (filesMapping), std::move (gatewaysConfig), sqlFlags, modules, udfResolver, fileStorage);
644
643
645
644
server->RegisterAction <TYqlActionPaste>(" /api/yql/paste" );
646
645
server->RegisterAction <TYqlActionParse>(" /api/yql/parse" );
0 commit comments