-
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
2 fill() problems #780
Comments
When I worked on support for |
@otoolep aha, you're right that here's every aggregation function and the result
|
you can easily reproduce a lot of these problems like so:
and then just:
result (using 0.8 rc5)
|
more complete versions that checks all functions, and for some even a few different arguments
|
@nicolai86 , Working on it in the "fill" branch (bad name for it)... https://github.com/influxdb/influxdb/tree/fill . PR coming soon. |
@dgnorton thank you ! I tried to fix this locally myself but didn't find the origin of the behaviour so I'm really interested in the fix to help myself fiddle around with influxdb better. |
Fix issue #780 and add integration tests for each aggregate to test filling with null and 0.
Conflicts: engine/aggregator.go integration/data_test.go
for the record, here's the test, against 0.8.3
all looks good except derivative, which will probably be fixed as part of #334 |
I don't think the issue has only been partially resolved in both v0.8.3 or master - |
@nicolai86 i would make a new ticket for that, that's looks like a different issue. |
I noticed two things with
fill()
:using influxdb-cli:
there is a 600 second gap between the last and second-to-last point, so the gap is within the data range. Using
where time > 1406230368s
to exclude 406230367000 creates the empty range at the end, which is nothing new given #426 , so this a different case, also evidenced by the fact that selecting max(value) activates the filling (see below).So consider this a tentative feature request to make the fill work without aggregation function. there is some ambiguity about what should happen when the input dataset has too many points per given group-interval. In that case I would assume that its the users' responsability to assure there's a datapoint per group-by-interval, and if the user has too many, we can just use the first or last. Of course, all of this might be too much of a hassle, in which case I'm fine with not executing on this feature request and just using whatever is the most lightweight aggregation function (
first()
?), even when no aggregation should strictly be needed.continuing.... let's add
max()
around the value:now the filling activates, but we get bogus values?
confirm with different fill value:
just to make sure influxdb-cli is not doing something funky, here's the http sniff to influxdb, which confirms influx returns the values.
The text was updated successfully, but these errors were encountered: