Releases: influxdata/influxdb-client-java
6.5.0
Breaking Changes
FluxDSL
The percentile()
function renamed to quantile()
.
Features
Bug Fixes
- #390: Rename
percentile()
function renamed toquantile()
[FluxDSL] - #398: Append
task option
at the end of script
Dependencies
Update dependencies:
Build:
- #389:
scala-collection-compat_2.12
to2.8.1
- #392:
gson
to2.9.1
- #396:
micrometer-registry-influx
to1.9.3
- #402:
spring-boot
to2.7.3
Maven Plugin:
- #391:
maven-bundle-plugin
to5.1.8
- #395:
maven-site-plugin
to3.12.1
- #399:
maven-project-info-reports-plugin
to3.4.1
- #401:
maven-javadoc-plugin
to3.4.1
- #404:
maven-checkstyle-plugin
to3.2.0
Provided:
- #403:
slf4j-api
to2.0.0
Test:
- #400:
mockito
to4.7.0
6.4.0
Release Notice
Spring
OkHttp
library to version 4.10.0
.
The spring-boot
supports the OkHttp:4.10.0
from the version 3.0.0-M4
- spring-boot/OkHttp 4.10,0.
For the older version of spring-boot
you have to configure Spring Boot's okhttp3.version
property:
<properties>
<okhttp3.version>4.10.0</okhttp3.version>
</properties>
Features
- #373: Improve
FluxDSL
:- Add ability to define imports for each flux function [FluxDSL]
- Add ability use multiple flux expressions [FluxDSL]
- Add ability to define custom functions [FluxDSL]
- Improve join flux, so it can be nested [FluxDSL]
- Add missing parameter variants for RangeFlux amd AggregateWindow [FluxDSL]
- Add TruncateTimeColumnFlux [FluxDSL]
- Add ArrayFromFlux [FluxDSL]
- Add UnionFlux [FluxDSL]
- #376 Add FillFlux [FluxDSL]
Bug Fixes
- #358: Missing backpressure for asynchronous non-blocking API
- #372: Redact the
Authorization
HTTP header from log
Dependencies
- #377: Update dependencies:
Build:
- kotlin-stdlib to 1.7.10
- kotlinx-coroutines-core to 1.6.4
- lombok to 1.18.24
- micrometer-registry-influx to 1.9.2
- okhttp3 to 4.10.0
- okio to 3.2.0
- rxjava to 3.1.5
- scala-library_2 to 2.12.16
- scala-collection-compat_2.12 to 2.8.0
- spring to 5.3.22
- spring-boot to 2.7.2
Maven Plugin:
- maven-bundle-plugin to 5.1.7
- maven-checkstyle-plugin to 3.1.2
- maven-compiler-plugin to 3.10.1
- maven-enforcer-plugin to 3.1.0
- maven-failsafe-plugin to 3.0.0-M7
- maven-jar-plugin to 3.2.2
- maven-javadoc-plugin to 3.4.0
- maven-project-info-reports-plugin to 3.4.0
- maven-site-plugin to 3.12.0
- maven-surefire-plugin to 3.0.0-M7
- build-helper-maven-plugin to 3.3.0
- dokka-maven-plugin to 1.7.10
- jacoco-maven-plugin to 0.8.8
- karaf-maven-plugin to 4.4.1
- kotlin-maven-plugin to 1.7.10
- license-maven-plugin to 4.1
- nexus-staging-maven-plugin to 1.6.13
- scala-maven-plugin to 4.7.1
- scalatest-maven-plugin to 2.1.0
- scala-maven-plugin to 3.4.4
- scoverage-maven-plugin to 1.4.11
- versions-maven-plugin to 2.11.0
Test:
- assertj-core to 3.23.1
- junit-jupiter-engine to 5.9.0
- junit-platform-runner to 1.9.0
- mockito to 4.6.1
- scalatest_2.12 to 3.2.12
- scalatest_2.13 to 3.2.12
6.3.0
6.2.0
6.1.0
6.0.0
Migration Notice
RxJava
to support write with batching, retry and backpressure.
The underlying outdated RxJava2
library was upgraded to the latest RxJava3
.
Changes in public API
WriteService
imports:io.reactivex.Single
is refactored toio.reactivex.rxjava3.core.Single
WriteOptions
imports:io.reactivex.BackpressureOverflowStrategy
->io.reactivex.rxjava3.core.BackpressureOverflowStrategy
io.reactivex.Scheduler
->io.reactivex.rxjava3.core.Scheduler
io.reactivex.schedulers.Schedulers
->io.reactivex.rxjava3.schedulers.Schedulers
InfluxDBClientReactive
:Single<HealthCheck> health()
->Publisher<HealthCheck> health()
WriteOptionsReactive
io.reactivex.Scheduler
->io.reactivex.rxjava3.core.Scheduler
io.reactivex.schedulers.Schedulers
->io.reactivex.rxjava3.schedulers.Schedulers
TelegrafsService
andTelegrafsApi
TelegrafRequest
renamed toTelegrafPluginRequest
to create/updateTelegraf
configurationTelegrafPlugin.TypeEnum.INPUTS
renamed toTelegrafPlugin.TypeEnum.INPUT
TelegrafPlugin.TypeEnum.OUTPUTS
renamed toTelegrafPlugin.TypeEnum.OUTPUT
Services
This release also uses new version of InfluxDB OSS API definitions - oss.yml. The following breaking changes are in underlying API services and doesn't affect common apis such as - WriteApi
, QueryApi
, BucketsApi
, OrganizationsApi
...
- Add
ConfigService
to retrieve InfluxDB's runtime configuration - Add
DebugService
to retrieve debug and performance data from runtime - Add
RemoteConnectionsService
to deal with registered remote InfluxDB connections - Add
MetricsService
to deal with exposed prometheus metrics - Add
ReplicationService
to manage InfluxDB replications - Update
TemplatesService
to deal withStack
andTemplate
API - Update
RestoreService
to deal with new restore functions of InfluxDB
List of updated dependencies:
- Core:
- com.squareup.okhttp3:okhttp:jar:4.9.3
- com.squareup.okio:okio:jar:2.10.0
- com.google.code.gson:gson:jar:2.9.0
- io.reactivex.rxjava3:rxjava:jar:3.1.4
- org.apache.commons:commons-csv:jar 1.9.0
- io.gsonfire:gson-fire:1.8.5
- Kotlin
- org.jetbrains.kotlin:kotlin-stdlib:1.6.20
- org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.4.3
- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.0
- Karaf
- karaf 4.3.6
- gson-fire 1.8.5
- Micrometer
- micrometer 1.8.4
- OSGi
- org.osgi:osgi.core:8.0.0
- Spring integration
- org.springframework.boot:spring-boot:jar:2.6.6
- org.springframework:spring-core:jar:5.3.17
Features
-
#324 Removed dependency on
io.swagger:swagger-annotations
and updated swagger to the latest version -
#289: Upgrade
RxJava2
->RxJava3
, update outdated dependencies -
#316: Add
InvocableScriptsApi
to create, update, list, delete and invoke scripts by seamless way -
#315: Add support for timezones [FluxDSL]
-
#317: Gets HTTP headers from the unsuccessful HTTP request
-
#334: Supports not operator [FluxDSL]
-
#335: URL to connect to the InfluxDB is always evaluate as a connection string
-
#329: Add support for write
consistency
parameter [InfluxDB Enterprise]Configure
consistency
viaWrite API
:- writeApi.writeRecord(WritePrecision.NS, "cpu_load_short,host=server02 value=0.67"); + WriteParameters parameters = new WriteParameters(WritePrecision.NS, WriteConsistency.ALL); + + writeApi.writeRecord("cpu_load_short,host=server02 value=0.67", parameters);
Configure
consistency
via client options:- InfluxDBClient client = InfluxDBClientFactory.createV1("http://influxdb_enterpriser:8086", - "my-username", - "my-password".toCharArray(), - "my-db", - "autogen"); + InfluxDBClient client = InfluxDBClientFactory.createV1("http://influxdb_enterpriser:8086", + "my-username", + "my-password".toCharArray(), + "my-db", + "autogen", + WriteConsistency.ALL);
Bug Fixes
- #313: Do not deliver
exception
when the consumer is already disposed [influxdb-client-reactive]