Hi all,
I just tagged v2.0.0 for the Go database/sql driver. This will be the
only supported version for Avatica 1.10.0 and Phoenix 4.11.0 on-wards
due to the backwards-incompatible change to fix CALCITE-1353 . For older
versions of Avatica and Phoenix, please use the v1.x.x series. For this
release, I believe the Go client is at feature-parity with the Java client.
Key highlights:
- Support for HTTP BASIC, HTTP DIGEST and Kerberos/SPNEGO authentication.
- Ability to retry recreating a connection if the server returns a
NoSuchConnection exception.
Future work:
I'd like to get the driver to support HA mode in the future. Currently,
it is possible to implement retrying and recreating a statement due to a
missing_statement in an ExecuteResponse. However, due to the way the Go
database/sql package is built, I am unable to do this with the
missing_statement and missing_results in a FetchResponse. I've opened an
issue regarding this on the Go issue tracker for those interested:
https://github.com/golang/go/issues/21059
The current work around is to handle these failures in the client code
that uses the database/sql package and avatica driver.
Cheers,
Francis