Skip to content

Releases: questdb/go-questdb-client

3.0.0

20 Mar 07:46
d4a8ec0
Compare
Choose a tag to compare

Release overview

Major API improvements including support for InfluxDB Line Protocol over HTTP.

What is new

  • Add support for the ILP protocol over HTTP transport, as well as the new config string syntax #26
    • The new HTTP sender has better error reporting. In particular, it returns an error if the QuestDB server failed to write ILP messages for any reason.
    • HTTP sender handles network errors and retries writes automatically.
    • HTTP sender reuses connections to avoid open connection overhead for each Flush call.
    • The new LineSenderFromConf method provides a convenient way for creating a LineSender based on a config string.

Migration

v2 code example:

package main

import (
	"context"

	qdb "github.com/questdb/go-questdb-client/v2"
)

func main() {
	// Connect to QuestDB running on 127.0.0.1:9009 (ILP/TCP)
	sender, err := qdb.NewLineSender(context.TODO())
	// ...
	defer sender.Close()
	// ...
}

Migrated v3 code:

package main

import (
	"context"

	qdb "github.com/questdb/go-questdb-client/v3"
)

func main() {
	// Connect to QuestDB running on 127.0.0.1:9000 (ILP/HTTP)
	sender, err := qdb.NewLineSender(context.TODO(), qdb.WithHTTP())
	// Alternatively, you can use the LineSenderFromConf function:
	// sender, err := qdb.LineSenderFromConf(ctx, "http::addr=localhost:9000;")
	// ...
	defer sender.Close(context.TODO())
	// ...
}

Note that the migrated code uses the HTTP sender instead of the TCP one.

2.0.0

10 Oct 09:16
e8d780a
Compare
Choose a tag to compare

Release overview

Maintenance release to include important API improvements.

What is new

  • Introduce safer timestamp API #23
    • All timestamp methods now require time.Time type instead of int64. This is a breaking change, so the old code will have to be updated. To use the new client, you need to import github.com/questdb/go-questdb-client/v2 instead of the old github.com/questdb/go-questdb-client path.
  • Fix godoc for WithTlsInsecureSkipVerify #19

1.0.5

07 Sep 13:49
becd829
Compare
Choose a tag to compare

Release overview

Maintenance release to include important bug fixes and critical features.

What is new

  • Fix occasional auth signature corruption due to truncation in BigInt.Bytes() #20

1.0.4

30 Jun 07:12
1a4434f
Compare
Choose a tag to compare

Release overview

Maintenance release to include important bug fixes and critical features.

What is new

  • Add pending message validation to Flush call in #16

1.0.3

06 Jan 15:11
bb06b09
Compare
Choose a tag to compare

Release overview

Maintenance release to include important bug fixes and critical features.

What is new

1.0.2

12 Sep 11:19
fa4d7bd
Compare
Choose a tag to compare

Release overview

Maintenance release to include important bug fixes and critical features.

What is new

  • Add support for explicit timestamp columns #6

1.0.1

04 Jul 08:51
41ae846
Compare
Choose a tag to compare

Release overview

Maintenance release to include important bug fixes and critical features.

What is new

  • Add table and column name length validation in #1

1.0.0

13 Jun 12:50
Compare
Choose a tag to compare

Release overview

This is the first release of Golang ILP client for QuestDB.

Features:

  • Context-aware API.
  • Optimized for batch writes.
  • Supports TLS encryption and ILP authentication.
  • Tested against QuestDB 6.4.1 and newer versions.