wangyong9999 commented on code in PR #282:
URL: https://github.com/apache/paimon-cpp/pull/282#discussion_r3932269550
##########
src/paimon/core/operation/scan_context.cpp:
##########
@@ -178,13 +179,14 @@ Result<std::unique_ptr<ScanContext>>
ScanContextBuilder::Finish() {
if (impl_->path_.empty()) {
return Status::Invalid("cannot scan with empty table path");
}
+ std::shared_ptr<Executor> executor =
+ impl_->executor_ ? impl_->executor_ : GetGlobalDefaultExecutor();
Review Comment:
One concrete failure mode is `FileStoreScan::ReadFileEntries()`: it submits
manifest work to the context executor and then blocks in `CollectAll()`. If all
global workers are already running scans, every worker can wait for child work
queued to the same pool and deadlock. Please keep the fallback lazy but private
(`CreateDefaultExecutor()` in `Finish()`), while leaving `Reset()` null; that
removes the eager thread creation without changing executor isolation.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]