From 05a5496300a0ba5ecb03a56783d9d751165edb1c Mon Sep 17 00:00:00 2001 From: ideoma <2159629+ideoma@users.noreply.github.com> Date: Mon, 14 Jul 2025 18:39:03 +0100 Subject: [PATCH 1/2] build: release 3.0.0 --- .../net-questdb-client-tcp-auth-tests.csproj | 2 +- src/net-questdb-client/net-questdb-client.csproj | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/net-questdb-client-tcp-auth-tests/net-questdb-client-tcp-auth-tests.csproj b/src/net-questdb-client-tcp-auth-tests/net-questdb-client-tcp-auth-tests.csproj index 17a7440..2bd34b3 100644 --- a/src/net-questdb-client-tcp-auth-tests/net-questdb-client-tcp-auth-tests.csproj +++ b/src/net-questdb-client-tcp-auth-tests/net-questdb-client-tcp-auth-tests.csproj @@ -21,7 +21,7 @@ - + diff --git a/src/net-questdb-client/net-questdb-client.csproj b/src/net-questdb-client/net-questdb-client.csproj index 3bd2145..f9cbe39 100644 --- a/src/net-questdb-client/net-questdb-client.csproj +++ b/src/net-questdb-client/net-questdb-client.csproj @@ -16,7 +16,7 @@ https://github.com/questdb/net-questdb-client QuestDB, ILP QuestDB Limited - 2.1.0 + 3.0.0 true net6.0;net7.0;net8.0;net9.0 From 52e3fb6a9a8283a0b6e69cb9e78240c92cb9af6a Mon Sep 17 00:00:00 2001 From: ideoma <2159629+ideoma@users.noreply.github.com> Date: Mon, 14 Jul 2025 18:56:01 +0100 Subject: [PATCH 2/2] update readme --- README.md | 59 +++++++++++++++++++++++++++++++++---------------------- 1 file changed, 35 insertions(+), 24 deletions(-) diff --git a/README.md b/README.md index 469af34..c24c1b8 100644 --- a/README.md +++ b/README.md @@ -138,30 +138,41 @@ The config string format is: {http/https/tcp/tcps}::addr={host}:{port};key1=val1;key2=val2;keyN=valN; ``` -| Name | Default | Description | -|--------------------------|----------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------| -| `protocol` (schema) | `http` | The transport protocol to use. Options are http(s)/tcp(s). | -| `addr` | `localhost:9000` | The {host}:{port} pair denoting the QuestDB server. By default, port 9000 for HTTP, port 9009 for TCP. | -| `auto_flush` | `on` | Enables or disables auto-flushing functionality. By default, the buffer will be flushed every 75,000 rows, or every 1000ms, whichever comes first. | -| `auto_flush_rows` | `75000 (HTTP)` `600 (TCP)` | The row count after which the buffer will be flushed. Effectively a batch size. | -| `auto_flush_bytes` | `Int.MaxValue` | The byte buffer length which when exceeded, will trigger a flush. | -| `auto_flush_interval` | `1000` | The millisecond interval, which once has elapsed, the next row triggers a flush. | -| `init_buf_size` | `65536` | The starting byte buffer length. Overflowing this buffer will cause the allocation `init_buf_size` bytes (an additional buffer). | -| `max_buf_size` | `104857600` | Maximum size of the byte buffer in bytes. If exceeded, an exception will be thrown. | -| `username` | | The username for authentication. Used for Basic Authentication and TCP JWK Authentication. | -| `password` | | The password for authentication. Used for Basic Authentication. | -| `token` | | The token for authentication. Used for Token Authentication and TCP JWK Authentication, needs additional reference to `net-questdb-client-tcp-auth` assembly | -| `token_x` | | Un-used. | -| `token_y` | | Un-used. | -| `tls_verify` | `on` | Denotes whether TLS certificates should or should not be verifed. Options are on/unsafe_off. | -| `tls_ca` | | Un-used. | -| `tls_roots` | | Used to specify the filepath for a custom .pem certificate. | -| `tls_roots_password` | | Used to specify the filepath for the private key/password corresponding to the `tls_roots` certificate. | -| `auth_timeout` | `15000` | The time period to wait for authenticating requests, in milliseconds. | -| `request_timeout` | `10000` | Base timeout for HTTP requests before any additional time is added. | -| `request_min_throughput` | `102400` | Expected minimum throughput of requests in bytes per second. Used to add additional time to `request_timeout` to prevent large requests timing out prematurely. | -| `retry_timeout` | `10000` | The time period during which retries will be attempted, in milliseconds. | -| `max_name_len` | `127` | The maximum allowed bytes, in UTF-8 format, for column and table names. | +| Name | Default | Description | +|--------------------------|----------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| `protocol` (schema) | `http` | The transport protocol to use. Options are http(s)/tcp(s). | +| `addr` | `localhost:9000` | The {host}:{port} pair denoting the QuestDB server. By default, port 9000 for HTTP, port 9009 for TCP. | +| `auto_flush` | `on` | Enables or disables auto-flushing functionality. By default, the buffer will be flushed every 75,000 rows, or every 1000ms, whichever comes first. | +| `auto_flush_rows` | `75000 (HTTP)` `600 (TCP)` | The row count after which the buffer will be flushed. Effectively a batch size. | +| `auto_flush_bytes` | `Int.MaxValue` | The byte buffer length which when exceeded, will trigger a flush. | +| `auto_flush_interval` | `1000` | The millisecond interval, which once has elapsed, the next row triggers a flush. | +| `init_buf_size` | `65536` | The starting byte buffer length. Overflowing this buffer will cause the allocation `init_buf_size` bytes (an additional buffer). | +| `max_buf_size` | `104857600` | Maximum size of the byte buffer in bytes. If exceeded, an exception will be thrown. | +| `username` | | The username for authentication. Used for Basic Authentication and TCP JWK Authentication. | +| `password` | | The password for authentication. Used for Basic Authentication. | +| `token` | | The token for authentication. Used for Token Authentication and TCP JWK Authentication. | +| `token_x` | | Un-used. | +| `token_y` | | Un-used. | +| `tls_verify` | `on` | Denotes whether TLS certificates should or should not be verifed. Options are on/unsafe_off. | +| `tls_ca` | | Un-used. | +| `tls_roots` | | Used to specify the filepath for a custom .pem certificate. | +| `tls_roots_password` | | Used to specify the filepath for the private key/password corresponding to the `tls_roots` certificate. | +| `auth_timeout` | `15000` | The time period to wait for authenticating requests, in milliseconds. | +| `request_timeout` | `10000` | Base timeout for HTTP requests before any additional time is added. | +| `request_min_throughput` | `102400` | Expected minimum throughput of requests in bytes per second. Used to add additional time to `request_timeout` to prevent large requests timing out prematurely. | +| `retry_timeout` | `10000` | The time period during which retries will be attempted, in milliseconds. | +| `max_name_len` | `127` | The maximum allowed bytes, in UTF-8 format, for column and table names. | +| `protocol_version` | | Explicitly specifies the version of InfluxDB Line Protocol to use for sender. Valid options are:
• protocol_version=1
• protocol_version=2
• protocol_version=auto (default, if unspecified) | + +### Protocol Version + +Behavior details: + +| Value | Behavior | +|--------|---------------------------------------------------------------------------------------------------------------------------------------------------------| +| 1 | - Plain text serialization
- Compatible with InfluxDB servers
- No array type support | +| 2 | - Binary encoding for double arrays
- Full support for array | +| `auto` | - **HTTP/HTTPS**: Auto-detects server capability during handshake (supports version negotiation)
- **TCP/TCPS**: Defaults to version 1 for compatibility | ### net-questdb-client specific parameters