9f26eb7630
When an NaN value was computed, it would be written back incorrectly as a string type instead of being omitted. This happened very rarely in the case that `stddev()` of a single value was computed and only when it was being done on a new shard. This correctly drops the value. The reason this wasn't correctly dropped previously is because NaN values are represented as a `(*float64)(nil)` which does not equal `nil` so the writeback system thought it was a non-nil point, but the writer encoded it as a string. In addition to the above, this also fixes the point writer to report the number of points actually written rather than the number of points desired to be written. Previously, if there was an error writing a point for some reason, the point would be silently dropped, but still recorded as a point that had been written. Now it reports the number of points that were written and omits the ones that were dropped. |
||
---|---|---|
.. | ||
config.go | ||
config_test.go | ||
meta_client.go | ||
meta_client_test.go | ||
points_writer.go | ||
points_writer_internal_test.go | ||
points_writer_test.go | ||
shard_mapper.go | ||
shard_mapper_test.go | ||
statement_executor.go | ||
statement_executor_test.go |