Commit Graph

10115 Commits (fd840f242c7a3afc90e9198d68b4a97225f78299)

Author SHA1 Message Date
Jonathan A. Sternberg e3275f22b7 Merge pull request #6419 from eleme/fix_transform_iterator_on_division
fix panic in transform iterator on division
2016-04-20 12:19:03 -04:00
thbourlove 0e3964d8c2 fix panic in transform iterator on division
if left point is nil in division expr, the influxd server would panic. Now check left point before use it.
2016-04-21 00:07:20 +08:00
Jason Wilder b1622fbcc7 Merge pull request #6426 from influxdata/jw-dataonly
Skip raft.db in dataonly build
2016-04-20 09:56:31 -06:00
Jonathan A. Sternberg 92e7fb33f2 Merge pull request #6433 from influxdata/js-fix-master-elapsed-test
Fix the elapsed tests which broke due to a merge
2016-04-20 11:47:09 -04:00
Jonathan A. Sternberg dbbb742c40 Fix the elapsed tests which broke due to a merge
A testing function had its signature modified. The new elapsed test code
was not modified for the PR and fails to compile now that the PR was
merged.
2016-04-20 11:37:36 -04:00
Jonathan A. Sternberg c8c38e15cd Merge pull request #6386 from influxdata/js-iterator-next-error
Modify all of the iterators to allow returning an error on Next()
2016-04-20 10:39:53 -04:00
Ben Johnson 54454e1e5b Merge pull request #6424 from benbjohnson/optimize-bit-reader
Optimize tsm1.BitReader
2016-04-20 08:28:24 -06:00
Jason Wilder 7ca9992cec Merge pull request #5582 from seiflotfy/validator
Add Block checksum validation and "influx_inspect verify" tool
2016-04-19 14:52:30 -06:00
Seif Lotfy 467bc6b269 Use TSMReaderOptions MMAP in verify cmd 2016-04-19 22:33:03 +02:00
Seif Lotfy c6e3c87e00 Add Block checksum validation and "influx_inspect verify" tool
Fixes #5502
2016-04-19 22:33:03 +02:00
Jason Wilder 4e8c397771 Skip raft.db in dataonly build 2016-04-19 13:54:13 -06:00
Nathaniel Cook 7def8bc0c9 Merge pull request #6423 from influxdata/nc-elapsed
Add elapsed function
2016-04-19 13:43:30 -06:00
Cameron Sparr 21db76b337 Prevent InfluxDB client from leaking TCP connections
If users properly call client.Close(), then this will make sure that
established tcp connections dont continually grow when creating new http
clients.

This fixes the case where users are creating new http clients on top of
existing _valid_ connections.

This was encountered in Telegraf when we were recreating our http
clients after getting write failures that were unrelated to the actual
connection being severed (such as typos in the retention policy, see
https://github.com/influxdata/telegraf/issues/1058)
2016-04-19 13:18:33 -06:00
Nathaniel Cook 465f5a375f add elapsed function 2016-04-19 12:54:54 -06:00
Jonathan A. Sternberg 132b9e5496 Merge pull request #6414 from influxdata/js-prevent-query-pipelining
Send the "Connection: close" header for queries
2016-04-19 14:54:07 -04:00
Jonathan A. Sternberg 493ef0e1ce Merge pull request #6416 from influxdata/js-3166-deterministic-limit
Sort the series keys inside of a tag set so the output is deterministic
2016-04-19 14:49:49 -04:00
Jason Wilder e9b22ce831 Merge pull request #6422 from influxdata/jw-timestamp
Use int64 instead of time.Time in timestamp encoder/decoders
2016-04-19 11:53:53 -06:00
Ben Johnson 1d2238c642
optimize tsm1.BitReader
This commit rewrites the `tsm1.BitReader` to use an 8-byte buffer
instead of a 1-byte buffer and provide an inlineable fast bit read.
2016-04-19 11:34:17 -06:00
Jason Wilder f841a90d35 Use int64 instead of time.Time in timestamp encoder/decoder 2016-04-19 10:25:27 -06:00
Jason Wilder 61beeca426 Update timestamp benchmarks 2016-04-19 10:17:32 -06:00
David Norton c3813fc64f Merge pull request #6418 from influxdata/dn-auth
add WriteAuthorizer interface
2016-04-19 08:01:27 -04:00
David Norton 5e9ff7bc93 add WriteAuthorizer interface 2016-04-19 00:03:57 -04:00
Jonathan A. Sternberg 09c46a451a Sort the series keys inside of a tag set so the output is deterministic
The series keys within a tag set were previously not sorted which would
cause the output to be non-deterministic. This sorts the output series
by their keys so it has a consistent output especially when using
limits.

Fixes #3166.
2016-04-18 17:45:31 -04:00
Jonathan A. Sternberg 8bdd44107f Send the "Connection: close" header for queries
CloseNotify() is not compatible with pipelining. Adding this header
prevents the client from attempting to pipeline requests.
2016-04-18 15:38:50 -04:00
Jonathan A. Sternberg 5a53fc5d0d Merge pull request #6413 from aaronknister/http_goroutine_leak
Prevent goroutine leak from persistent http connections
2016-04-18 15:19:24 -04:00
Aaron Knister 77db7ad618 Prevent goroutine leak in http service for persistent query connections 2016-04-18 15:11:04 -04:00
Jonathan A. Sternberg 7ec2a991d5 Modify all of the iterators to allow returning an error on Next()
This also switches the remaining iterators to be lazy so they can return
errors properly. They needed to be converted to lazy initialization
anyway, which has the side effect of making it much easier for us to
propagate the underlying error during initialization.

Updated the Emitter to return errors when it cannot read properly from
the iterators.
2016-04-18 11:17:55 -04:00
Jonathan A. Sternberg 7a1274790c Merge pull request #6403 from influxdata/js-6398-create-retention-policy-parse-error
Fix CREATE RETENTION POLICY parsing so it doesn't consume tokens it shouldn't
2016-04-17 15:50:54 -04:00
Jonathan A. Sternberg 34544d2c4b Fix CREATE RETENTION POLICY parsing so it doesn't consume tokens it shouldn't
The optional sections of the command consumed the semicolon token and
didn't put it back for the outer loop. The code shouldn't explicitly
check for a semicolon or EOF anyway, so these checks were removed and
the token gets unscanned if it doesn't match the optional token that the
parser is looking for.

Fixes #6398.
2016-04-17 02:41:17 -04:00
Jonathan A. Sternberg 93745d9693 Merge pull request #6391 from influxdata/js-5553-limit-queries-slow-with-group-by
Propagate the limit option to the low level iterators
2016-04-16 09:39:25 -04:00
Jonathan A. Sternberg 8ed877a020 Merge pull request #6103 from influxdata/js-3247-derivative-across-intervals
Implement derivatives across intervals for aggregate queries
2016-04-16 09:39:14 -04:00
Jonathan A. Sternberg bd5fdd797d Propagate the limit option to the low level iterators
When a GROUP BY or multiple sources are used, the top level limit
iterator requires reading the entire iterator stream so it can find all
of the tag groups it needs to return. For large data series, this ends
up with the limit iterator discarding a lot of output.

This change adds a new lower level limit iterator on each series itself
so that there are fewer data points that have to be thrown away by the
top level iterator.

Fixes #5553.
2016-04-15 18:23:54 -04:00
Jonathan A. Sternberg 86046bb2d0 Implement derivatives across intervals for aggregate queries
For aggregate queries, derivatives will now alter the start time to one
interval behind and will use that interval to find the derivative of the
first point instead of giving no value for that interval. Null values
will still be discarded so if the interval before the one you are
querying is null, then it will be discarded like if it were in the
middle of the query. You can use `fill(0)` to fill in these values.

This does not apply to raw queries yet.

Also modified the derivative and difference aggregates to use the stream
iterator instead of the reduce slice iterator for space efficiency.

Fixes #3247. Contributes to #5943.
2016-04-15 18:16:08 -04:00
Jonathan A. Sternberg f4ce20c92a Merge pull request #6394 from influxdata/js-integer-literal-duration-math
Allow time math with integer timestamps
2016-04-15 18:15:43 -04:00
Jonathan A. Sternberg 0144903686 Merge pull request #6272 from influxdata/js-3369-query-time-range-overflow
Detect when a time literal will overflow or underflow the query engine
2016-04-15 18:15:13 -04:00
Jonathan A. Sternberg debe55702a Merge pull request #6399 from influxdata/js-changelog-update
Update the changelog in master from v0.12.1
2016-04-15 17:53:13 -04:00
Jonathan A. Sternberg f43eed2815 Merge pull request #6362 from influxdata/js-series-keys-tags
Do not filter out empty tags from series keys
2016-04-15 17:43:45 -04:00
Jonathan A. Sternberg a85188bd61 Allow time math with integer timestamps 2016-04-15 17:36:37 -04:00
Jonathan A. Sternberg 425e315f45 Detect when a time literal will overflow or underflow the query engine
Fixes #3369.
2016-04-15 17:35:54 -04:00
Jonathan A. Sternberg 6dbfe81e6b Update the changelog in master from v0.12.1
Removed bugfixes from 0.13.0 that were included in 0.12.1.
2016-04-15 17:34:56 -04:00
Jonathan A. Sternberg 1160b52a3a Merge pull request #6383 from influxdata/js-query-executor-panic-recovery
Recover from a panic during query execution
2016-04-15 17:30:56 -04:00
Gunnar 8682dc8334 Merge pull request #6334 from influxdata/ga-env-multiple-inputs
Support env overrides for all inputs of the same type
2016-04-15 09:51:48 -07:00
gunnaraasen d983a8c0d3 Support env overrides for all inputs of the same type 2016-04-15 09:39:22 -07:00
Jonathan A. Sternberg 207a4b9d07 Recover from a panic during query execution 2016-04-15 11:13:54 -04:00
Jonathan A. Sternberg 6f5c72e6ea Merge pull request #6382 from influxdata/js-influxql-unused-code
Removing no longer used code in the query engine
2016-04-15 11:12:35 -04:00
Jonathan A. Sternberg 9c2e430a72 Removing no longer used code in the query engine 2016-04-15 10:22:34 -04:00
Jonathan A. Sternberg e2cf94e62c Merge pull request #6371 from influxdata/js-5707-deprecated-message
Return a deprecated message when IF NOT EXISTS is used
2016-04-15 09:32:36 -04:00
Jonathan A. Sternberg 42b68d915f Return a deprecated message when IF NOT EXISTS is used
The deprecated message is now attached to a new attribute returned with
the results. This message can then be read by clients to warn a user
about upcoming changes to the query engine.

The `influx` client has already been modified to read this message and
print it out for every format except CSV.

The first warning message is a deprecated message about removing `IF NOT
EXISTS` from `CREATE DATABASE`.

The message will also be printed to the server log.

Fixes #5707.
2016-04-15 09:17:59 -04:00
Ben Johnson 8838843ab4
Merge branch 'seiflotfy-fix6294' 2016-04-14 14:09:15 -06:00
Seif Lotfy 64a4808dcb
Merge branch 'fix6294' of https://github.com/seiflotfy/influxdb into seiflotfy-fix6294
Conflicts:
	CHANGELOG.md
2016-04-14 14:08:38 -06:00