Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FlightSQL Integration Test with JDBC / ODBC drivers #2409

Open
Tracked by #3301
tustvold opened this issue Aug 11, 2022 · 5 comments
Open
Tracked by #3301

FlightSQL Integration Test with JDBC / ODBC drivers #2409

tustvold opened this issue Aug 11, 2022 · 5 comments
Labels
arrow-flight Changes to the arrow-flight crate enhancement Any new improvement worthy of a entry in the changelog help wanted

Comments

@tustvold
Copy link
Contributor

This ticket is largely a placeholder, this likely needs further design

Is your feature request related to a problem or challenge? Please describe what you are trying to do.

The arrow-flight crate provides experimental support for FlightSQL, however, the test coverage of this functionality is extremely limited.

Describe the solution you'd like

Integration testing of this component against an upstream implementation, e.g. Java, would be advantageous to catch mistakes interpreting the specification. This might take the form of

  • An example implementation of FlightSqlService with potentially canned responses
  • A CI job that uses the JDBC FlightSQL adapter, or otherwise, to exercise this API

Describe alternatives you've considered

Additional context

@tustvold tustvold added enhancement Any new improvement worthy of a entry in the changelog help wanted labels Aug 11, 2022
@avantgardnerio
Copy link
Contributor

I think once we have reasonable coverage with JDBC, we can probably also use that to build out the Rust FlightSql client and test against that implementation as well. Let's get it working at all first though ;)

@avantgardnerio
Copy link
Contributor

avantgardnerio commented Aug 16, 2022

At Space and Time, we do have a build of the JDBC driver that publishes a Docker sqline container. @tustvold & @andygrove one strategy that would almost certainly work would be to integration test the arrow-ballista implementation using that container.

@avantgardnerio
Copy link
Contributor

Also @jolfr

@tustvold
Copy link
Contributor Author

I think that would definitely be better than nothing, but it would be ideal if we could have something lower latency for CI within arrow-rs. It can be the best part of a month between a change landing on main in arrow-rs, and being integrated into Ballista...

@tustvold tustvold added the arrow-flight Changes to the arrow-flight crate label Sep 23, 2022
@alamb alamb mentioned this issue Dec 8, 2022
11 tasks
@alamb alamb changed the title FlightSQL Integration Test FlightSQL Integration Testwith JDBC / ODBC drivers Dec 8, 2022
@alamb alamb changed the title FlightSQL Integration Testwith JDBC / ODBC drivers FlightSQL Integration Test with JDBC / ODBC drivers Dec 8, 2022
@alamb
Copy link
Contributor

alamb commented Apr 12, 2023

We have implemented JDBC driver integration testing in InfluxDB IOx using a small driver program here: https://github.com/influxdata/influxdb_iox/tree/main/influxdb_iox/tests/jdbc_client

It would be a straightforward exercise to port that client to the arrow-rs repo and setup some basic integration testing

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
arrow-flight Changes to the arrow-flight crate enhancement Any new improvement worthy of a entry in the changelog help wanted
Projects
None yet
Development

No branches or pull requests

3 participants