pepijnve commented on PR #16196:
URL: https://github.com/apache/datafusion/pull/16196#issuecomment-2925152088

   > This is exactly what I want to avoid -- there are too many execs and we 
shouldn't have a structure where this is repeated everywhere in code.
   
   Isn't that somewhat unavoidable when you're dealing with a cooperative 
scheduler? There's no way for tokio to preempt.
   
   Only those streams that call `poll_next` themselves in a loop, and as a 
consequence may block for an extended period of time, would need to do this. 
Are there that many of those?
   
   The solution that moves the responsibility to all sources may seem like the 
lesser evil because there might be fewer of those, but to me that design still 
feels wrong because rather than yielding where it's obvious that you should, 
your trying to trigger a yield at a distance in a non-obvious way.


-- 
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

Reply via email to