Commit Graph

10256 Commits (fe8d3f6e85c2a1f8753b7f59c3b0433ad7fe83fc)

Author SHA1 Message Date
Edd Robinson fe8d3f6e85 Filtering some authors from mention bot 2016-05-11 17:43:52 +01:00
Cory LaNou c32906a366 Merge pull request #6593 from influxdata/cjl-copyshard
create shard snapshot
2016-05-10 20:01:59 -05:00
Jonathan A. Sternberg 8353b0c20f Merge pull request #6592 from influxdata/js-3451-show-field-keys-with-field-type
Update SHOW FIELD KEYS to return the field type with the field key
2016-05-10 14:13:17 -04:00
Jason Wilder d8490f1170 Merge pull request #6587 from influxdata/jw-validate-fields
Fix for merge values
2016-05-10 11:56:07 -06:00
Jonathan A. Sternberg 733a17d9e9 Update SHOW FIELD KEYS to return the field type with the field key
Fixes #3451.
2016-05-10 13:16:57 -04:00
Cory LaNou f415cf89ad wip 2016-05-10 11:01:03 -05:00
Jason Wilder 9b86bfea2a Merge pull request #6582 from eleme/fix_engine_cache_size
fix cache size of engine
2016-05-10 09:01:03 -06:00
Jason Wilder 8839cabd41 Add benchmark for Merge 2016-05-10 08:39:55 -06:00
Jonathan A. Sternberg 700431d6de Merge pull request #6548 from influxdata/js-remove-unused-reserved-keyword
Remove unused FORCE and INNER keywords
2016-05-10 10:14:14 -04:00
Cory LaNou 10db0aafeb Merge pull request #6591 from influxdata/cjl-issue-6590
intermittent test failing
2016-05-10 08:57:16 -05:00
Cory LaNou 639b0d7531 Merge pull request #6502 from influxdata/copy-shard
Add ability to copy shard via rpc calls.  Remove deprecated copier service.
2016-05-10 08:55:44 -05:00
Cory LaNou f39e9e910d intermittent test failing 2016-05-10 08:30:19 -05:00
Cory LaNou f9ec3c9591 update changelog 2016-05-10 08:14:51 -05:00
Cory LaNou 4d30ea1eb3 minor PR feedback refactor 2016-05-10 08:14:51 -05:00
Cory LaNou a3bf3e2ef1 added baseline backup/restore plumbing 2016-05-10 08:14:51 -05:00
Cory LaNou 4484182e86 remove old shard copier service 2016-05-10 08:14:51 -05:00
Jason Wilder afde7ce531 Merge pull request #6523 from kevgrig/patch-1
Update influxdb.service
2016-05-09 23:47:57 -06:00
Ben Johnson 514c98cef8 Merge pull request #6585 from benbjohnson/parallelize
Parallelize iterators
2016-05-09 19:56:52 -06:00
Jason Wilder adddb0e6b8 Reduce lock contention when creating shard group 2016-05-09 16:10:38 -06:00
Jason Wilder 4f39cb2f97 Fix case where Merge return unsorted values 2016-05-09 15:40:34 -06:00
Ben Johnson 078e561820
parallelize iterators 2016-05-09 10:25:30 -06:00
thbourlove 22c2e7e1c5 fix cache memory size of engine 2016-05-09 21:29:34 +08:00
Jason Wilder b4f922df15 Merge pull request #6567 from influxdata/jw-tsm-values
Fix memory spike when compacting overwritten points
2016-05-06 11:38:49 -06:00
Jason Wilder d99c5e26f6 Fix memory spike when compacting overwritten points
If a large series contains a point that is overwritten, the compactor
would load the whole series into RAM during a full compaction.  If
the series was large, it could cause very large RAM spikes and OOMs.

The change reworks the compactor to merge blocks more incrementally
similar to the fix done in #6556.
2016-05-05 22:31:30 -06:00
Nathaniel Cook 9db171890f Merge pull request #6565 from influxdata/nc-client-err
Wrap JSON decode error with meaning full data
2016-05-05 16:21:35 -06:00
Nathaniel Cook 2c3df055cf wrap JSON decode error with meaning full data 2016-05-05 16:00:52 -06:00
Ross McDonald 84fe50dbc9 Merge pull request #6561 from influxdata/ross-build-updates
Build updates
2016-05-05 15:16:37 -05:00
Ross McDonald 9953db463c Minor fixes to build script:
- Fix for --name build parameter
- Remove rc parameter from build script
- Fix regression on first-level tarball directory structure
- Change any dashes or underscores in version tag to tilde
2016-05-05 15:15:56 -05:00
Ben Johnson 4c45f8ec32 Merge pull request #6560 from benbjohnson/optimize-tsm1-call-iterator
Move call iterator to series level
2016-05-05 11:13:53 -06:00
Jason Wilder fbf1e4a620 Merge pull request #6556 from influxdata/jw-tsm-values
Fix loading huge series into RAM when points are overwritten
2016-05-05 10:09:54 -06:00
Ben Johnson fdf34d4356
move call iterator to series level
This commit moves the `CallIterator` to wrap the individual series
instead of wrapping a shard. This allows individual points to be
aggregated before being merged.

