influxdata / influxdata/influxdb-client-python

Missleading warning in query "buckets()"

Open
#568 1 comment 0 reactions 0 assignees View on GitHub
bug
Dominant language
Python
Stars
793
Forks
186
Avg merge
3h 2m
Merged PRs (30d)
1

Description

### Specifications

* Client Version: v2.6.1
* InfluxDB Version: 'X-Influxdb-Build': 'OSS', 'X-Influxdb-Version': 'v2.6.1'
* Platform: Ubuntu 22.04.2 LTS, Python 3.10.6

1. Create a client to a local influx server.
2. Query the buckets

the last step prints a warning messages that provides a non-working solution. The solution does not apply to the returned table.

### Code sample to reproduce problem

```python
>>> from influxdb_client import InfluxDBClient
>>> c = InfluxDBClient(url="http://localhost:8086", org=..., token=...);
>>> r_api = c.query_api()
>>> r_api.query_data_frame(query='buckets()')
/home/juanpi/virtual_enviroments/wabesense-data/lib/python3.10/site-packages/influxdb_client/client/warnings.py:31: MissingPivotFunction: The query doesn't contains the pivot() function.

The result will not be shaped to optimal processing by pandas.DataFrame. Use the pivot() function by:

buckets() |> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value")

You can disable this warning by:
import warnings
from influxdb_client.client.warnings import MissingPivotFunction

warnings.simplefilter("ignore", MissingPivotFunction)

For more info see:
- https://docs.influxdata.com/resources/videos/pivots-in-flux/
- https://docs.influxdata.com/flux/latest/stdlib/universe/pivot/
- https://docs.influxdata.com/flux/latest/stdlib/influxdata/influxdb/schema/fieldsascols/

warnings.warn(message, MissingPivotFunction)
result table name id organizationID retentionPolicy retentionPeriod
0 _result 0 _monitoring 9ff20ba199aff20d 1f4f3678a832d418 None 604800000000000
1 _result 0 _tasks 7de84af1deb77ca4 1f4f3678a832d418 None 259200000000000
2 _result 0 scratch c7902563eb5f9007 1f4f3678a832d418 None 604800000000000
```

### Expected behavior

Either the suggested solution should be correct, or no warning should be emitted.

### Actual behavior

A solution is provided that does not apply to the returned table.

### Additional info

_No response_

Contributor guide

No contributing guide indexed for this repository

Research direction

Reproduce the warning with InfluxDBClient.query_api().query_data_frame(query='buckets()') using the example and inspect the warning behavior around this entry point. Done means the warning is suppressed for this result or its suggested query produces a valid result shape; verify the change against the shown buckets table.

Written by the indexing model from the issue text.

Assessment

Tech stack
pandas, python
Domain
databases
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.