apache / apache/arrow-java

[C++][Java][Python][FlightRPC] Allow FlightInfo#Schema to be nullable for long-running queries

Open
#167 1 comment 1 reaction 1 assignee Claimed by @tdcmeehan View on GitHub
Dominant language
Java
Stars
94
Forks
152
Avg merge
3d 16h
Merged PRs (30d)
11

Description

### Describe the enhancement requested

With apache/arrow#36155, implementations of Flight RPC may not return quickly via a newly added `pollFlightInfo` function. Sometimes, the system implementing this function may not know the output schema for some time--for example, after a lengthy queue time as elapsed, or after planning.

In proto3, fields may not be present, and it's a coding convention to require them [^1]. To support upcoming client integration work for `pollFlightInfo`, the `schema` field can be made optional so that it's not a requirement to populate the `FlightInfo`'s schema on the first `pollFlightInfo` request.

We can modify our client code to allow this field to be optional. This is already the case for the Go code.

Sub-issues:

- [x] apache/arrow#37553
- [ ] apache/arrow#37554
- [x] apache/arrow#37677
- [ ] ...

CC: @lidavidm

[^1]: https://protobuf.dev/programming-guides/field_presence/

### Component(s)

C++, Java, Python

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.