Commit Graph

13055 Commits (a85306c53e2de2fa29c43e951bd9d486bea5dc39)

Author SHA1 Message Date
Hans P. Bieker a85306c53e Updated mergeUnsigned by running "go generate ./tsdb/engine/tsm1". 2018-01-04 19:35:01 +01:00
Hans Petter Bieker 7a273ccdb5 Fixed issue where compacting did not sort when block are unsorted and overlapping. 2018-01-04 15:25:26 +01:00
Jason Wilder bf66f20388
Merge pull request #9267 from hpbieker/hpb-compacting-sorting
Sort blocks by time when compacting
2018-01-03 17:43:38 -07:00
Ben Johnson 3ac428920c
Merge pull request #9276 from benbjohnson/fix-series-index-compaction
Fix series index compaction.
2018-01-03 15:13:19 -07:00
Ben Johnson 444384fd45
Merge pull request #9275 from benbjohnson/tsi-series-check
Add series existence check in tsi1.
2018-01-03 15:13:08 -07:00
Ben Johnson 48648e828d
Fix series index compaction. 2018-01-03 12:47:07 -07:00
Ben Johnson 31c50532db
Add series existence check in tsi1. 2018-01-03 12:20:35 -07:00
Ben Johnson 98486a284a
Merge pull request #9265 from benbjohnson/series-file-compaction
Sequential series file id & series file segmentation
2018-01-03 10:05:59 -07:00
Ben Johnson 3900c948a2
Fix requested changes. 2018-01-03 10:04:12 -07:00
Edd Robinson 5efeed4ccc Add import 2018-01-03 16:50:44 +00:00
Edd Robinson f9ea54198f rename series directory 2018-01-03 15:44:58 +00:00
hpbieker c892bf15a1 Fix missing sorting of blocks when compacting. 2018-01-03 10:21:11 +01:00
hpbieker 35cf21ed43 Added changelog. 2018-01-03 09:50:31 +01:00
hpbieker ee185e18b7 Added unit test TestCompactor_Compact_UnsortedBlocks. 2018-01-03 09:42:36 +01:00
Jonathan A. Sternberg da9774fd27
Merge pull request #9184 from influxdata/js-influx-node-id-option
Allow setting the node id in the influx cli program
2018-01-02 14:34:37 -06:00
Ben Johnson 52630e69d7
Integrate SeriesFileCompactor 2018-01-02 12:20:03 -07:00
Edd Robinson 1f3352efbd
Merge pull request #9153 from influxdata/er-prom-parsing
Fix Prometheus regex parsing
2018-01-02 18:39:46 +00:00
Jonathan A. Sternberg bf283f0952
Merge pull request #9220 from influxdata/js-9216-panic-on-double-kill
Prevent a panic when a query simultaneously finishes and is killed at the same time
2018-01-02 12:06:04 -06:00
Jonathan A. Sternberg af23897940 Allow setting the node id in the influx cli program
The string `node <n>` can be used to specify which data node the data
should be retrieved from. This uses the `node_id=X` query parameter that
is supported, but wasn't exposed anywhere in the client library.

We use this feature enough internally when attempting to find
inconsistencies or network errors that it is easier if this is just
supported. Otherwise, I continue having to recompile the CLI program
every time I need to do this.

