Skip to content

Commit 560c541

Browse files
committed
Fixes
1 parent fd05673 commit 560c541

28 files changed

+138
-128
lines changed

ydb/core/grpc_services/query/rpc_execute_query.cpp

Lines changed: 24 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -179,6 +179,25 @@ bool NeedReportAst(const Ydb::Query::ExecuteQueryRequest& req) {
179179
}
180180
}
181181

182+
bool NeedCollectDiagnostics(const Ydb::Query::ExecuteQueryRequest& req) {
183+
switch (req.exec_mode()) {
184+
case Ydb::Query::EXEC_MODE_EXPLAIN:
185+
return true;
186+
187+
case Ydb::Query::EXEC_MODE_EXECUTE:
188+
switch (req.stats_mode()) {
189+
case Ydb::Query::StatsMode::STATS_MODE_FULL:
190+
case Ydb::Query::StatsMode::STATS_MODE_PROFILE:
191+
return true;
192+
default:
193+
return false;
194+
}
195+
196+
default:
197+
return false;
198+
}
199+
}
200+
182201
class TExecuteQueryRPC : public TActorBootstrapped<TExecuteQueryRPC> {
183202
public:
184203
static constexpr NKikimrServices::TActivity::EType ActorActivityType() {
@@ -265,8 +284,7 @@ class TExecuteQueryRPC : public TActorBootstrapped<TExecuteQueryRPC> {
265284
.SetUseCancelAfter(false)
266285
.SetSyntax(syntax)
267286
.SetSupportStreamTrailingResult(true)
268-
.SetOutputChunkMaxSize(req->response_part_limit_bytes())
269-
.SetCollectFullDiagnostics(req->Getcollect_full_diagnostics());
287+
.SetOutputChunkMaxSize(req->response_part_limit_bytes());
270288

271289
auto ev = MakeHolder<NKqp::TEvKqp::TEvQueryRequest>(
272290
QueryAction,
@@ -285,6 +303,7 @@ class TExecuteQueryRPC : public TActorBootstrapped<TExecuteQueryRPC> {
285303
req->pool_id());
286304

287305
ev->SetProgressStatsPeriod(TDuration::MilliSeconds(req->stats_period_ms()));
306+
ev->Record.MutableRequest()->SetCollectDiagnostics(NeedCollectDiagnostics(*req));
288307

289308
if (!ctx.Send(NKqp::MakeKqpProxyID(ctx.SelfID.NodeId()), ev.Release(), 0, 0, Span_.GetTraceId())) {
290309
NYql::TIssues issues;
@@ -404,6 +423,9 @@ class TExecuteQueryRPC : public TActorBootstrapped<TExecuteQueryRPC> {
404423
if (NeedReportAst(*Request_->GetProtoRequest())) {
405424
response.mutable_exec_stats()->set_query_ast(kqpResponse.GetQueryAst());
406425
}
426+
if (NeedCollectDiagnostics(*Request_->GetProtoRequest())) {
427+
response.mutable_exec_stats()->set_query_diagnostics(kqpResponse.GetQueryDiagnostics());
428+
}
407429
}
408430

409431
if (record.GetYdbStatus() == Ydb::StatusIds::SUCCESS) {
@@ -423,7 +445,6 @@ class TExecuteQueryRPC : public TActorBootstrapped<TExecuteQueryRPC> {
423445
hasTrailingMessage = true;
424446
response.mutable_tx_meta()->set_id(kqpResponse.GetTxMeta().id());
425447
}
426-
response.set_query_full_diagnostics(kqpResponse.GetQueryDiagnostics());
427448
}
428449

429450
if (hasTrailingMessage) {

ydb/core/grpc_services/rpc_execute_data_query.cpp

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,16 @@ using namespace Ydb;
2727
using namespace Ydb::Table;
2828
using namespace NKqp;
2929

30+
bool NeedCollectDiagnostics(const Ydb::Table::ExecuteDataQueryRequest& req) {
31+
switch (req.collect_stats()) {
32+
case Ydb::Table::QueryStatsCollection::STATS_COLLECTION_FULL:
33+
case Ydb::Table::QueryStatsCollection::STATS_COLLECTION_PROFILE:
34+
return true;
35+
default:
36+
return false;
37+
}
38+
}
39+
3040
using TEvExecuteDataQueryRequest = TGrpcRequestOperationCall<Ydb::Table::ExecuteDataQueryRequest,
3141
Ydb::Table::ExecuteDataQueryResponse>;
3242

@@ -145,8 +155,9 @@ class TExecuteDataQueryRPC : public TRpcKqpRequestActor<TExecuteDataQueryRPC, TE
145155
&req->parameters(),
146156
req->collect_stats(),
147157
req->has_query_cache_policy() ? &req->query_cache_policy() : nullptr,
148-
req->has_operation_params() ? &req->operation_params() : nullptr,
149-
NKqp::NPrivateEvents::TQueryRequestSettings().SetCollectFullDiagnostics(req->Getcollect_full_diagnostics()));
158+
req->has_operation_params() ? &req->operation_params() : nullptr);
159+
160+
ev->Record.MutableRequest()->SetCollectDiagnostics(NeedCollectDiagnostics(*req));
150161

151162
ReportCostInfo_ = req->operation_params().report_cost_info() == Ydb::FeatureFlag::ENABLED;
152163

@@ -167,6 +178,7 @@ class TExecuteDataQueryRPC : public TRpcKqpRequestActor<TExecuteDataQueryRPC, TE
167178
if (from.HasQueryStats()) {
168179
FillQueryStats(*to->mutable_query_stats(), from);
169180
to->mutable_query_stats()->set_query_ast(from.GetQueryAst());
181+
to->mutable_query_stats()->set_query_diagnostics(from.GetQueryDiagnostics());
170182
return;
171183
}
172184
}
@@ -204,7 +216,6 @@ class TExecuteDataQueryRPC : public TRpcKqpRequestActor<TExecuteDataQueryRPC, TE
204216
queryMeta.mutable_parameters_types()->insert({queryParameter.GetName(), parameterType});
205217
}
206218
}
207-
queryResult->set_query_full_diagnostics(kqpResponse.GetQueryDiagnostics());
208219
} catch (const std::exception& ex) {
209220
NYql::TIssues issues;
210221
issues.AddIssue(NYql::ExceptionToIssue(ex));

ydb/core/grpc_services/rpc_stream_execute_scan_query.cpp

Lines changed: 27 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,27 @@ bool NeedReportPlan(const Ydb::Table::ExecuteScanQueryRequest& req) {
9393
}
9494
}
9595

