Commit Graph

14558 Commits (de1a0eb2a919548b10f5a81bea427e1f268daf0b)

Author SHA1 Message Date
Gianluca Arbezzano 30621ca9ec chore(tsm1): skip WriteSnapshot during backup if snapshotter is busy
When an InfluxDB database is very busy writing new points the backup
the process can fail because it can not write a new snapshot.

The error is: `operation timed out with error: create snapshot: snapshot in progress`.

This happens because InfluxDB takes almost "continuously" a snapshot
from the cache caused by the high number of points ingested.

This PR skips snapshots if the `snapshotter` does not come available
after three attempts when a backup is requested.

The backup won't contain the data in the cache or WAL.

Signed-off-by: Gianluca Arbezzano <gianarb92@gmail.com>
2020-02-04 20:09:50 +01:00
Ayan George 85b5efc86e
refactor(influxdb): Refactor trace code for clarity and reliability
refactor(influxdb): Refactor trace code for clarity and reliability

* Make startProfile a method of Server.  startProfile() is only used one
  place.  We bother to copy the Server.CPUProfile and Server.MemProfile
  values out of our Server struct into it's parameters.  It makes more
  sense to make startProfile() a method of Server and have it access
  those members directory via its receiver value.

* Have startProfile() return an error instead of log.Fatal()ing.  We can
  simply propagate the error up the stack and let the caller handle the
  error -- we shouldn't be exiting deep in the bowels of a non-main
  package.

* Capture and return errors from pprof.StartCPUProfile(). Currently
  there is only one possible error it can return but if it returns an
  error, we should handle it.

* add CPUProfileWriteCloser and MemProfileWriteCloser to Server struct.

* make stopProfile() a method of Server

* remove prof variable

* fix captialization of log messages.
2020-02-04 11:31:15 -05:00
Ben Johnson 7015286883
Merge pull request #16542 from influxdata/er-series-compact
fix(storage): Offline Series Compaction
2020-02-03 15:28:58 -07:00
Edd Robinson 34c0fdafc0 feat(storage): Offline series file compaction 2020-02-03 13:57:31 -07:00
Stuart Carnie 59d3f6f144
docs: Update CHANGELOG 2020-02-03 13:20:23 -07:00
Stuart Carnie 5b58a81700
fix(flux): Flux startup costs should only be paid if Flux is used
This PR lazily initializes Flux built-in functions when Flux is used.

It significantly reduces the startup time of the `influxd` and `influx`
binaries.

Before (4.66s):

```
↳ time bin/18/influx
bin/18/influx  4.66s user 0.19s system 198% cpu 2.441 total
```

After (10ms):

```
↳ time bin/18/influx
bin/18/influx  0.01s user 0.01s system 88% cpu 0.021 total
```
2020-02-03 12:39:00 -07:00
Brandon Farmer 741ac8e151
Merge pull request #16599 from influxdata/add-path-to-cli
feat(influxdb): Add path to cli
2020-01-22 16:36:46 -08:00
Brandon Farmer c2c864d611 feat(influxdb): Add test around CLI proxy path 2020-01-22 14:13:25 -08:00
David Norton 962cf6f4e7
Merge pull request #16595 from influxdata/fix/show-series-cardinality
fix(tsm1): improve series cardinality limit
2020-01-21 18:08:13 -05:00
David Norton 903d2c2d28 fix(tsm1): improve series cardinality limit
Prior to this change, new series would be added to the series file
before checking the series cardinality limit. If the limit was exceeded,
the write was rejected even though the series had already been added to
the series file.
2020-01-21 16:45:13 -05:00
Brandon Farmer 6a621bf28b fix(influx): fixes parsing of url on connect 2020-01-21 12:02:32 -08:00
Brandon Farmer fe517fd9ce feat(influxdb): Add proxy path to cli 2020-01-21 10:23:46 -08:00
Edd Robinson 22798fa290 fix(storage): ensure all block data returned
This commit prevents multiple blocks for the same series key having
values truncated when they are being read into an empty buffer.

