-
Notifications
You must be signed in to change notification settings - Fork 3.6k
Description
I'm encountering an issue when using influxdb3-explorer to import CSV data into InfluxDB 3 core. Although the "Parse Data" and "Convert to Line Protocol" steps succeed, the "Write to Database" operation fails when a field column (e.g., WaterTemperature) contains integer values — even if they are represented as floats with zero decimals (like 17.00).
Steps to reproduce:
- Upload a CSV file containing a numeric field (e.g., WaterTemperature) with values like 17, 18, or 17.00.
- Parse and convert to Line Protocol successfully.
- Attempt to write to the database.
- The write fails.

chicago_water_sensors-format_test.csv


Expected behaviour:
- Numeric values like 17 or 17.00 in CSV should be interpreted as floats when the target field is typed as float.
- Alternatively, the system should auto-coerce integers to floats during write if schema allows it (to avoid user confusion).
- At minimum, the frontend (explorer) should reflect potential type mismatches before attempting write.
Actual behaviour:
response error:
API response error: parsing failed for write_lp endpoint invalid column type for column 'WaterTemperature', expected iox::column_type::field::float, got iox::column_type::field::integer
Environment info:
influxdb3-explorer version: by docker from influxdata/influxdb3-ui:1.0.3
v1.0.3
influxdb 3 core version

Suggested Fixes
- Update influxdb3-explorer CSV-to-LP logic to default numeric fields to float unless explicitly marked as integer.
- Enhance InfluxDB 3’s write_lp endpoint to support implicit integer → float promotion for field values (if schema defines float).
- Improve error feedback in UI to highlight type conflicts before write attempt.
This behavior creates a poor UX, as users are not aware of internal type handling differences between CSV parsing and database expectations.