influxdata / influxdata/influxdb-client-python
Missleading warning in query "buckets()"
- 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