influxdb3-go release notes
v2.15.0
Bug Fixes
- #258: Restores write behavior changed in 2.14 by defaulting writes to the V2 API endpoint.
- All InfluxDB 3 products now work with default write settings.
- Write option
NoSyncrequiresUseV2Api=falseand the V3 API endpoint.AcceptPartialapplies only when writes are sent to the V3 API endpoint and is ignored otherwise.
v2.14.0
BREAKING CHANGES
- #245: Adds
UseV2Apiwrite option and fixes partial writes support introduced in #234. Users of InfluxDB Clustered version must set this option totruefor writing.
Features
- #227: Support custom tag order via
WithTagOrderwrite option. See Sort tags by priority for more.- Point and struct writes now use custom line protocol marshaling in this client; dependency on
github.com/influxdata/line-protocol/v2will be dropped in a future release. - Direct use of
lineprotocol.Precisionis deprecated; preferinfluxdb3.Precisionconstants.
- Point and struct writes now use custom line protocol marshaling in this client; dependency on
- #234: Support partial writes via
AcceptPartialwrite option. See Partial writes for more. - #238: Support
arrow.NULLdata type in query response iterator.
Dependencies
- #249: Requires Go 1.25 or newer.
v2.13.0
Features
- #223: Support passing middleware functions to the Flight client.
v2.12.0
Features
- #209: Document the global nature of gRPC compression in README.md
Bug Fixes
- #213: Fixed InfluxDB 3 Core/Enterprise write error deserialization.
Dependencies
- Minimum supported Go version is now 1.24 as required by
google.golang.org/grpcv1.76.0 - see grpc-go#8509
v2.11.0
CI
- #195: Fix pipelines not downloading the correct go images.
Features
- 192: Add clearer timeout parameters.
- The
ClientConfigpropertyTimeoutis now deprecated. - In
ClientConfiga new propertyWriteTimeoutsupersedes it. - In
ClientConfigthe new propertyQueryTimeoutsets a default context deadline to be used with all queries. - New environment variables
INFLUXDB_WRITE_TIMEOUTandINFLUXDB_QUERY_TIMEOUTare added.
- The
Bug Fixes
- #193: Use
influxdb3_testpackage in the documentation examples to enforce public API usage.
v2.10.0
Features
- #189: Add transparent gRPC compression support.
CI
- #180:
- Add tests for arm64 CircleCI.
- Add tests for go v1.24 and v1.25.
v2.9.0
Features
- #169: Support user-defined type converter function for writes points.
- #171: Add function to get InfluxDB version.
- #176: Add comment warning null when calling getMeasurement function.
- #174: Run integration tests against a locally started InfluxDB 3 Core server.
v2.8.0
Features
- #159: Support fast writes without waiting for WAL
persistence:
- New write option (
WriteOptions.NoSync) added:truevalue means faster write but without the confirmation that the data was persisted. Default value:false. - Supported by self-managed InfluxDB 3 Core and Enterprise servers only!
- Also configurable via connection string query parameter (
writeNoSync). - Also configurable via environment variable (
INFLUX_WRITE_NO_SYNC). - Long precision string values added from v3 HTTP API:
"nanosecond","microsecond","millisecond","second"( in addition to the existing"ns","us","ms","s").
- New write option (
Bug Fixes
- #164: Updates
- Go version to 1.23.9
golang.org/x/netto v0.38.0
- #166: Upgrades dependency
apache/arrow/gotoapache/arrow-gov18.
v2.7.0
Bug Fixes
- #158: Refactor Batcher and LPBatcher:
- Fields and methods using
capacityrenamed toinitialCapacity. - Log messages when buffer data is not being emitted are simplified.
SetCapacitymethods on both structures are now deprecated.WithCapacityandWithBufferCapacityoptions are now deprecated.
- Fields and methods using
v2.6.0
Features
- #155: Batcher warnings when buffer data is not being automatically emitted changed to level
Debugin slog.
v2.5.0
Features
- #146: Add error field to QueryIterator to hold first possible error encountered when retrieving records from the flight Reader.
- #147: Ability to pass
grpc.CallOptionfunctions to the underlying flight Client. - #149: Add default configuration for the built-in HTTP
client and expose new configurable parameters:
Timeout- The overall time limit for requests made by the Client. A negative value means no timeout. Default value: 10 seconds.IdleConnectionTimeout- Maximum time an idle connection will remain idle before closing itself. A negative value means no timeout. Default value: 90 seconds.MaxIdleConnections- Maximum number of idle connections. It sets bothtransport.MaxIdleConnandtransport.MaxIdleConnsPerHostto the same value. A negative value means no limit. Default value: 100.
- #154: Export functions
NewQueryIteratorandNewPointValueIteratorto simplify testing.
v2.4.0
Features
- #141: Add proxy and custom SSL root certificate support.
v2.3.0
Features
- #131: Add new PointValueIterator based on google guidelines Guidelines
v2.2.0
Bug fixes
- #134: Reduce minimal Go version to 1.22, remove unnecessary toolchain constraints.
v2.1.0
Bug fixes
- #127: LPBatcher now returns first line of the internal buffer when the line length exceeds the batch size.
v2.0.0
Breaking Changes
:warning: This is a breaking change release.
Previously, the Query API did not respect the metadata type for columns returned from InfluxDB v3. This release fixes this issue. As a result, the type of some columns may differ from previous versions. For example, the timestamp column will now be
time.Timeinstead ofarrow.Timestamp.
Update steps:
- Update library:
go get github.com/InfluxCommunity/influxdb3-go/v2/influxdb3 - Update import path in Go files to
github.com/InfluxCommunity/influxdb3-go/v2/influxdb3.
Features
- #114: Query API respects metadata types for columns returned from InfluxDB v3.
Tags are mapped as a “string”, timestamp as “time.Time”, and fields as their respective types:
- iox::column_type::field::integer: => int64
- iox::column_type::field::uinteger: => uint64
- iox::column_type::field::float: => float64
- iox::column_type::field::string: => string
- iox::column_type::field::boolean: => bool
v1.0.0
:warning: The v1.0.0 release had a malformed module path regarding the Go Module Requirements. For a Go Module project, you need to use version 2 of the client.
Breaking Changes
:warning: This is a breaking change release.
Previously, the Query API did not respect the metadata type for columns returned from InfluxDB v3. This release fixes this issue. As a result, the type of some columns may differ from previous versions. For example, the timestamp column will now be
time.Timeinstead ofarrow.Timestamp.
Features
- #114: Query API respects metadata types for columns returned from InfluxDB v3.
Tags are mapped as a “string”, timestamp as “time.Time”, and fields as their respective types:
- iox::column_type::field::integer: => int64
- iox::column_type::field::uinteger: => uint64
- iox::column_type::field::float: => float64
- iox::column_type::field::string: => string
- iox::column_type::field::boolean: => bool
v0.14.0
Features
- #112: Adds
LPBatcherfor lineprotocol batching following the model of the PointBatcher.
Bug Fixes
- #113: Honor struct tags on WriteData, avoid panic for unexported fields
v0.13.0
Features
- #108: Allow Request.GetBody to be set when writing gzipped data to make calls more resilient.
- #111: Support tabs in tag values.
v0.12.0
Features
- #107: Add
Batcherto simplify the process of writing data in batches.
v0.11.0
Bug Fixes
- #105: Support newlines in tag values.
- #106: Close
resp.Bodyafter HTTP error response is encountered.
v0.10.0
Features
- #100: Expose HTTP Response headers in
ServerError
Bug Fixes
- #94: Resource leak from unclosed
Response - #97: Style and performance improvements discovered by
golangci-lint - #98: Cloud Dedicated database creation ignores the name given by an argument
CI
- #95: Add
golangci-lintto CI
v0.9.0
Features
Bug Fixes
- #89: InfluxDB Edge (OSS) error handling
v0.8.0
Features
v0.7.0
Features
- #74: Use
log/slogto print debug information instead offmt.Printf - #76: Add custom headers support for queries (gRPC requests)
Bug Fixes
- #71: Rename
FlightSQLconstant toSQL
Others
- #68: Upgrade Go version to 1.22.
v0.6.0
Features
- #56: Add support for named query parameters
Bug Fixes
- #59: Export Default Tags from package
v0.5.0
Features
- #50: Default Tags for Writes
v0.4.0
Features
- #45: Add structured query support
Docs
- #45: Add downsampling example
v0.3.0
Features
- #36: Add client creation from connection string and environment variables.
Bug Fixes
- #37:
runtime errorfor iterating Arrow Record without rows
v0.2.0
Features
- #30: Add custom HTTP headers support
Breaking Changes
- #31: Changed package to
influxdb3. Renamed config types and some options.
v0.1.0
- initial release of new client version
- write using v2 api
- query using SQL
- query using influxQL
Was this page helpful?
Thank you for your feedback!
Support and feedback
Thank you for being part of our community! We welcome and encourage your feedback and bug reports for InfluxDB 3 Enterprise and this documentation. To find support, use the following resources:
Customers with an annual or support contract can contact InfluxData Support. Customers using a trial license can email trial@influxdata.com for assistance.