Skip to content

Commit 30bfd7f

Browse files
authored
Correct Spilling CBs for Async CA (#30396)
1 parent 2a50c3b commit 30bfd7f

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

ydb/library/yql/dq/actors/compute/dq_async_compute_actor.cpp

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -103,8 +103,14 @@ class TDqAsyncComputeActor : public TDqComputeActorBase<TDqAsyncComputeActor, TC
103103

104104
Become(&TDqAsyncComputeActor::StateFuncWrapper<&TDqAsyncComputeActor::StateFuncBody>);
105105

106-
auto wakeupCallback = [this]{ ContinueExecute(EResumeSource::CABootstrapWakeup); };
107-
auto errorCallback = [this](const TString& error){ SendError(error); };
106+
const TActorSystem* actorSystem = TlsActivationContext->ActorSystem();
107+
auto selfId = this->SelfId();
108+
auto wakeupCallback = [actorSystem, selfId]() {
109+
actorSystem->Send(selfId, new TEvDqCompute::TEvResumeExecution{EResumeSource::CAWakeupCallback});
110+
};
111+
auto errorCallback = [actorSystem, selfId](const TString& error) {
112+
actorSystem->Send(selfId, new TEvDq::TEvAbortExecution(NYql::NDqProto::StatusIds::INTERNAL_ERROR, error));
113+
};
108114
std::shared_ptr<IDqTaskRunnerExecutionContext> execCtx = std::make_shared<TDqTaskRunnerExecutionContext>(TxId, std::move(wakeupCallback), std::move(errorCallback));
109115

110116
Send(TaskRunnerActorId,

0 commit comments

Comments
 (0)