Should `RollupBatchReader` have a thread pool of its own, instead of sharing the pool with PreReadRunnables?