@@ -221,20 +221,28 @@ struct TEvFetchScriptResultsQueryResponse : public NActors::TEventLocal<TEvFetch
221
221
};
222
222
223
223
struct TEvSaveScriptExternalEffectRequest : public NActors ::TEventLocal<TEvSaveScriptExternalEffectRequest, TKqpScriptExecutionEvents::EvSaveScriptExternalEffectRequest> {
224
+ struct TDescription {
225
+ TDescription (const TString& executionId, const TString& database, const TString& customerSuppliedId, const TString& userToken)
226
+ : ExecutionId(executionId)
227
+ , Database(database)
228
+ , CustomerSuppliedId(customerSuppliedId)
229
+ , UserToken(userToken)
230
+ {}
231
+
232
+ TString ExecutionId;
233
+ TString Database;
234
+
235
+ TString CustomerSuppliedId;
236
+ TString UserToken;
237
+ std::vector<NKqpProto::TKqpExternalSink> Sinks;
238
+ std::vector<TString> SecretNames;
239
+ };
240
+
224
241
TEvSaveScriptExternalEffectRequest (const TString& executionId, const TString& database, const TString& customerSuppliedId, const TString& userToken)
225
- : ExecutionId(executionId)
226
- , Database(database)
227
- , CustomerSuppliedId(customerSuppliedId)
228
- , UserToken(userToken)
242
+ : Description(executionId, database, customerSuppliedId, userToken)
229
243
{}
230
244
231
- TString ExecutionId;
232
- TString Database;
233
-
234
- TString CustomerSuppliedId;
235
- TString UserToken;
236
- std::vector<NKqpProto::TKqpExternalSink> Sinks;
237
- std::vector<TString> SecretNames;
245
+ TDescription Description;
238
246
};
239
247
240
248
struct TEvSaveScriptExternalEffectResponse : public NActors ::TEventLocal<TEvSaveScriptExternalEffectResponse, TKqpScriptExecutionEvents::EvSaveScriptExternalEffectResponse> {
@@ -248,31 +256,41 @@ struct TEvSaveScriptExternalEffectResponse : public NActors::TEventLocal<TEvSave
248
256
};
249
257
250
258
struct TEvScriptFinalizeRequest : public NActors ::TEventLocal<TEvScriptFinalizeRequest, TKqpScriptExecutionEvents::EvScriptFinalizeRequest> {
259
+ struct TDescription {
260
+ TDescription (EFinalizationStatus finalizationStatus, const TString& executionId, const TString& database,
261
+ Ydb::StatusIds::StatusCode operationStatus, Ydb::Query::ExecStatus execStatus, NYql::TIssues issues, std::optional<NKqpProto::TKqpStatsQuery> queryStats,
262
+ std::optional<TString> queryPlan, std::optional<TString> queryAst, std::optional<ui64> leaseGeneration)
263
+ : FinalizationStatus(finalizationStatus)
264
+ , ExecutionId(executionId)
265
+ , Database(database)
266
+ , OperationStatus(operationStatus)
267
+ , ExecStatus(execStatus)
268
+ , Issues(std::move(issues))
269
+ , QueryStats(std::move(queryStats))
270
+ , QueryPlan(std::move(queryPlan))
271
+ , QueryAst(std::move(queryAst))
272
+ , LeaseGeneration(leaseGeneration)
273
+ {}
274
+
275
+ EFinalizationStatus FinalizationStatus;
276
+ TString ExecutionId;
277
+ TString Database;
278
+ Ydb::StatusIds::StatusCode OperationStatus;
279
+ Ydb::Query::ExecStatus ExecStatus;
280
+ NYql::TIssues Issues;
281
+ std::optional<NKqpProto::TKqpStatsQuery> QueryStats;
282
+ std::optional<TString> QueryPlan;
283
+ std::optional<TString> QueryAst;
284
+ std::optional<ui64> LeaseGeneration;
285
+ };
286
+
251
287
TEvScriptFinalizeRequest (EFinalizationStatus finalizationStatus, const TString& executionId, const TString& database,
252
288
Ydb::StatusIds::StatusCode operationStatus, Ydb::Query::ExecStatus execStatus, NYql::TIssues issues = {}, std::optional<NKqpProto::TKqpStatsQuery> queryStats = std::nullopt,
253
289
std::optional<TString> queryPlan = std::nullopt, std::optional<TString> queryAst = std::nullopt, std::optional<ui64> leaseGeneration = std::nullopt)
254
- : FinalizationStatus(finalizationStatus)
255
- , ExecutionId(executionId)
256
- , Database(database)
257
- , OperationStatus(operationStatus)
258
- , ExecStatus(execStatus)
259
- , Issues(std::move(issues))
260
- , QueryStats(std::move(queryStats))
261
- , QueryPlan(std::move(queryPlan))
262
- , QueryAst(std::move(queryAst))
263
- , LeaseGeneration(leaseGeneration)
290
+ : Description(finalizationStatus, executionId, database, operationStatus, execStatus, issues, queryStats, queryPlan, queryAst, leaseGeneration)
264
291
{}
265
292
266
- EFinalizationStatus FinalizationStatus;
267
- TString ExecutionId;
268
- TString Database;
269
- Ydb::StatusIds::StatusCode OperationStatus;
270
- Ydb::Query::ExecStatus ExecStatus;
271
- NYql::TIssues Issues;
272
- std::optional<NKqpProto::TKqpStatsQuery> QueryStats;
273
- std::optional<TString> QueryPlan;
274
- std::optional<TString> QueryAst;
275
- std::optional<ui64> LeaseGeneration;
293
+ TDescription Description;
276
294
};
277
295
278
296
struct TEvScriptFinalizeResponse : public NActors ::TEventLocal<TEvScriptFinalizeResponse, TKqpScriptExecutionEvents::EvScriptFinalizeResponse> {
@@ -284,15 +302,14 @@ struct TEvScriptFinalizeResponse : public NActors::TEventLocal<TEvScriptFinalize
284
302
};
285
303
286
304
struct TEvSaveScriptFinalStatusResponse : public NActors ::TEventLocal<TEvSaveScriptFinalStatusResponse, TKqpScriptExecutionEvents::EvSaveScriptFinalStatusResponse> {
287
- TEvSaveScriptFinalStatusResponse (const TString& customerSuppliedId, const TString& userToken)
288
- : CustomerSuppliedId(customerSuppliedId)
289
- , UserToken(userToken)
290
- {}
291
-
305
+ bool ApplicateScriptExternalEffectRequired = false ;
306
+ bool OperationAlreadyFinalized = false ;
292
307
TString CustomerSuppliedId;
293
308
TString UserToken;
294
309
std::vector<NKqpProto::TKqpExternalSink> Sinks;
295
310
std::vector<TString> SecretNames;
311
+ Ydb::StatusIds::StatusCode Status;
312
+ NYql::TIssues Issues;
296
313
};
297
314
298
315
struct TEvDescribeSecretsResponse : public NActors ::TEventLocal<TEvDescribeSecretsResponse, TKqpScriptExecutionEvents::EvDescribeSecretsResponse> {
0 commit comments