96+
bool NeedCollectDiagnostics(const Ydb::Table::ExecuteScanQueryRequest& req) {
97+
switch (req.mode()) {
98+
case ExecuteScanQueryRequest_Mode_MODE_EXPLAIN:
99+
return true;
100+
101+
case ExecuteScanQueryRequest_Mode_MODE_EXEC:
102+
switch (req.collect_stats()) {
103+
case Ydb::Table::QueryStatsCollection::STATS_COLLECTION_FULL:
104+
case Ydb::Table::QueryStatsCollection::STATS_COLLECTION_PROFILE:
105+
return true;
106+
default:
107+
break;
108+
}
109+
110+
return false;
111+
112+
default:
113+
return false;
114+
}
115+
}
116+
96117
bool CheckRequest(const Ydb::Table::ExecuteScanQueryRequest& req, TParseRequestError& error)
97118
{
98119
switch (req.mode()) {
@@ -225,11 +246,10 @@ class TStreamExecuteScanQueryRPC : public TActorBootstrapped<TStreamExecuteScanQ
225246
&req->parameters(),
226247
req->collect_stats(),
227248
nullptr, // query_cache_policy
228-
nullptr,
229-
NKqp::NPrivateEvents::TQueryRequestSettings().SetCollectFullDiagnostics(req->Getcollect_full_diagnostics())
249+
nullptr
230250
);
231251

232-
ev->Record.MutableRequest()->SetCollectDiagnostics(req->Getcollect_full_diagnostics());
252+
ev->Record.MutableRequest()->SetCollectDiagnostics(NeedCollectDiagnostics(*req));
233253

234254
if (!ctx.Send(NKqp::MakeKqpProxyID(ctx.SelfID.NodeId()), ev.Release())) {
235255
NYql::TIssues issues;
@@ -292,6 +312,7 @@ class TStreamExecuteScanQueryRPC : public TActorBootstrapped<TStreamExecuteScanQ
292312

293313
bool reportStats = NeedReportStats(*Request_->GetProtoRequest());
294314
bool reportPlan = reportStats && NeedReportPlan(*Request_->GetProtoRequest());
315+
bool collectDiagnostics = NeedCollectDiagnostics(*Request_->GetProtoRequest());
295316

296317
if (reportStats) {
297318
if (kqpResponse.HasQueryStats()) {
@@ -309,7 +330,9 @@ class TStreamExecuteScanQueryRPC : public TActorBootstrapped<TStreamExecuteScanQ
309330
response.mutable_result()->mutable_query_stats()->set_query_ast(kqpResponse.GetQueryAst());
310331
}
311332

312-
response.mutable_result()->set_query_full_diagnostics(kqpResponse.GetQueryDiagnostics());
333+
if (collectDiagnostics) {
334+
response.mutable_result()->mutable_query_stats()->set_query_diagnostics(kqpResponse.GetQueryDiagnostics());
335+
}
313336

314337
Y_PROTOBUF_SUPPRESS_NODISCARD response.SerializeToString(&out);
315338
Request_->SendSerializedResult(std::move(out), record.GetYdbStatus());

ydb/core/kqp/common/compilation/events.h

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ namespace NKikimr::NKqp::NPrivateEvents {
1616

1717
struct TEvCompileRequest: public TEventLocal<TEvCompileRequest, TKqpEvents::EvCompileRequest> {
1818
TEvCompileRequest(const TIntrusiveConstPtr<NACLib::TUserToken>& userToken, const TString& clientAddress, const TMaybe<TString>& uid,
19-
TMaybe<TKqpQueryId>&& query, bool keepInCache, bool isQueryActionPrepare, bool perStatementResult, TInstant deadline,
19+
TMaybe<TKqpQueryId>&& query, bool keepInCache, NKikimrKqp::EQueryAction queryAction, bool perStatementResult, TInstant deadline,
2020
TKqpDbCountersPtr dbCounters, const TGUCSettings::TPtr& gUCSettings, const TMaybe<TString>& applicationName,
2121
std::shared_ptr<std::atomic<bool>> intrestedInResult, const TIntrusivePtr<TUserRequestContext>& userRequestContext, NLWTrace::TOrbit orbit = {},
2222
TKqpTempTablesState::TConstPtr tempTablesState = nullptr, bool collectDiagnostics = false, TMaybe<TQueryAst> queryAst = Nothing(),
@@ -26,7 +26,7 @@ struct TEvCompileRequest: public TEventLocal<TEvCompileRequest, TKqpEvents::EvCo
2626
, Uid(uid)
2727
, Query(std::move(query))
2828
, KeepInCache(keepInCache)
29-
, IsQueryActionPrepare(isQueryActionPrepare)
29+
, QueryAction(queryAction)
3030
, PerStatementResult(perStatementResult)
3131
, Deadline(deadline)
3232
, DbCounters(dbCounters)
@@ -50,7 +50,7 @@ struct TEvCompileRequest: public TEventLocal<TEvCompileRequest, TKqpEvents::EvCo
5050
TMaybe<TString> Uid;
5151
TMaybe<TKqpQueryId> Query;
5252
bool KeepInCache = false;
53-
bool IsQueryActionPrepare = false;
53+
NKikimrKqp::EQueryAction QueryAction;
5454
bool PerStatementResult = false;
5555
// it is allowed for local event to use absolute time (TInstant) instead of time interval (TDuration)
5656
TInstant Deadline;
@@ -76,7 +76,7 @@ struct TEvCompileRequest: public TEventLocal<TEvCompileRequest, TKqpEvents::EvCo
7676

7777
struct TEvRecompileRequest: public TEventLocal<TEvRecompileRequest, TKqpEvents::EvRecompileRequest> {
7878
TEvRecompileRequest(const TIntrusiveConstPtr<NACLib::TUserToken>& userToken, const TString& clientAddress, const TString& uid,
79-
const TMaybe<TKqpQueryId>& query, bool isQueryActionPrepare, TInstant deadline,
79+
const TMaybe<TKqpQueryId>& query, NKikimrKqp::EQueryAction queryAction, TInstant deadline,
8080
TKqpDbCountersPtr dbCounters, const TGUCSettings::TPtr& gUCSettings, const TMaybe<TString>& applicationName,
8181
std::shared_ptr<std::atomic<bool>> intrestedInResult, const TIntrusivePtr<TUserRequestContext>& userRequestContext,
8282
NLWTrace::TOrbit orbit = {}, TKqpTempTablesState::TConstPtr tempTablesState = nullptr, TMaybe<TQueryAst> queryAst = Nothing(),
@@ -85,7 +85,7 @@ struct TEvRecompileRequest: public TEventLocal<TEvRecompileRequest, TKqpEvents::
8585
, ClientAddress(clientAddress)
8686
, Uid(uid)
8787
, Query(query)
88-
, IsQueryActionPrepare(isQueryActionPrepare)
88+
, QueryAction(queryAction)
8989
, Deadline(deadline)
9090
, DbCounters(dbCounters)
9191
, GUCSettings(gUCSettings)
@@ -105,7 +105,7 @@ struct TEvRecompileRequest: public TEventLocal<TEvRecompileRequest, TKqpEvents::
105105
TString ClientAddress;
106106
TString Uid;
107107
TMaybe<TKqpQueryId> Query;
108-
bool IsQueryActionPrepare = false;
108+
NKikimrKqp::EQueryAction QueryAction;
109109

110110
TInstant Deadline;
111111
TKqpDbCountersPtr DbCounters;

ydb/core/kqp/common/events/query.h

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -45,17 +45,11 @@ struct TQueryRequestSettings {
4545
return *this;
4646
}
4747

48-
TQueryRequestSettings& SetCollectFullDiagnostics(bool flag) {
49-
CollectFullDiagnostics = flag;
50-
return *this;
51-
}
52-
5348
ui64 OutputChunkMaxSize = 0;
5449
bool KeepSession = false;
5550
bool UseCancelAfter = true;
5651
::Ydb::Query::Syntax Syntax = Ydb::Query::Syntax::SYNTAX_UNSPECIFIED;
5752
bool SupportsStreamTrailingResult = false;
58-
bool CollectFullDiagnostics = false;
5953
};
6054

6155
struct TEvQueryRequest: public NActors::TEventLocal<TEvQueryRequest, TKqpEvents::EvQueryRequest> {
@@ -288,7 +282,7 @@ struct TEvQueryRequest: public NActors::TEventLocal<TEvQueryRequest, TKqpEvents:
288282
}
289283

290284
bool GetCollectDiagnostics() const {
291-
return RequestCtx ? QuerySettings.CollectFullDiagnostics : Record.MutableRequest()->GetCollectDiagnostics();
285+
return Record.MutableRequest()->GetCollectDiagnostics();
292286
}
293287

294288
ui32 CalculateSerializedSize() const override {

ydb/core/kqp/common/kqp_event_impl.cpp

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -107,8 +107,6 @@ void TEvKqp::TEvQueryRequest::PrepareRemote() const {
107107
Record.MutableRequest()->SetIsInternalCall(RequestCtx->IsInternalCall());
108108
Record.MutableRequest()->SetOutputChunkMaxSize(QuerySettings.OutputChunkMaxSize);
109109

110-
Record.MutableRequest()->SetCollectDiagnostics(QuerySettings.CollectFullDiagnostics);
111-
112110
RequestCtx.reset();
113111
}
114112
}

ydb/core/kqp/compile_service/kqp_compile_actor.cpp

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ class TKqpCompileActor : public TActorBootstrapped<TKqpCompileActor> {
5252
TKqpDbCountersPtr dbCounters, std::optional<TKqpFederatedQuerySetup> federatedQuerySetup,
5353
const TIntrusivePtr<TUserRequestContext>& userRequestContext,
5454
NWilson::TTraceId traceId, TKqpTempTablesState::TConstPtr tempTablesState, bool collectFullDiagnostics,
55-
bool perStatementResult,
55+
bool perStatementResult, NKikimrKqp::EQueryAction queryAction,
5656
ECompileActorAction compileAction, TMaybe<TQueryAst> queryAst,
5757
NYql::TExprContext* splitCtx,
5858
NYql::TExprNode::TPtr splitExpr)
@@ -75,6 +75,7 @@ class TKqpCompileActor : public TActorBootstrapped<TKqpCompileActor> {
7575
, CompileActorSpan(TWilsonKqp::CompileActor, std::move(traceId), "CompileActor")
7676
, TempTablesState(std::move(tempTablesState))
7777
, CollectFullDiagnostics(collectFullDiagnostics)
78+
, QueryAction(queryAction)
7879
, CompileAction(compileAction)
7980
, QueryAst(std::move(queryAst))
8081
, SplitCtx(splitCtx)
@@ -365,7 +366,9 @@ class TKqpCompileActor : public TActorBootstrapped<TKqpCompileActor> {
365366
replayMessage.InsertValue("query_syntax", ToString(Config->_KqpYqlSyntaxVersion.Get().GetRef()));
366367
replayMessage.InsertValue("query_database", QueryId.Database);
367368
replayMessage.InsertValue("query_cluster", QueryId.Cluster);
368-
replayMessage.InsertValue("query_plan", queryPlan);
369+
if (QueryAction == NKikimrKqp::QUERY_ACTION_EXPLAIN) {
370+
replayMessage.InsertValue("query_plan", queryPlan);
371+
}
369372
replayMessage.InsertValue("query_type", ToString(QueryId.Settings.QueryType));
370373

371374
if (CollectFullDiagnostics) {
@@ -613,6 +616,7 @@ class TKqpCompileActor : public TActorBootstrapped<TKqpCompileActor> {
613616
bool CollectFullDiagnostics;
614617

615618
bool PerStatementResult;
619+
NKikimrKqp::EQueryAction QueryAction;
616620
ECompileActorAction CompileAction;
617621
TMaybe<TQueryAst> QueryAst;
618622

@@ -662,7 +666,7 @@ IActor* CreateKqpCompileActor(const TActorId& owner, const TKqpSettings::TConstP
662666
const TString& uid, const TKqpQueryId& query, const TIntrusiveConstPtr<NACLib::TUserToken>& userToken, const TString& clientAddress,
663667
std::optional<TKqpFederatedQuerySetup> federatedQuerySetup, TKqpDbCountersPtr dbCounters, const TGUCSettings::TPtr& gUCSettings,
664668
const TMaybe<TString>& applicationName, const TIntrusivePtr<TUserRequestContext>& userRequestContext,
665-
NWilson::TTraceId traceId, TKqpTempTablesState::TConstPtr tempTablesState,
669+
NWilson::TTraceId traceId, TKqpTempTablesState::TConstPtr tempTablesState, NKikimrKqp::EQueryAction queryAction,
666670
ECompileActorAction compileAction, TMaybe<TQueryAst> queryAst, bool collectFullDiagnostics,
667671
bool perStatementResult, NYql::TExprContext* splitCtx, NYql::TExprNode::TPtr splitExpr)
668672
{
@@ -671,7 +675,7 @@ IActor* CreateKqpCompileActor(const TActorId& owner, const TKqpSettings::TConstP
671675
uid, query, userToken, clientAddress, dbCounters,
672676
federatedQuerySetup, userRequestContext,
673677
std::move(traceId), std::move(tempTablesState), collectFullDiagnostics,
674-
perStatementResult, compileAction, std::move(queryAst),
678+
perStatementResult, queryAction, compileAction, std::move(queryAst),
675679
splitCtx, splitExpr);
676680
}
677681

ydb/core/kqp/compile_service/kqp_compile_service.cpp

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -29,17 +29,17 @@ using namespace NYql;
2929

3030

3131
struct TKqpCompileSettings {
32-
TKqpCompileSettings(bool keepInCache, bool isQueryActionPrepare, bool perStatementResult,
32+
TKqpCompileSettings(bool keepInCache, NKikimrKqp::EQueryAction queryAction, bool perStatementResult,
3333
const TInstant& deadline, ECompileActorAction action = ECompileActorAction::COMPILE)
3434
: KeepInCache(keepInCache)
35-
, IsQueryActionPrepare(isQueryActionPrepare)
35+
, QueryAction(queryAction)
3636
, PerStatementResult(perStatementResult)
3737
, Deadline(deadline)
3838
, Action(action)
3939
{}
4040

4141
bool KeepInCache;
42-
bool IsQueryActionPrepare;
42+
NKikimrKqp::EQueryAction QueryAction;
4343
bool PerStatementResult;
4444
TInstant Deadline;
4545
ECompileActorAction Action;
@@ -461,7 +461,7 @@ class TKqpCompileService : public TActorBootstrapped<TKqpCompileService> {
461461

462462
TKqpCompileSettings compileSettings(
463463
request.KeepInCache,
464-
request.IsQueryActionPrepare,
464+
request.QueryAction,
465465
request.PerStatementResult,
466466
request.Deadline,
467467
ev->Get()->Split
@@ -529,7 +529,7 @@ class TKqpCompileService : public TActorBootstrapped<TKqpCompileService> {
529529

530530
TKqpCompileSettings compileSettings(
531531
true,
532-
request.IsQueryActionPrepare,
532+
request.QueryAction,
533533
false,
534534
request.Deadline,
535535
ev->Get()->Split
@@ -623,7 +623,7 @@ class TKqpCompileService : public TActorBootstrapped<TKqpCompileService> {
623623
try {
624624
if (compileResult->Status == Ydb::StatusIds::SUCCESS) {
625625
if (!hasTempTablesNameClashes) {
626-
UpdateQueryCache(ctx, compileResult, keepInCache, compileRequest.CompileSettings.IsQueryActionPrepare, isPerStatementExecution);
626+
UpdateQueryCache(ctx, compileResult, keepInCache, compileRequest.CompileSettings.QueryAction == NKikimrKqp::QUERY_ACTION_PREPARE, isPerStatementExecution);
627627
}
628628

629629
if (ev->Get()->ReplayMessage && !QueryReplayBackend->IsNull()) {
@@ -846,7 +846,7 @@ class TKqpCompileService : public TActorBootstrapped<TKqpCompileService> {
846846
void StartCompilation(TKqpCompileRequest&& request, const TActorContext& ctx) {
847847
auto compileActor = CreateKqpCompileActor(ctx.SelfID, KqpSettings, TableServiceConfig, QueryServiceConfig, ModuleResolverState, Counters,
848848
request.Uid, request.Query, request.UserToken, request.ClientAddress, FederatedQuerySetup, request.DbCounters, request.GUCSettings, request.ApplicationName, request.UserRequestContext,
849-
request.CompileServiceSpan.GetTraceId(), request.TempTablesState, request.CompileSettings.Action, std::move(request.QueryAst), CollectDiagnostics,
849+
request.CompileServiceSpan.GetTraceId(), request.TempTablesState, request.CompileSettings.QueryAction, request.CompileSettings.Action, std::move(request.QueryAst), CollectDiagnostics,
850850
request.CompileSettings.PerStatementResult, request.SplitCtx, request.SplitExpr);
851851
auto compileActorId = ctx.Register(compileActor, TMailboxType::HTSwap,
852852
AppData(ctx)->UserPoolId);

ydb/core/kqp/compile_service/kqp_compile_service.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -166,6 +166,7 @@ IActor* CreateKqpCompileActor(const TActorId& owner, const TKqpSettings::TConstP
166166
TKqpDbCountersPtr dbCounters, const TGUCSettings::TPtr& gUCSettings, const TMaybe<TString>& applicationName,
167167
const TIntrusivePtr<TUserRequestContext>& userRequestContext, NWilson::TTraceId traceId = {},
168168
TKqpTempTablesState::TConstPtr tempTablesState = nullptr,
169+
NKikimrKqp::EQueryAction queryAction = NKikimrKqp::QUERY_ACTION_EXECUTE,
169170
ECompileActorAction compileAction = ECompileActorAction::COMPILE,
170171
TMaybe<TQueryAst> queryAst = {},
171172
bool collectFullDiagnostics = false,

0 commit comments

Comments
 (0)