The current cursor reader code has an optimisation that incorrectly
assumes the incoming array will be limited to 1,000 values (the maximum
block size), but arrays can contain values from multiple matching
blocks.
2020-01-21 18:00:11 +00:00
Hercules Mango Churchill 3cf826f1cf Update changelog 2020-01-14 18:02:07 +00:00
David Norton 23dada567d
Merge pull request #16524 from scbrickley/fix-compaction-log
fix(tsm1): Compaction log error
2020-01-14 13:01:36 -05:00
Sean Brickley a6b1811afd chore: Correction to CHANGELOG - Moved link to PR #16524 from Features to Bugfixes under 1.8 2020-01-14 12:44:36 -05:00
Sean Brickley 924927c443 chore: Updated CHANGELOG.md with link to PR #16524 2020-01-14 12:40:58 -05:00
ricky c1e11e732e fix(meta): remove double index increment of set meta 2020-01-14 11:11:43 +08:00
Sean Brickley fe55d728f0 fix(tsm1): Compaction log error 2020-01-13 20:05:05 -05:00
tmgordeeva f1d26652e9
fix(storage): skip TSM files with block read errors (#15885)
* fix(storage): skip TSM files with block read errors

When we find a bad TSM file during compaction, propagate the error up and move
the bad file aside. The engine will disregard the file so the next compaction
will not hit the same error.
2019-12-13 15:05:39 -08:00
Jacob Marble 8f665ec2a7 fix(storage): simple8b passes checkptr (#15512)
* fix(simple8b): disable checkptr on batch decodes

* perf: improve performance of simple8b encoding

```
name                      old time/op    new time/op    delta
EncodeAll/1_bit-24          35.8µs ± 2%    35.8µs ± 2%     ~     (p=0.887 n=10+7)
EncodeAll/2_bits-24         35.7µs ± 4%    35.6µs ± 3%     ~     (p=0.684 n=10+10)
EncodeAll/3_bits-24         36.5µs ± 3%    36.4µs ± 4%     ~     (p=0.780 n=10+9)
EncodeAll/4_bits-24         36.4µs ± 3%    37.8µs ± 2%   +3.71%  (p=0.000 n=10+10)
EncodeAll/5_bits-24         38.0µs ± 3%    38.3µs ± 2%     ~     (p=0.280 n=10+10)
EncodeAll/6_bits-24         39.4µs ± 1%    38.5µs ± 2%   -2.43%  (p=0.001 n=10+9)
EncodeAll/7_bits-24         39.6µs ± 3%    38.9µs ± 3%   -1.83%  (p=0.029 n=10+10)
EncodeAll/8_bits-24         40.3µs ± 3%    40.5µs ± 4%     ~     (p=0.278 n=10+9)
EncodeAll/10_bits-24        42.6µs ± 3%    41.9µs ± 2%     ~     (p=0.075 n=10+10)
EncodeAll/12_bits-24        44.2µs ± 2%    42.8µs ± 2%   -3.11%  (p=0.000 n=10+10)
EncodeAll/15_bits-24        46.0µs ± 1%    46.1µs ± 3%     ~     (p=0.447 n=9+10)
EncodeAll/20_bits-24        51.4µs ± 2%    50.0µs ± 2%   -2.86%  (p=0.000 n=10+10)
EncodeAll/30_bits-24        60.6µs ± 1%    58.1µs ± 2%   -4.02%  (p=0.000 n=10+10)
EncodeAll/60_bits-24        90.2µs ± 2%    85.2µs ± 1%   -5.50%  (p=0.000 n=10+10)
EncodeAll/combination-24     782µs ± 3%     762µs ± 5%     ~     (p=0.063 n=10+10)
Encode-24                   3.08µs ± 2%    3.09µs ± 1%     ~     (p=0.656 n=9+8)
Encoder-24                  4.58µs ± 0%    4.40µs ± 1%   -4.04%  (p=0.000 n=8+8)

```
2019-11-22 07:39:44 -08:00
Edd Robinson fc2090aeb4
Merge pull request #15951 from influxdata/er-ignore-master-1.8
chore: ignore 2.0 build artefacts via gitignore
2019-11-19 10:21:10 +00:00
Edd Robinson 92b9bdef14 feat(inspect): add verify-tombstone 2019-11-17 14:53:39 +00:00
Edd Robinson f7f19c5904 refactor(storage): add tombstone extension 2019-11-17 14:43:38 +00:00
Edd Robinson 42b391457f chore: ignore 2.0 build artefacts 2019-11-17 13:31:12 +00:00
Edd Robinson 196e46982b
Merge pull request #15861 from influxdata/BP-1.8-er-tsi-not-equal
fix(tsi1): index defect with negated equality filters
2019-11-13 18:15:01 +00:00
Hercules Mango Churchill 915c021e5a Update changelog 2019-11-12 23:39:15 +00:00
David Norton edde221f55
Merge pull request #15878 from influxdata/dn-fix-digest-race
fix(tsm1): make digest safe for concurrent use
2019-11-12 18:38:54 -05:00
David Norton 102fcd671b fix(tsm1): make Digest() safe for concurrent use
This change adds a lock around digest creation so that it is safe for
concurrent calls. Prior to this change, calls from multiple goroutines
resulted in "Digest aborted, problem renaming tmp digest" errors.
2019-11-12 18:02:41 -05:00
Edd Robinson cac4c8956c fix(tsi1): index defect with negated equality filters
Fixes #15859

This commit fixes a defect in the TSI index where a filter using the
negated equality operator would result in no matching series being
returned for series stored within the `IndexFile` portions of the index.

The root cause of this was due to missing legacy-handling code in the
index for this particular iterator.
2019-11-12 15:10:42 +00:00
Jonathan A. Sternberg 904d3279cf
Merge pull request #15642 from influxdata/chore/upgrade-to-flux-v0.50.0
Update flux version to v0.50.2
2019-10-30 13:36:42 -07:00
Jonathan A. Sternberg 40a7a577fc
Update flux version to v0.50.2
This upgrades the flux version to v0.50.2.

The secret service, which is used for alerts, is not included. The
`to()` function is also still not included.
2019-10-29 16:19:14 -05:00
Mustafa d2a5aa87b1
Merge pull request #15608 from influxdata/elbehery-fix#14107
fix(storage): Renaming corrupt data files fails
2019-10-28 18:29:14 +01:00
elbehery a4bb1083f2 fix(storage): Renaming corrupt data files fails
fixes#14107
2019-10-28 17:32:58 +01:00
Nathaniel Cook 589d278b24 fix(http): honor insecure-skip-very even if custom tls config is specified 2019-10-10 16:33:09 -06:00
Jacob Marble 4f1c8ccf9a
chore(build): remove Godeps file (#15263) 2019-10-10 11:37:27 -07:00
Hercules Mango Churchill 0f187b6b53 Update changelog 2019-10-07 14:25:21 +00:00
Ben Johnson c92cd28ec5
Merge pull request #12568 from influxdata/debug-pprof-expose
Expose debug pprof port 6060
2019-10-07 07:24:57 -07:00
David Norton 50da682c21
Merge pull request #15253 from influxdata/dn-update-influxql
chore(influxdb): Update InfluxQL dependency
2019-09-24 13:38:51 -04:00
David Norton 65e0ceb4ad chore: update influxql dependency 2019-09-24 11:55:16 -04:00
Russ Savage dd3821c0e4
Revert "Revert "Fix documentation links (#14247)" (#15236)" (#15238)
This reverts commit 8a463e8b60.
2019-09-23 16:03:29 -07:00
Russ Savage 8a463e8b60
Revert "Fix documentation links (#14247)" (#15236)
This reverts commit 8a577120a4.
2019-09-23 15:46:16 -07:00
Ronan Souza 8a577120a4 Fix documentation links (#14247) 2019-09-23 15:43:10 -07:00
Gunnar 1618c25566
feat(httpd): Add option to authenticate debug/pprof and ping e… (#15222)
feat(httpd): Add option to authenticate debug/pprof and ping endpoints
2019-09-21 10:33:03 -07:00
Gunnar Aasen 0c4703aaa3 feat(httpd): Add option to authenticate debug/pprof and ping endpoints 2019-09-20 16:32:22 -07:00
Ben Johnson 046261eb97
fix(tsi1): replace TSI compaction wait group with counter (#15188)
fix(tsi1): replace TSI compaction wait group with counter
2019-09-18 12:34:29 -06:00
Ben Johnson 14d45c913c
fix(tsi1): replace TSI compaction wait group with counter 2019-09-18 11:47:37 -06:00
Jacob Marble f6e9ad40e2
fix(storage): guard against compaction burst throughput limit (#14985) 2019-09-05 15:15:19 -07:00
Hercules Mango Churchill 0c2c987891 Update changelog 2019-08-26 14:57:45 +00:00
Adam a86c5b5aa6
Merge pull request #14656 from influxdata/fix/1.8cumulative-sum-timerange
fix(query/compile.go): time range was exceeding min/max bounds under …
2019-08-26 10:57:25 -04:00