Commit Graph

14781 Commits (e68b64c57bb0acfe34722b979e628a771cce7aba)

Author SHA1 Message Date
Jonathan A. Sternberg 409de34abf
Merge pull request #14485 from jsign/1.8_accept
fix: services/httpd: parse correctly Accept header with extra test cases
2020-03-12 14:26:12 -05:00
jsign 69519243fe
fix: services/httpd: parse correctly Accept header with extra test case
Signed-off-by: jsign <jsign.uy@gmail.com>
2020-03-12 14:01:49 -05:00
Jonathan A. Sternberg 78bb637ae3
Merge pull request #17188 from influxdata/feat/bound-param-identifiers
feat: add support for complex bound parameters
2020-03-12 13:26:30 -05:00
Jonathan A. Sternberg 8d3496f0a3
feat: add support for complex bound parameters
This updates influxql to a newer version that supports complex bound
parameters. This allows bound parameters to be used as identifiers,
regexes, and durations along with the already existing strings, numbers,
and booleans.

This updates the influxdb client to support passing bound parameters as
part of the parameters json and updates the readme to show how to use
this feature.
2020-03-12 12:26:22 -05:00
Jonathan A. Sternberg 36dc105be1
Merge pull request #17187 from influxdata/flux-backport/v0.63.x
build(flux): update Flux to v0.64.0
2020-03-12 12:19:12 -05:00
Jonathan A. Sternberg 636a27e77f
build(flux): update Flux to v0.64.0 2020-03-11 15:17:44 -05:00
David Norton 25381f97c8
Merge pull request #15952 from influxdata/er-verify-tombstone
feat(inspect): add influx_inspect verify-tombstone tool
2020-03-11 15:56:37 -04:00
David Norton fca2ee03a7 fix: update package comment 2020-03-11 15:37:02 -04:00
David Norton 0fcb240ebb fix: use highest verbosity level specified 2020-03-11 15:32:34 -04:00
David Norton b93bac197c fix: typo in error message 2020-03-11 15:28:45 -04:00
David Norton 5eb92ef1eb
Merge pull request #17204 from influxdata/dn-fwd-fix-for-unsafe-marshalling-1.8
fix: remove some unsafe marshalling to reduce risk of segfault
2020-03-11 14:10:12 -04:00
docmerlin (j. Emrys Landivar) 30dab03310 fix: remove some unsafe marshalling to reduce risk of segfault
We were seing segfaults in Roaring bitmaps sometimes, under very
high load with networked drives.  This may reduce risk of segfault by
forcing marshalling to copy the data.
2020-03-11 13:47:29 -04:00
Ayan George b1ea8eff3e
refactor(query): save an indent level when checking r.prev.Nil (#17125) 2020-03-06 13:48:30 -05:00
Ayan George f24bdb3ee5
feat(handler): Add 2.0 compatible write endpoint (#16908)
This commit adds a /api/v2/write endpoint that maps the supplied bucket
and org to a v1 database and retention policy.

* Add AllowedOrgs to httpd Config type.

* Add /api/v2/write handler
2020-03-06 10:03:25 -05:00
Ayan George 5f47c388df
chore(influxdb): Forward port 16999 (#17032)
* fix: access tsi active log file with READ lock

The activeLogFile pointer may be altered by other routine so the READ
lock is needed.

* Merge pull request #16384 from foobar/tsi-partition-lock

fix: access tsi active log file with READ lock

Co-authored-by: Tristan Su <sooqing@gmail.com>
Co-authored-by: David Norton <dgnorton@gmail.com>
2020-03-04 16:20:58 -05:00
Edd Robinson c3f4382ed8
Merge pull request #16606 from influxdata/BP-1.8-er-tsm-block-fix
fix(storage): ensure all block data returned
2020-03-03 14:32:15 +00:00
Stuart Carnie f71caf5c02
Merge pull request #16709 from influxdata/sgc/18/flux-cost
fix(flux): Reduce influxd and influx startup time if Flux unused
2020-03-02 15:16:13 -07:00
Ayan George 35c07d0127
feat(modules): Use modules & remove Gopkg.*
* Add .mod and .sum files generated by go mod init

* Use a directory outside of $GOPATH for testing.

* Update docker files to use go 1.13.8 instead of 1.12 for most builds.

* Simplify go installation by piping from wget to tar.  This avoids
  having to do any cleanup.

* Build and test in a directory outside of GOPATH since we're using
  modules now.

* Update Jenkinsfile to build using modules by building directly inside
  of $WORKSPACE instead of in $GOPATH.

* Use go mod download instead of dep ensure to collect dependencies

* Remove Gopkg related data files.

* Replace calls to "dep ensure" with "go mod download"

* Replace check for being outside of $GOPATH to a check for being INSIDE
  of $GOPATH which is wrong when we're using modules

* Map $DIR to /root/influxdb in docker run command

* Clone source into /root/influxdb which is outside of our $GOPATH.

* run go mod tidy
2020-02-26 17:27:56 -05:00
Ben Johnson 6b07ed7200
Merge pull request #16762 from influxdata/fix-compact-series-file
fix(tsdb): Fix -compact-series-file flag
2020-02-10 06:42:20 -07:00
Sebastian Borza 2ba35b091b
Merge pull request #16525 from rickif/fix/meta-index
fix(meta): remove double index increment of set meta
2020-02-06 16:45:26 -06:00
Ben Johnson 7a9eb1420c fix(tsdb): Fix -compact-series-file flag 2020-02-06 13:40:19 -07:00
Hercules Mango Churchill a8cf52ba0e Update changelog 2020-02-04 20:45:16 +00:00
Gianluca Arbezzano a3e37f417d
Merge pull request #16627 from influxdata/feature/skip-wal-cache
chore(tsm1): skip WriteSnapshot during backup if snapshotter is busy
2020-02-04 21:44:48 +01:00
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