This will cause a small increase in memory usuage per series but
it shows a 20% decrease in query time when there are a moderate
number of points per series.
2016-05-05 09:59:03 -06:00
Jason Wilder a0ac754802 Fix loading huge series into RAM when points are overwritten
In some query scenarios, if there are a lot of points on disk spread
across many blocks in TSM files and a point is overwritten near the
begginning of the shard's timerange, the full series could be loaded
into RAM triggering OOMs and huge allocations.

The issue was that the KeyCursor code that handles overwriting points
had a simple implementation that just deduped the whole series in this
case.  This falls over when the series is quite large.

Instead, the KeyCursor has been changed to only decode blocks with
updated points.  It then keeps track of what section of the blocks
have been read so they are not re-read when the later points are
decoded.

Since the points in a block are always sorted, the code was also changed
to remove the Deduplicate calls since they end up
reallocating the slice.  Instead, we do a sorted merge and re-use
the slice as much as we can.
2016-05-05 09:34:44 -06:00
Edd Robinson 178ed24e09 Merge pull request #6551 from influxdata/er-monitor-remote
Enable monitor to write to remote node
2016-05-05 11:54:48 +01:00
Edd Robinson 0b338dddd8 Add remote monitor writer 2016-05-05 11:08:35 +01:00
Edd Robinson 81dbbf570f Add RPC command for remote Monitor destination 2016-05-04 18:22:01 +01:00
Edd Robinson 2ae6a43c36 Disable Monitor when running dataonly mode 2016-05-04 18:22:01 +01:00
Edd Robinson b2d5616662 Make Monitor safer; don't set clusterID 2016-05-04 18:22:01 +01:00
Jonathan A. Sternberg 18fa63fdac Remove unused FORCE and INNER keywords 2016-05-03 13:21:14 -04:00
Jason Wilder f2bb9db1c5 Update changelog 2016-05-03 10:45:44 -06:00
Jason Wilder 57cb3fdbc0 Merge pull request #6522 from influxdata/tp-tsm-dump
Dump TSM files to line protocol
2016-05-03 10:44:33 -06:00
Ross McDonald 448c0c116e Merge pull request #6534 from influxdata/ross-gh6511
Move to Go 1.6.2
2016-05-03 11:40:44 -05:00
Ross McDonald 96ad9c57d9 Move to Go 1.6.2. 2016-05-03 11:33:49 -05:00
Jason Wilder 01ea22d818 Merge pull request #6544 from influxdata/jw-tsm
Fix overwriting points returning wrong value
2016-05-03 09:54:14 -06:00
Jason Wilder 4196554f51 Fix overwriting points returning wrong value
The cursors were returning the wrong value in the case when points
existed in both the cache and tsm files with the same timestamp. The
cache value should have been returned, but the tsm value was returned
incorrectly.

Fixes #6439
2016-05-03 09:21:31 -06:00
Ben Johnson 417df18396 Merge pull request #6533 from benbjohnson/optimize-show-series
Optimize SHOW SERIES
2016-05-03 09:15:21 -06:00
Edd Robinson fd77dbe648 Merge pull request #6546 from influxdata/er-build-tag
Fix invalid build tag
2016-05-03 16:00:39 +01:00
Jonathan A. Sternberg a2a5c32770 Merge pull request #6539 from influxdata/js-6495-fix-aggregates-with-empty-shards
Fix aggregate returns when data is missing from some shards
2016-05-03 10:56:21 -04:00
Ben Johnson 49eb3b8d04
optimize show series iterator
This commit changes the `SeriesIterator` to process one measurement
at a time and uses a `floatFastDedupeIterator` to avoid point
encoding during deduplication.
2016-05-03 08:52:44 -06:00
Jonathan A. Sternberg d6d0addcec Fix aggregate returns when data is missing from some shards
If a shard is empty for a specific field and the field type is something
other than a float, a nil iterator would get returned from one of the
empty shards and cause the combined iterators to be cast to the float
type and all other iterator types to be discarded (or for integers, to
be cast).

This is rare since most aggregates don't accept strings or booleans, but
for queries like:

    SELECT distinct(string) FROM mydata

It would result in nothing getting returned if one of the shards didn't
have a value for `string`.

This change modifies the query engine to return nil for the shards
instead of a fake iterator and then to only use the fake iterator if the
final aggregate iterator is nil (meaning that no iterators could be
constructed for the field from any shard).

Fixes #6495.
2016-05-03 10:41:22 -04:00
Edd Robinson d35fa1ec97 Remove redundant windows build tags 2016-05-03 14:22:02 +01:00