Skip to content

Releases: influxdata/influxdb-client-java

6.5.0

29 Aug 09:02
Compare
Choose a tag to compare

Breaking Changes

FluxDSL

The percentile() function renamed to quantile().

Features

  1. #366: Added an endpoint to query with InfluxQL (v1) for more info see README.md.

Bug Fixes

  1. #390: Rename percentile() function renamed to quantile() [FluxDSL]
  2. #398: Append task option at the end of script

Dependencies

Update dependencies:

Build:

  • #389: scala-collection-compat_2.12 to 2.8.1
  • #392: gson to 2.9.1
  • #396: micrometer-registry-influx to 1.9.3
  • #402: spring-boot to 2.7.3

Maven Plugin:

  • #391: maven-bundle-plugin to 5.1.8
  • #395: maven-site-plugin to 3.12.1
  • #399: maven-project-info-reports-plugin to 3.4.1
  • #401: maven-javadoc-plugin to 3.4.1
  • #404: maven-checkstyle-plugin to 3.2.0

Provided:

  • #403: slf4j-api to 2.0.0

Test:

  • #400: mockito to 4.7.0

6.4.0

29 Jul 16:57
Compare
Choose a tag to compare

Release Notice

Spring

⚠️ The client upgrades the 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

  1. #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]
  2. #376 Add FillFlux [FluxDSL]

Bug Fixes

  1. #358: Missing backpressure for asynchronous non-blocking API
  2. #372: Redact the Authorization HTTP header from log

Dependencies

  1. #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

30 Jun 12:48
Compare
Choose a tag to compare

Features

  1. #367: Add HTTP status code to detail message of InfluxException
  2. #367: Add GatewayTimeoutException for HTTP status code 504
  3. #371: Add possibility to customize the User-Agent HTTP header

CI

  1. #369: Add JDK 18 to CI pipeline

6.2.0

24 Jun 05:49
Compare
Choose a tag to compare

Features

  1. #354: Supports contains filter [FluxDSL]

Bug Fixes

  1. #359: Enable OkHttp retries for connection failure
  2. #360: Fix double quote escape in flux-dsl

6.1.0

20 May 05:51
Compare
Choose a tag to compare

Breaking Changes

  1. #344: Rename InvocableScripts to InvokableScripts

Features

  1. #337: Supports columns function [FluxDSL]
  2. #347: Add Scala WriteApi

Bug Fixes

  1. #339: Evaluation of connection string
  2. #352: Creating Tasks with import statements

6.0.0

19 Apr 05:44
Compare
Choose a tag to compare

Migration Notice

⚠️ The InfluxDB Client Library uses internally 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 to io.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 and TelegrafsApi
    • TelegrafRequest renamed to TelegrafPluginRequest to create/update Telegraf configuration
    • TelegrafPlugin.TypeEnum.INPUTS renamed to TelegrafPlugin.TypeEnum.INPUT
    • TelegrafPlugin.TypeEnum.OUTPUTS renamed to TelegrafPlugin.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 with Stack and Template 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

  1. #324 Removed dependency on io.swagger:swagger-annotations and updated swagger to the latest version

  2. #289: Upgrade RxJava2 -> RxJava3, update outdated dependencies

  3. #316: Add InvocableScriptsApi to create, update, list, delete and invoke scripts by seamless way

  4. #315: Add support for timezones [FluxDSL]

  5. #317: Gets HTTP headers from the unsuccessful HTTP request

  6. #334: Supports not operator [FluxDSL]

  7. #335: URL to connect to the InfluxDB is always evaluate as a connection string

  8. #329: Add support for write consistency parameter [InfluxDB Enterprise]

    Configure consistency via Write 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

  1. #313: Do not deliver exception when the consumer is already disposed [influxdb-client-reactive]

5.0.0

18 Mar 06:55
Compare
Choose a tag to compare

Breaking Changes

  • Change type of PermissionResource.type to String. You are able to easily migrate by:
    - resource.setType(PermissionResource.TypeEnum.BUCKETS);
    + resource.setType(PermissionResource.TYPE_BUCKETS);

Bug Fixes

  1. #303: Change PermissionResource.type to String

4.3.0

18 Feb 07:08
Compare
Choose a tag to compare

Bug Fixes

  1. #300: Uses native support for Rx requests to better performance

4.2.0

04 Feb 06:37
Compare
Choose a tag to compare

Bug Fixes

  1. #300: Add missing PermissionResources from Cloud API definition

4.1.0

20 Jan 08:11
Compare
Choose a tag to compare

Features

  1. #286: Add support for Parameterized Queries

Bug Fixes

  1. #283: Serialization null tag's value into LineProtocol
  2. #285: Default dialect for Query APIs
  3. #294: Mapping measurement with primitive float
  4. #297: Transient dependency of okhttp, retrofit and rxjava
  5. #292: Publishing runtime error as a WriteErrorEvent