To clear a previously set node, you can use `node 0` or `node clear`.
2018-01-02 11:15:19 -06:00
Jonathan A. Sternberg ecba19eb27 Prevent a panic when a query simultaneously finishes and is killed at the same time
There is a strange race condition where a query can be killed and finish
at approximately the same time. If this happens, the query gets
retrieved by the killing task, the query gets closed by the normal
processing thread, and then the killing task attempts to kill the query
afterwards. Since the close doesn't mark the query as already killed
(since it's not killed, just merely unused), the killing thread attempts
to close the channel again.

Mark the query as killed whenever it is closed to prevent a double close
from happening. This should never cause the status to be erroneously
reported since the query status is removed from the query table within
the same lock scope.
2018-01-02 11:04:01 -06:00
Stuart Carnie 80f1120c3e
Merge pull request #9164 from influxdata/sgc-inmem-startup
inmem startup improvments
2017-12-29 13:33:49 -07:00
Ben Johnson 56980b0d24
Segment series file 2017-12-29 11:57:45 -07:00
Ben Johnson 4ab1542cfc
Series file compactor. 2017-12-29 11:57:45 -07:00
Stuart Carnie ed207b54c3 updates after TSI / series file merge 2017-12-29 10:58:25 -07:00
Stuart Carnie 638caf3b58 ensure correctly aligned for 32-bit architecture 2017-12-29 07:58:52 -07:00
Stuart Carnie 455013a486 updates per PR review comments 2017-12-29 07:58:52 -07:00
Stuart Carnie 98aa368b7f prefer NameBytes 2017-12-29 07:58:52 -07:00
Stuart Carnie 5dfe3b2645 inmem startup improvments
* only call ParseTags when necessary
* remove dependency on inmem.Series in tsdb test package
* Measurement and Series are no longer exported. Their use is restricted
  to the inmem package
* improve Measurement and Series types by exporting immutable
  fields and removing unnecessary APIs and locks

Reduced startup time from 28s to 17s. Overall improvement including
#9162 reduces startup from 46s to 17s for 1MM series across 14 shards.
2017-12-29 07:58:52 -07:00
Stuart Carnie 4cc154507d
Merge pull request #9235 from influxdata/sgc-max-tags-series
Improve performance when writes exceed max-values-per-tag or max-series
2017-12-28 11:36:42 -07:00
Stuart Carnie ba17264ddd fixes after merge 2017-12-27 17:29:32 -07:00
Stuart Carnie dc15805b7c Update CHANGELOG 2017-12-27 17:27:23 -07:00
Stuart Carnie 44780742f7 fix format issue 2017-12-27 17:27:03 -07:00
Stuart Carnie c986cac76e improve performance when writes exceed max tag values or series
```
 benchmark                                                                  old ns/op     new ns/op     delta
 BenchmarkShardIndex_CreateSeriesListIfNotExists_MaxValuesExceeded-8        6175374       2714158       -56.05%
 BenchmarkShardIndex_CreateSeriesListIfNotExists_MaxValuesNotExceeded-8     344502        326312        -5.28%
 BenchmarkShardIndex_CreateSeriesListIfNotExists_NoMaxValues-8              346734        329961        -4.84%
 BenchmarkShardIndex_CreateSeriesListIfNotExists_MaxSeriesExceeded-8        2414945       1996223       -17.34%

 benchmark                                                                  old allocs     new allocs     delta
 BenchmarkShardIndex_CreateSeriesListIfNotExists_MaxValuesExceeded-8        45377          128            -99.72%
 BenchmarkShardIndex_CreateSeriesListIfNotExists_MaxValuesNotExceeded-8     33             20             -39.39%
 BenchmarkShardIndex_CreateSeriesListIfNotExists_NoMaxValues-8              33             20             -39.39%
 BenchmarkShardIndex_CreateSeriesListIfNotExists_MaxSeriesExceeded-8        15219          71             -99.53%

 benchmark                                                                  old bytes     new bytes     delta
 BenchmarkShardIndex_CreateSeriesListIfNotExists_MaxValuesExceeded-8        1354539       480114        -64.56%
 BenchmarkShardIndex_CreateSeriesListIfNotExists_MaxValuesNotExceeded-8     2101          1261          -39.98%
 BenchmarkShardIndex_CreateSeriesListIfNotExists_NoMaxValues-8              2100          1261          -39.95%
 BenchmarkShardIndex_CreateSeriesListIfNotExists_MaxSeriesExceeded-8        707247        477737        -32.45%
 ```
2017-12-27 17:27:03 -07:00
Stuart Carnie d7a8368d2d Add bytesutil.Contains; improve performance of SearchBytes
```
benchmark                           old ns/op     new ns/op     delta
BenchmarkContains_True-8            67.0          41.8          -37.61%
BenchmarkContains_False-8           73.2          47.6          -34.97%
BenchmarkSearchBytes_Exists-8       51.5          34.3          -33.40%
BenchmarkSearchBytes_NotExits-8     57.7          39.8          -31.02%
```
2017-12-27 17:27:03 -07:00
Ben Johnson aa92fab66f
Merge pull request #9150 from influxdata/er-tsi-index-part
Series file promotion & TSI index partitioning
2017-12-22 13:11:24 -07:00
Ben Johnson 01aa11af95
circle 2017-12-22 11:30:11 -07:00
Ben Johnson c78d60c50d
Merge remote-tracking branch 'upstream/master' into er-tsi-index-part 2017-12-21 20:06:58 -07:00
Ben Johnson f240a930c7
Preserve original mmap in series file. 2017-12-21 20:00:05 -07:00
Ben Johnson bc0d68f405
Skip estimation test for 386. 2017-12-21 16:00:13 -07:00
Ben Johnson 895ca7a04b
Adjust 386 max series file size. 2017-12-21 14:50:07 -07:00
Ben Johnson 0afb718a11
OOM test issue 2017-12-21 13:36:32 -07:00
Ben Johnson 4fd48cfcd1
Replace in-memory series file map with rhh. 2017-12-21 12:57:21 -07:00
Ben Johnson 4d7426ebbd
Fix race bug. 2017-12-21 10:12:21 -07:00
Ben Johnson 679335d027
Measurement iterator fix. 2017-12-20 15:43:17 -07:00
Ben Johnson 553c092484
Merge branch 'er-tsi-index-part' of https://github.com/influxdata/influxdb into er-tsi-index-part 2017-12-20 15:22:24 -07:00
Ben Johnson d8b1d208c0
rebase 2017-12-20 15:13:34 -07:00
Edd Robinson 9767660b8f Use MeasurementIterator 2017-12-19 19:23:01 +00:00
Jonathan A. Sternberg 4a7361d031
Merge pull request #9247 from influxdata/js-9226-condition-expr-boolean-literals
Allow lone boolean literals in a condition expression
2017-12-19 12:53:49 -06:00
Jonathan A. Sternberg 30e35749ba Allow lone boolean literals in a condition expression 2017-12-19 12:08:53 -06:00
Ben Johnson 8b2dbf4d83
Merge branch 'er-tsi-index-part' of https://github.com/influxdata/influxdb into er-tsi-index-part 2017-12-19 10:33:02 -07:00