2010YOUY01 commented on PR #13423:
URL: https://github.com/apache/datafusion/pull/13423#issuecomment-2480361560

   The explanation for the problem is super clear
   
   One thing I don't understand is: For Tokio's convention, all tasks created 
by `spawn` are expected to be IO-bounded, and those CPU-bound task should be 
created using `spawn_blocking()`. I think the implementation also uses two 
separate thread pool, which is very similar to the approach in this doc.
   Why can't we all use `spawn_blocking()` for all CPU-bounded task, and 
instead we have to use two runtimes explicitly 🤔 
   If we follow this two runtime approach, would existing `spawn_blocking()` in 
the code (e.g. 
https://github.com/apache/datafusion/blob/6d8313ebc865f9bff007bfc04652f58b016cbc1b/datafusion/physical-plan/src/spill.rs#L53)
 cause unexpected behavior (3 thread pools co-exist)


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