Weston Pace created ARROW-15732: ----------------------------------- Summary: [C++] Do not use any CPU threads in execution plan when use_threads is false Key: ARROW-15732 URL: https://issues.apache.org/jira/browse/ARROW-15732 Project: Apache Arrow Issue Type: Improvement Components: C++ Reporter: Weston Pace Assignee: Weston Pace
Currently, scan operations that supply use_threads=false will use 1 CPU thread, the calling thread, and some # of I/O threads. We should remove that CPU thread from being used. It is being used at the moment because we need something to transfer work onto when asynchronous I/O tasks complete. We can fix this by allowing a serial executor to run an async generator (creating an iterator). This will also allow us to change the execution plan so that it always expects an executor to be present which should simplify the logic. -- This message was sent by Atlassian Jira (v8.20.1#820001)