Skip to content

Releases: influxdata/influxdb-client-java

6.1.0

Choose a tag to compare

@bednar bednar released this 20 May 05:51

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

Choose a tag to compare

@bednar bednar released this 19 Apr 05:44

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

Choose a tag to compare

@bednar bednar released this 18 Mar 06:55

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

Choose a tag to compare

@bednar bednar released this 18 Feb 07:08

Bug Fixes

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

4.2.0

Choose a tag to compare

@bednar bednar released this 04 Feb 06:37

Bug Fixes

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

4.1.0

Choose a tag to compare

@bednar bednar released this 20 Jan 08:11

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

4.0.0

Choose a tag to compare

@bednar bednar released this 26 Nov 07:17

Breaking Changes

The Arguments helper moved from package com.influxdb to package com.influxdb.utils.

Management API

This release uses the latest 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 LegacyAuthorizationsService to deal with legacy authorizations
  • Add ResourceService to retrieve all knows resources
  • Move postSignin operation from DefaultService to SigninService
  • Move postSignout operation from DefaultService to SignoutService
  • Remove TemplateApi in favour of InfluxDB Community Templates. For more info see - influxdb#19300, openapi#192

Deprecates

  • InfluxDBClient.health(): instead use InfluxDBClient.ping()
  • InfluxDBClientKotlin.health(): instead use InfluxDBClientKotlin.ping()
  • InfluxDBClientScala.health(): instead use InfluxDBClientScala.ping()
  • SecretsService.postOrgsIDSecrets(): instead use SecretsService.deleteOrgsIDSecretsID()

Features

  1. #272: Add PingService to check status of OSS and Cloud instance
  2. #278: Add query method with all params for BucketsApi, OrganizationApi and TasksApi
  3. #280: Use async HTTP calls in the Batching writer
  4. #251: Client uses Reactive Streams in public API, WriteReactiveApi is cold Publisher [influxdb-client-reactive]

Bug Fixes

  1. #279: Session authentication for InfluxDB 2.1
  2. #276: influxdb-client-utils uses different package then influxdb-client-core[java module system]

API

  1. #281: Update to the latest InfluxDB OSS API

CI

  1. #275: Deploy influxdb-client-test package into Maven repository

3.4.0

Choose a tag to compare

@bednar bednar released this 22 Oct 06:28

Features

  1. #269: Add possibility to use dynamic measurement in mapping from/to POJO

CI

  1. #267: Add JDK 17 (LTS) to CI pipeline instead of JDK 16

3.3.0

Choose a tag to compare

@bednar bednar released this 17 Sep 06:24

Bug Fixes

  1. #258: Avoid requirements to jdk.unsupported module
  2. #263: Fix dependency structure for flux-dsl module

Dependencies

  1. #258: Update dependencies:
    • Gson to 2.8.8

3.2.0

Choose a tag to compare

@bednar bednar released this 20 Aug 05:51

Bug Fixes

  1. #252: Spring auto-configuration works even without influxdb-client-reactive [spring]
  2. #254: Avoid reading entire query response into bytes array

Deprecates

  1. #255: InfluxDBClient#getWriteApi() instead use InfluxDBClient#makeWriteApi()

Documentation

  1. #257: How to configure proxy