Commit Graph

10134 Commits (23bbfb21924acbccc3aeee9e2908e2b3a0ad575f)

Author SHA1 Message Date
Ben Johnson 8c232f311b Merge pull request #6432 from benbjohnson/optimize-float-decoder
Optimize tsm1.FloatDecoder
2016-04-21 10:47:02 -06:00
Jason Wilder c71ee4f9b8 Merge pull request #6436 from influxdata/jw-reportcard
README changes
2016-04-21 10:30:29 -06:00
Ben Johnson d204a8b683
optimize tsm1.FloatDecoder
This commit changes the `FloatDecoder.val` from a `float64` type
to a `uint64` to avoid an additional type conversion during read.
Now the type gets converted to a `float64` only on call to `Values()`.
2016-04-21 08:49:12 -06:00
Jason Wilder 685e945dee Fix README issues
* Remove clustering notes
* Update doc links
2016-04-21 08:32:00 -06:00
Jason Wilder d6e1d97659 Add goreportcard badge 2016-04-20 16:58:47 -06:00
Jason Wilder fc948b4e50 Merge pull request #6186 from influxdata/jw-allocs
Write path tuning
2016-04-20 16:49:23 -06:00
Jason Wilder 4b32760dac Use stdlib func instead of scanning slices 2016-04-20 16:08:58 -06:00
Jason Wilder 87ceb7426a Don't lock the cache while adding entries
Entries have their own locking so the cache doesn't need to be lock
when adding to them.
2016-04-20 16:08:58 -06:00
Jason Wilder 89aeaafd50 Re-use the string point key 2016-04-20 16:08:58 -06:00
Jason Wilder 49492edd57 Default fields slice size 2016-04-20 16:08:54 -06:00
Jason Wilder 8741159229 Don't allocate a new string when unescaping 2016-04-20 16:00:26 -06:00
Jason Wilder fbaa7db54f Don't lock entry when scanning new values to add 2016-04-20 16:00:26 -06:00
Jason Wilder fde5576d64 Avoid allocations when no escape chars present 2016-04-20 16:00:26 -06:00
Jason Wilder 108f589714 Merge pull request #6427 from influxdata/jw-config-uints
Fix setting uint config options via env vars
2016-04-20 14:57:43 -06:00
Jason Wilder caa9592163 Fix setting uint config options via env vars 2016-04-20 14:38:08 -06:00
Jason Wilder bfa225f149 Merge pull request #6430 from influxdata/jw-cache-load-size
Disable cache max memory size when reloading the cache
2016-04-20 14:35:23 -06:00
Jason Wilder 7aefe1e889 Make TestTime_Elapsed less flaky
This test fails sometimes because the elapsed time is 1.999s which
is less than 2s, but very close to 2s to not matter.
2016-04-20 14:13:32 -06:00
Stephen Gutekanst 9dc09c5257 Make logging output location more programmatically configurable (#6213)
This has various benefits:

- Users embedding InfluxDB within other Go programs can specify a different logger / prefix easily.
- More consistent with code used elsewhere in InfluxDB (e.g. services, other `run.Server.*` fields, etc).
- This is also more efficient, because it means `executeQuery` no longer allocates a single `*log.Logger` each time it is called.
2016-04-20 21:07:08 +01:00
Jason Wilder f679787080 Disable cache max memory size when reloading the cache
The cache max memory size is an approximate size and can prevent a
shard from loading at startup.  This change disable the max size
at startup to prevent this problem and sets the limt back after
reloading.

Fixes #6109
2016-04-20 10:41:30 -06:00
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