westonpace commented on code in PR #13804: URL: https://github.com/apache/arrow/pull/13804#discussion_r953098603
########## cpp/src/arrow/dataset/dataset.h: ########## @@ -174,9 +186,24 @@ class ARROW_DS_EXPORT Dataset : public std::enable_shared_from_this<Dataset> { Dataset(std::shared_ptr<Schema> schema, compute::Expression partition_expression); virtual Result<FragmentIterator> GetFragmentsImpl(compute::Expression predicate) = 0; + virtual Result<FragmentGenerator> GetFragmentsAsyncImpl(compute::Expression predicate); std::shared_ptr<Schema> schema_; compute::Expression partition_expression_ = compute::literal(true); + + private: Review Comment: Default parameters can be confusing in virtual methods, I will agree to that. Although we have a few places in Arrow where we use them and just follow the maxim of trying to be consistent in the defaults we supply. With this approach however, I'm confused how a caller would specify which executor to use? Would it have to be a property of the dataset itself? -- 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...@arrow.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org