| 568 | write_options_(std::move(write_options)) {} |
| 569 | |
| 570 | Status StartProducing() override { |
| 571 | ARROW_ASSIGN_OR_RAISE( |
| 572 | dataset_writer_, |
| 573 | internal::DatasetWriter::Make( |
| 574 | write_options_, plan_->query_context()->async_scheduler(), |
| 575 | [this] { Pause(); }, [this] { Resume(); }, [this] { MapNode::Finish(); })); |
| 576 | return MapNode::StartProducing(); |
| 577 | } |
| 578 | |
| 579 | static Result<acero::ExecNode*> Make(acero::ExecPlan* plan, |
| 580 | std::vector<acero::ExecNode*> inputs, |