Commit Graph

10780 Commits (05d1a948d01105677928649e356f64cb07b8f1b0)

Author SHA1 Message Date
Jonathan A. Sternberg 05d1a948d0 Merge pull request #7219 from influxdata/js-7218-alter-retention-policy-parsing-error
Fix alter retention policy when all options are used
2016-08-29 10:03:09 -05:00
Jonathan A. Sternberg b8a70105aa Fix alter retention policy when all options are used
We added `SHARD DURATION` as an extra option, but forgot to increase the
maximum number of allowable options from 3 to 4. So if 4 options were
used, the last one was ignored. This was commonly `DEFAULT`, but it
could have been any of the options.
2016-08-26 11:25:18 -05:00
Jonathan A. Sternberg 48d27d3b29 Merge pull request #7212 from influxdata/js-query-engine-negative-timestamps
Support negative timestamps for the query engine
2016-08-25 13:26:08 -05:00
Jonathan A. Sternberg 10029caf2f Support negative timestamps in the query engine
Negative timestamps are now supported. We also now refuse two
nanoseconds that are at the edge of the minimum time window. One of the
nanoseconds we do not accept is because we need MinInt64 to be used for
some internal comparisons in the TSM engine and it was causing an
underflow when we subtracted one from the minimum time. The second is so
we can have one minimum time that signifies the default minimum that
nobody can write to (so we can implicitly rewrite the timestamp on
aggregate queries) but still use the explicit timestamp if it is given
to us by the user. We aren't able to tell the difference between if the
user provided it or if it was implicit without those values being
different.

If the default minimum time is used with an aggregate query, we rewrite
the time to be the epoch for backwards compatibility since we believe
that's more important than supporting that extra nanosecond.
2016-08-25 12:52:41 -05:00
Jonathan A. Sternberg 5130cd703b Update changelog 2016-08-24 13:00:58 -05:00
Jonathan A. Sternberg 76f7333537 Merge pull request #7199 from influxdata/js-mode-aggregate-function
add mode() function & tests
2016-08-24 09:23:00 -05:00
Jonathan A. Sternberg 993ac1ca2e Remove confusing comment and unnecessary continue 2016-08-23 19:43:18 -05:00
Ashish Gaurav 4e17f9bb13 add mode() function & tests 2016-08-23 19:31:41 -05:00
Jason Wilder a2470c9f94 Update changelog 2016-08-22 14:38:27 -06:00
Jonathan A. Sternberg 58afeb0b71 Merge pull request #7163 from influxdata/js-close-notify-fix
Remove redundant code the from response formatter and fix CloseNotify
2016-08-17 12:28:44 -05:00
Jonathan A. Sternberg d2746ee8f2 The number of bytes recorded when using chunking was off by one
Previously, we implicitly added a newline and had to add one to the
number of bytes transmitted because we added that byte. That was removed
at some point and the metric was not updated to record the correct
value.
2016-08-17 11:54:19 -05:00
Jonathan A. Sternberg 71b54768d0 Remove redundant code the from response formatter and fix CloseNotify
The query killing functionality depends on the ResponseWriter exposing a
CloseNotify method. Since we wrap the http.ResponseWriter, the new
struct does not have that method and the HTTP handler would skip past
calling that method.

Instead of duplicating `Flush()` and `CloseNotify()` for every response
formatter, we will unify all of that under a single struct and create
formatters instead.

Also, fixes a bug where the header information from a query would not be
returned until some other data was returned with it because of
buffering and another bug in the gzipResponseWriter that wouldn't flush
the actual underlying ResponseWriter.
2016-08-16 15:54:03 -05:00
Ben Johnson 3c124036f0 Merge pull request #7127 from benbjohnson/fix-series-limit
Concurrent series limit
2016-08-09 08:58:19 -06:00
Ben Johnson 55b3e63ced
concurrent series limit
This commit fixes the `MaxSelectSeriesN` limit which was broken by
the implementation of lazy iterators. The setting previously limited
the total number of series but the new implementation limits the
concurrent number of series being processed.
2016-08-09 08:58:01 -06:00
Jason Wilder aa78a2fae2 Merge pull request #7126 from influxdata/jw-7121
Remove compaction assert that should not be there
2016-08-08 10:53:21 -06:00
Mark Rushakoff ffb022cfc3 Merge pull request #7125 from influxdata/mr-export-gzip-close
Ensure gzip writer is closed in influx_inspect export
2016-08-08 09:30:49 -07:00
Jason Wilder 0ea645642b Remove compaction assert that should not be there
This assert was not removed when the issue that cause the assert
to trigger was fixed in 0f5e994.

