i'm using NodeRed 3.0.2 with node-red-contrib-influxdb.
I've build a small flow which writes the values of a Form to an Influx Database (V2.5).
As far as i know, if only the value changes Influx overwrites the existing data. But it doesnt overwrite, the json looks exactly like the other one but the values not up to date.
This is the payload whicht gets to the "influxdb out"
No, that is not correct. InfluxDB is a timeseries database and the expectation is that all incoming data is new. I think that it might be possible to change some data as long as you can specify the exact timestamp of the original but this is a very rare use-case.
The Timestamp is exact the same.
But if it doesnt overwrite the data it should create a new datapoint, but this doesn't happen.
Modify value on existing data - InfluxDB 2 - InfluxData Community Forums
You can only update field values, to do so you must write a point with the same key (measurement, tags keys and value, time), once written it will override the previous data.
Did you provide not only the exact timestamp but also the same key?
If it doesn't work via the node, try directly using the http-request node instead - if that works and the node doesn't, you can raise a bug against the node.
Is that exactly the same format of message that you use for writing the data originally? I thought that if you manually specify a time value in that way that it had to be in milliseconds (or whatever unit you have configured).
Show us what is in the record for that measurement, timestamp and tag in the database.
You can see in the screenshot what exactly gets to the Node. It is everytime the same but the value is different (1 or 0).
Here is a screenshot of the raw data in Influx:
I'v testet Influx with an http Request, that worked. I've send the following:
Fahrplan,tag=Batterie value=0 1672232400000000000
With different values and the database was updated.
It might be an Problem mit ms and ns, within the http request i can specifiy the granularity of the time within the node there is no option.