carols10cents commented on code in PR #15030: URL: https://github.com/apache/datafusion/pull/15030#discussion_r1985212925
########## datafusion/physical-plan/src/execution_plan.rs: ########## @@ -260,13 +260,30 @@ pub trait ExecutionPlan: Debug + DisplayAs + Send + Sync { /// used. /// Thus, [`spawn`] is disallowed, and instead use [`SpawnedTask`]. /// + /// To enable timely cancellation, the [`Stream`] that is returned must not + /// pin the CPU and must yield back to the tokio runtime regularly. This can + /// be achieved by manually returning [`Poll::Pending`] in regular intervals, + /// or the use of [`tokio::task::yield_now()`]. Cooperative scheduling may also Review Comment: Yeah, after thinking about this more I don't think it makes sense to point to something that datafusion isn't even using yet (because it hasn't been released). When the `coop` functionality is released and datafusion uses it, then it makes more sense to document here. -- 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: github-unsubscr...@datafusion.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: github-unsubscr...@datafusion.apache.org For additional commands, e-mail: github-h...@datafusion.apache.org