influxdb-client-java icon indicating copy to clipboard operation
influxdb-client-java copied to clipboard

Java client: SHOW SERIES return empty result

Open marcinkoziarz opened this issue 1 year ago • 0 comments
trafficstars

Hi, During implementation of tool that needs to retrieve schema of InfluxDB 2.7, I have encountered issue where show series return empty result, although underlying CSV contains correct data.

Data retrieved underneath as CSV is in format (note that two columns are empty!):

name,tags,key
,,temperature
,,pressure

I believe issue is in line https://github.com/influxdata/influxdb-client-java/blob/master/client/src/main/java/com/influxdb/client/internal/InfluxQLQueryApiImpl.java#L129 where last line of CSV is detected incorrectly, and instead of

if (csvRecord.size() == 1 || csvRecord.get(0).equals("")) {

it should be

if (csvRecord.size() == 1 && csvRecord.get(0).equals("")) {

Steps to reproduce:

  1. Run InfluxQLQueryResult result = client.getInfluxQLQueryApi().query(new InfluxQLQuery("SHOW SERIES", "mydb"));
  2. Observe that result.getResults().size() == 1, but result.getResults().get(0).getSeries().size() == 0

Expected behavior: Object InfluxQLQueryResult should contain list of series retrieved from InfluxDB, as running SHOW SERIES from command line does it.

Actual behavior: First result from InfluxQLQueryResult has no series parsed from InfluxDB query response.

Specifications:

  • Client Version: 7.0.0
  • InfluxDB Version: 2.7.0
  • JDK Version: openjdk version "17.0.8.1" 2023-08-24
  • Platform: Linux (Arch)

marcinkoziarz avatar Feb 14 '24 15:02 marcinkoziarz