lixiang li created ARROW-13577: ---------------------------------- Summary: [Python][FlightRPC] pyarrow client do_put close method after write_table did not throw flight error Key: ARROW-13577 URL: https://issues.apache.org/jira/browse/ARROW-13577 Project: Apache Arrow Issue Type: Improvement Components: FlightRPC, Python Reporter: lixiang li Attachments: image-2021-08-06-17-19-27-413.png, image-2021-08-06-17-21-12-181.png
hi, when I implentend flight server to do_put data, and throw exceptions proactively, and client will get OSError when close writer, but I expect FlightError. !image-2021-08-06-17-19-27-413.png|width=1017,height=146! {code:java} //代码占位符 def do_put(self, context, descriptor, reader, writer): table = reader.read_all() .... raise fl.FlightUnavailableError() .... {code} {code:java} //代码占位符 df = ... table = pa.Table.from_pandas(df) client = fl.connect('...') writer, _ = client.do_put(descriptor, table.schema, options=options) writer.write_table(table) write.close() {code} also, when I throw exception before read_all, the write_table throw OSError. !image-2021-08-06-17-21-12-181.png|width=1275,height=150! and i guess, the FlightStreamWriter should add write_table and close method, and check_flight_status according to write_batch had checked. thx. -- This message was sent by Atlassian Jira (v8.3.4#803005)