Hi Li, One way I've seen (which hopefully is the right way) is invoking `ExecNode::ErrorIfNotOk(Status)`. If `WriteRecordBatch` returns a `Status` then just pass it; if it returns a `Result` then you can pass its `.status()`.
Yaron. ________________________________ From: Li Jin <ice.xell...@gmail.com> Sent: Tuesday, October 18, 2022 5:19 PM To: dev@arrow.apache.org <dev@arrow.apache.org> Subject: [Acero] Error handling in ExecNode Hello! I am trying to implement an ExecNode in Acero that receives the input batch, writes the batch to the FlightStreamWriter and then passes the batch to the downstream node. Looking at the API, I am thinking of doing sth like : void InputReceived(ExecNode* input, ExecBatch batch) { # turn batch to RecordBatch # call flight_writer->WriteRecordBatch # call output_.inputReceived(this, batch); } My question is, how do I handle the error in WriteRecordBatch properly with ExecNode API? Thanks, Li