Commit Graph

11 Commits (7e63f7971601c93c69ce21a8995f5520e04762ad)

Author SHA1 Message Date
Nathaniel Cook 2fe60c3ce2 fix: Defer writing HTTP headers in query service
This makes it so we can encode errors in HTTP headers so long as the
encoder did not write anything.

This also changes the behavior to encode the stats trailer even in the
event of an error.
2018-07-17 13:43:20 -06:00
Nathaniel Cook 85b7d36147 feat: Add query statistics
Introduces the Statisticser interface which ResultIterators may
implement.

The HTTP implementation uses HTTP trailers to preserve the statistics.
This way we do not need to have all encoders and decoders support
statistics.
2018-07-17 09:16:27 -06:00
Nathaniel Cook b63394da0a fix(errors): Update Fluxd errors
This PR also completes some TODOs about kit/errors and http/errors.
2018-06-28 16:56:35 -06:00
Nathaniel Cook d1ca38c71f chore(ifql): Rename IFQL to Flux 2018-06-11 09:26:10 -06:00
Jonathan A. Sternberg 911f053dd6 fix(http): keep the http response body open until the result has been read
This modifies the `MultiResultDecoder` interface to accept an
`io.ReadCloser` so the `ResultIterator` can close the `io.Reader`
instead of doing it through a defer call. It then makes it so the
`Cancel()` method will close the reader or the reader will be
automatically closed when `More()` returns false.
2018-05-25 15:03:52 -05:00
Nathaniel Cook 99f4e4a8b4 fix(query/csv): Encode result iterator errors
This change also adds Name() to the Result interface to allow for
correct MultiResultEncoding.
2018-05-24 16:38:50 -06:00
Jonathan A. Sternberg e18879370b feat(http): perform error handling in the transpiler and the query service
The query service now handles some errors (not all) from the ifqld
service. This way, the transpiler, which uses the query service, can
report when it encounters an error from ifqld.

The transpiler will now correctly return errors in the JSON response.
2018-05-24 17:14:16 -05:00
Nathaniel Cook affc7e3976 move types around to avoid cyclic imports 2018-05-21 17:02:42 -06:00
Nathaniel Cook 20345b8701 rewrite imports 2018-05-21 15:20:06 -06:00
Nathaniel Cook c0b01f16f8 update transpiler and influxql encoders 2018-05-19 15:28:37 -06:00
Adam 64e3c840ea Relocated several source files from private repo to here. 2018-05-17 11:35:53 -04:00