Commit Graph

7 Commits (jdstrand/update-golang-jwt-1.10)

Author SHA1 Message Date
Jonathan A. Sternberg 634471f12e
Fix subquery functionality when a function references a tag from the subquery
It has previously been allowed for a subquery to use a tag within a
function (such as `count()`) when the tag is from a subquery and the
subquery itself references a field at some point to perform the join.

This functionality regressed in 1.6 because of a change in how
subqueries were executed that forgot to treat a tag the same as a string
field.

This fixes that regression and adds a test case to avoid hitting that
regression again.
2018-10-04 10:05:20 -05:00
Jonathan A. Sternberg 0f304690c5 Enable casting values from a subquery
This also fixes the cursor system to abandon iterators that will not
produce meaningful results since the variables are all unknown types.

This creates a weird behavior that existed in previous releases and we
are keeping here for backwards compatibility. If a subquery referenced a
field that didn't exist in the subquery, it will return nothing. But, if
there are two subqueries and one of them has the field exist and the
other doesn't, the second will return all null values.
2018-03-30 16:58:37 -05:00
Jonathan A. Sternberg dd79f06efa
Merge pull request #9641 from influxdata/js-subquery-tests
Add some unit tests to subqueries
2018-03-29 14:15:26 -05:00
Jonathan A. Sternberg 2fb67dd4be Fix subquery conditions with the cursor refactor 2018-03-28 13:13:46 -05:00
Jonathan A. Sternberg 41bc1ab241 Use a null placeholder for NaN results
This ensures that NaN gets serialized as a null value and that it does
not get replaced with the fill value.
2018-03-27 08:44:44 -05:00
Jonathan A. Sternberg df7a660fb3 Modify the Select call to return a Cursor
The Cursor returned will be capable of scanning rows into a structure.
It replaces part of the function for why the Emitter existed. The
Emitter would both join the resulting rows and then transform the values
into a models.Row so it could be returned to the results.

In the future, we will be able to use the Cursor directly to write out
values which should be more memory efficient.
2018-03-09 12:47:41 -06:00
Jonathan A. Sternberg 9a2357c2c0 Separate the query engine into a separate package
This change provides a clear separation between the query engine
mechanics and the query language so that the language can be parsed and
dealt with separate from the query engine itself.
2017-08-16 13:38:43 -05:00