Skip to content

Commit 09f6797

Browse files
authored
YQ-2873 fix hanging in kqp compute actor (#2131)
1 parent 10a3ce3 commit 09f6797

File tree

2 files changed

+7
-0
lines changed

2 files changed

+7
-0
lines changed

ydb/core/kqp/compute_actor/kqp_pure_compute_actor.cpp

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -148,6 +148,11 @@ ui64 TKqpComputeActor::CalcMkqlMemoryLimit() {
148148
return TBase::CalcMkqlMemoryLimit() + ComputeCtx.GetTableScans().size() * MemoryLimits.ChannelBufferSize;
149149
}
150150

151+
void TKqpComputeActor::CheckRunStatus() {
152+
ProcessOutputsState.LastPopReturnedNoData = !ProcessOutputsState.DataWasSent;
153+
TBase::CheckRunStatus();
154+
}
155+
151156
void TKqpComputeActor::FillExtraStats(NDqProto::TDqComputeActorStats* dst, bool last) {
152157
if (last && SysViewActorId && ScanData && dst->TasksSize() > 0) {
153158
YQL_ENSURE(dst->TasksSize() == 1);

ydb/core/kqp/compute_actor/kqp_pure_compute_actor.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,8 @@ class TKqpComputeActor : public TDqSyncComputeActorBase<TKqpComputeActor> {
3838
protected:
3939
ui64 CalcMkqlMemoryLimit() override;
4040

41+
void CheckRunStatus() override;
42+
4143
public:
4244
void FillExtraStats(NDqProto::TDqComputeActorStats* dst, bool last);
4345

0 commit comments

Comments
 (0)