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

[Go][FlightRPC] Add driver for database/sql framework #34332

Closed
srebhan opened this issue Feb 24, 2023 · 0 comments · Fixed by #34331
Closed

[Go][FlightRPC] Add driver for database/sql framework #34332

srebhan opened this issue Feb 24, 2023 · 0 comments · Fixed by #34331

Comments

@srebhan
Copy link
Contributor

srebhan commented Feb 24, 2023

Describe the enhancement requested

Due to it's wide adoption and ease-of-use, a driver for Golang's database/sql framework will help new users and applications using different data-sources.

Add a driver implementation for FlighSQL to allow the use.

Component(s)

FlightRPC, Go

@srebhan srebhan changed the title Add driver for database/sql framework [Go][FlightRPC] Add driver for database/sql framework Feb 24, 2023
jacobmarble added a commit to jacobmarble/arrow-adbc that referenced this issue Feb 27, 2023
Helps apache/arrow#34332

Golang/FlightSQL docs should be updated to point here for the
canonical `database/sql` wrapper.
lidavidm pushed a commit to apache/arrow-adbc that referenced this issue Mar 2, 2023
…pper (#480)

Helps apache/arrow#34332

Golang/FlightSQL docs should be updated to point here for the canonical
`database/sql` wrapper.

---------

Co-authored-by: Matt Topol <zotthewizard@gmail.com>
jacobmarble added a commit to jacobmarble/arrow that referenced this issue Mar 2, 2023
@zeroshade zeroshade changed the title [Go][FlightRPC] Add driver for database/sql framework GH-34332: [Go][FlightRPC] Add driver for database/sql framework Mar 6, 2023
@zeroshade zeroshade changed the title GH-34332: [Go][FlightRPC] Add driver for database/sql framework [Go][FlightRPC] Add driver for database/sql framework Mar 6, 2023
zeroshade pushed a commit that referenced this issue Apr 11, 2023
…4331)

### Rationale for this change

Using Golang's `database/sql` framework is well known, offers goodies like connection pooling and is easy to use. Therefore using FlightSQL trough this framework is a good starting point for users performing simple queries, inserts etc.

### What changes are included in this PR?

This PR adds an `database/sql/driver` implementation currently supporting `sqlite` and `InfluxData IOx` (query only). Unit-tests are added using the SQLite server example implementation and the driver and driver settings are documented.

### Are these changes tested?

Yes, a test-suite is added for the driver. Futhermore, the IOx backend is additionally tested against a real local instance using [this code](https://github.com/srebhan/go-flightsql-example).

### Are there any user-facing changes?

This PR does not contain breaking changes. All modifications to the FlightSQL client code are transparent to the user.
* Closes: #34332

Authored-by: Sven Rebhan <srebhan@influxdata.com>
Signed-off-by: Matt Topol <zotthewizard@gmail.com>
@zeroshade zeroshade added this to the 12.0.0 milestone Apr 11, 2023
liujiacheng777 pushed a commit to LoongArch-Python/arrow that referenced this issue May 11, 2023
…rk (apache#34331)

### Rationale for this change

Using Golang's `database/sql` framework is well known, offers goodies like connection pooling and is easy to use. Therefore using FlightSQL trough this framework is a good starting point for users performing simple queries, inserts etc.

### What changes are included in this PR?

This PR adds an `database/sql/driver` implementation currently supporting `sqlite` and `InfluxData IOx` (query only). Unit-tests are added using the SQLite server example implementation and the driver and driver settings are documented.

### Are these changes tested?

Yes, a test-suite is added for the driver. Futhermore, the IOx backend is additionally tested against a real local instance using [this code](https://github.com/srebhan/go-flightsql-example).

### Are there any user-facing changes?

This PR does not contain breaking changes. All modifications to the FlightSQL client code are transparent to the user.
* Closes: apache#34332

Authored-by: Sven Rebhan <srebhan@influxdata.com>
Signed-off-by: Matt Topol <zotthewizard@gmail.com>
ArgusLi pushed a commit to Bit-Quill/arrow that referenced this issue May 15, 2023
…rk (apache#34331)

### Rationale for this change

Using Golang's `database/sql` framework is well known, offers goodies like connection pooling and is easy to use. Therefore using FlightSQL trough this framework is a good starting point for users performing simple queries, inserts etc.

### What changes are included in this PR?

This PR adds an `database/sql/driver` implementation currently supporting `sqlite` and `InfluxData IOx` (query only). Unit-tests are added using the SQLite server example implementation and the driver and driver settings are documented.

### Are these changes tested?

Yes, a test-suite is added for the driver. Futhermore, the IOx backend is additionally tested against a real local instance using [this code](https://github.com/srebhan/go-flightsql-example).

### Are there any user-facing changes?

This PR does not contain breaking changes. All modifications to the FlightSQL client code are transparent to the user.
* Closes: apache#34332

Authored-by: Sven Rebhan <srebhan@influxdata.com>
Signed-off-by: Matt Topol <zotthewizard@gmail.com>
rtpsw pushed a commit to rtpsw/arrow that referenced this issue May 16, 2023
…rk (apache#34331)

### Rationale for this change

Using Golang's `database/sql` framework is well known, offers goodies like connection pooling and is easy to use. Therefore using FlightSQL trough this framework is a good starting point for users performing simple queries, inserts etc.

### What changes are included in this PR?

This PR adds an `database/sql/driver` implementation currently supporting `sqlite` and `InfluxData IOx` (query only). Unit-tests are added using the SQLite server example implementation and the driver and driver settings are documented.

### Are these changes tested?

Yes, a test-suite is added for the driver. Futhermore, the IOx backend is additionally tested against a real local instance using [this code](https://github.com/srebhan/go-flightsql-example).

### Are there any user-facing changes?

This PR does not contain breaking changes. All modifications to the FlightSQL client code are transparent to the user.
* Closes: apache#34332

Authored-by: Sven Rebhan <srebhan@influxdata.com>
Signed-off-by: Matt Topol <zotthewizard@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants