-
Notifications
You must be signed in to change notification settings - Fork 476
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix #614: drop NaN and infinity values from fields #616
Conversation
Hi @Crack, |
Sure - added. |
Hi, |
Added. Officially InfluxDB supports IEEE-754 floating points, but documentation makes no mention on NaN and infinity being unsupported, so I linked to GitHub issue: influxdata/influxdb#4089 |
They are unsupported by InfluxDB
But reading this issue, there is no response from some of the influx guys ? I am unsure if we should drop these values silently ? |
Use case I was thinking about when developing this is an application reporting Kafka metrics, namely: apache/flink#8513 (and some of my internal ones that use Spring Boot). There are two goals I'd like to achieve:
If we want some signaling of these values then I can do some changes around InfluxDB#write to throw an exception after a successful write to InfluxDB, and a flag to switch these off. Anyway, if InfluxDB starts supporting NaNs or infinities in the future, influxdb-java would need to be changed anyway, because current NaN serialization format outputs unicode garbage and that would need to be changed to something else. |
Thanks for the clarification and contribution ! |
Thanks! When do you plan to release a new version? |
@majst01 when do you plan to release a new version? |
Fox for #614 - drop NaN and +/- infinity values from fields while serializing Point to line protocol. They are unsupported by InfluxDB and all issues relating to them are old and got no progress.
I went with the simplest solution, assuming that if these values will be supported in the future then probably a change in driver will be required, unless InfluxDB aligns exactly with current Java serialization (NaN to U+FFFD - invalid character, and infinity to
∞
).