Fixes #7121
2016-08-08 09:59:45 -06:00
Mark Rushakoff 7787703ca8 Ensure gzip writer closed in influx_inspect export
Previously, the gzip writer may have had unflushed data when the
underlying writer was closed, and the output stream would have been
truncated early.
2016-08-08 08:52:22 -07:00
Jonathan A. Sternberg b98763a3d8 Merge pull request #7118 from influxdata/js-go-generate
go generate on every package to ensure they are generated with the correct dependency
2016-08-08 09:02:32 -05:00
David Norton 064db3c5b3 Merge pull request #7095 from influxdata/dgn-cardinality-limits
feat #6679: add series limit config setting
2016-08-05 16:34:25 -04:00
Jonathan A. Sternberg c6034c162a Merge pull request #7028 from influxdata/js-7025-group-by-offset-in-cq
Move the CQ interval by the group by offset
2016-08-05 15:07:52 -05:00
David Norton 43809b0799 update CHANGELOG.md 2016-08-05 15:54:34 -04:00
Jonathan A. Sternberg 4cdfc3280d Move the CQ interval by the group by offset
This will make the period selected by the CQ system work correctly for a
query with an offset.
2016-08-05 14:39:52 -05:00
Jonathan A. Sternberg 0879d43b74 Do not run continuous queries that have no time span 2016-08-05 14:39:52 -05:00
Jonathan A. Sternberg ed2f81357f go generate on every package to ensure they are generated with the correct dependency 2016-08-05 14:35:07 -05:00
Ben Johnson 22e1a55f97 Merge pull request #7107 from benbjohnson/concurrent-shard-limiter
Limit shard concurrency
2016-08-05 12:49:20 -06:00
Ben Johnson 6c7d56d4bc
limit shard concurrency
This commit limits queries to only process one shard at a time.
However, within a shard, multiple series can still be processed in
parallel. Shard iterators are lazily instantiated during query
execution to limit the amount of memory a given query uses.
2016-08-05 09:45:57 -06:00
Jonathan A. Sternberg a62fbcde42 Merge pull request #7113 from agaurav/Test/medianBenchmarks
benchmark tests for median aggrergator
2016-08-04 09:53:42 -05:00
Ashish Gaurav 70c8c021ac added benchmark tests for median aggrergator (Package: influxql,influxql_test) 2016-08-04 08:02:19 +05:30
Jason Wilder a00fe4adee Merge pull request #7108 from influxdata/jw-defers
Query path GC
2016-08-03 15:46:59 -06:00
Jason Wilder 19546faab3 Release cursor/iterator resources aggressively 2016-08-03 00:21:39 -06:00
Jason Wilder e8e6bc44a7 Remove defers in TSM reader read path 2016-08-02 16:39:45 -06:00
Jonathan A. Sternberg c65693a34b Merge pull request #7032 from influxdata/js-fix-influx-stress-concurrent-write-panic
Copy tags in influx_stress to avoid a concurrent write panic on a map
2016-08-01 13:39:59 -05:00
Jonathan A. Sternberg ccd1bd91f4 Copy tags in influx_stress to avoid a concurrent write panic on a map
Removing lock from the same object as that object never does anything
except for having attributes read.
2016-08-01 13:18:21 -05:00
Jonathan A. Sternberg 155ef811ad Merge pull request #6547 from influxdata/js-6543-parse-fill-bad-query
Fix parseFill to check for fill ident before attempting to parse an expression
2016-08-01 11:52:01 -05:00
Jonathan A. Sternberg 2c739c0532 Fix parseFill to check for fill ident before attempting to parse an expression
The previous parseFill would try to parse an expression and only unscan
one token when it failed. This caused it to not put back the correct
number of tokens with some expression.

Now it has been modified to check for the fill ident ahead of time and
then use ParseExpr() to parse the call. If the expression fails to parse
into a call, it will send an error instead of trying to continue with an
invalid parser state.

Fixes #6543.
2016-08-01 11:38:44 -05:00
David Norton 0c4559722c feat #6679: add series limit config setting 2016-08-01 08:28:46 -04:00
Jonathan A. Sternberg cac6765364 Merge pull request #7098 from influxdata/js-use-proper-header-for-content-type
Use the Accept header for determining the Content-Type instead of Content-Type
2016-07-29 15:00:13 -05:00
Jonathan A. Sternberg 73bbbf24b1 Use the Accept header for determining the Content-Type instead of Content-Type
The `Content-Type` header is meant to say what the content type of the
request is supposed to be and `Accept` is used to ask for a specific
content type. I messed this up and used `Content-Type` instead of
`Accept`. This works with `GET` requests accidentally, but `POST`
requests stop working.
2016-07-29 14:29:39 -05:00
Jonathan A. Sternberg 4a89ab4482 Merge pull request #6815 from influxdata/js-content-type-response-writer
Setup an interface for writing http responses based on the Content-Type header
2016-07-29 13:28:37 -05:00
Jonathan A. Sternberg d85072ada9 Setup an interface for writing http responses based on the Content-Type header
Only `application/json` is supported right now, but this opens up the
easier possibility of additional content types to be returned from the
server.
2016-07-29 13:11:51 -05:00
Cory LaNou ac0228614d Merge pull request #7077 from influxdata/cjl-7065-remove-exists
Remove IF EXISTS/IF NOT EXISTS from influxql language
2016-07-29 13:06:54 -05:00
Cory LaNou 1117526873 remove IF EXISTS/IF NOT EXISTS from influxql language 2016-07-29 12:58:05 -05:00
Jason Wilder 37674d2c4a Merge pull request #7084 from influxdata/jw-tombstones
Tombstone memory improvements
2016-07-28 20:45:35 -06:00
Jason Wilder 5576e7fedb Simplifications 2016-07-28 20:25:37 -06:00
Jason Wilder c1840be88d Update changelog 2016-07-28 20:25:37 -06:00
Jason Wilder 8367771d35 Fix go vet 2016-07-28 20:25:37 -06:00
Jason Wilder 030f1ef622 Include full for tombstone files
The path info only contained the file name which caused tombstone
files to not be removed if there were queries running against
a file that was compacted.

This is now consistent with the TSMReader.Path which returns the
full path info.
2016-07-28 20:25:37 -06:00
Jason Wilder c3fda24cf9 Make sure all in-use files are tracked
break cause the first one to be tracked and all others would
leak as temp files that would not be removed until the server
restarted.
2016-07-28 20:25:37 -06:00
Jason Wilder c1a94e8861 Remove temp TSM files when disabling compactions
If they were left around, re-enabling them again could cause
future compactions to continuously fail.  A restart of the
server would clean them up correctly though.
2016-07-28 20:25:37 -06:00