diff options
author | Vasily Gerasimov <UgnineSirdis@gmail.com> | 2022-04-08 22:52:40 +0300 |
---|---|---|
committer | Vasily Gerasimov <UgnineSirdis@gmail.com> | 2022-04-08 22:52:40 +0300 |
commit | dbdd644acbc825ce2c83b2746f02d4ebe869fbab (patch) | |
tree | 1ca125120aec66468504701ae04e81ea9b8fc847 | |
parent | 1331b4eeb3379e6b60ee2bdec44c6394ee34be24 (diff) | |
download | ydb-dbdd644acbc825ce2c83b2746f02d4ebe869fbab.tar.gz |
YQ-1004 Kick Compute Actor after reading data from source to make sure that we read all the data
Kick Compute Actor after reading data from source to make sure that we read all the data
ref:de0ea033687c56d842dbf53f9957677aee65cd5b
-rw-r--r-- | ydb/library/yql/dq/actors/compute/dq_compute_actor_impl.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/ydb/library/yql/dq/actors/compute/dq_compute_actor_impl.h b/ydb/library/yql/dq/actors/compute/dq_compute_actor_impl.h index f0c2582385..1e58957161 100644 --- a/ydb/library/yql/dq/actors/compute/dq_compute_actor_impl.h +++ b/ydb/library/yql/dq/actors/compute/dq_compute_actor_impl.h @@ -1248,6 +1248,13 @@ protected: << ". Buffer free space: " << freeSpace << ", read from source: " << space << " bytes, " << batch.size() << " rows, finished: " << finished); + + if (!batch.empty()) { + // If we have read some data, we must run such reading again + // to process the case when source actor notified us about new data + // but we haven't read all of it. + ContinueExecute(); + } SourcePush(std::move(batch), source, space, finished); } } |