-
Notifications
You must be signed in to change notification settings - Fork 3.6k
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
tsm1 storage engine reports strange spikes in values #4357
Comments
Are you using the native collectd plugin? |
I'm able to reproduce some odd values using the native collectd plugin. |
@jwilder Yes, I'm using the native collectd plugin, just as before, when running 0.94.2. |
I'm seeing this even with telegraf data, specifically in the mem_available_percent measurement. |
I've verified that there is a bug in the float encoding when similar values are recorded. Working on a fix. |
sweet, thanks Jason. |
I had a similar problem back in July: https://groups.google.com/forum/#!searchin/influxdb/collectd$20john$20leach/influxdb/ZUZj6m-29mk/YiZTnOiyCQAJ |
You're going to want to pull in dgryski/go-tsz@918e888 too |
@dgryski Thanks. Did not see that other change. |
If similar float values were encoded, the number of leading bits would overflow the 5 available bits to store them (e.g. store 33 in 5 bits). When decoding, the values after the overflowed value would spike to very large and small values. To prevent the overflow, we clamp the value to 31 which is the maximum number of leading zero bits we can encoded. Fixes #4357
If similar float values were encoded, the number of leading bits would overflow the 5 available bits to store them (e.g. store 33 in 5 bits). When decoding, the values after the overflowed value would spike to very large and small values. To prevent the overflow, we clamp the value to 31 which is the maximum number of leading zero bits we can encoded. Fixes #4357
This looks fixed to me. I've not had one strange metric for interface_rx/if_packets since I deployed this code yesterday. Previously I'd had them fairly regularly! Thanks! |
Using collectd to feed perpetually increasing, counter-type values (e.g. eth0 rx/tx packet counters) into InfluxDB with tsm1 results in strange outliers occasionally:
This in turn causes
derivative(mean("value"), 1s)
to go bananas, and results in unusable Grafana graphs.Nothing has changed on the sending (collectd) side - only the storage engine in InfluxDB.
The text was updated successfully, but these errors were encountered: