Commit Graph

7170 Commits (f01382f578703c3203936e13014e1827607ca826)

Author SHA1 Message Date
Marco Neumann 8d00aaba90
feat: sync chunks in querier (#3911)
* feat: `ParquetFileRepo::list_by_namespace_not_to_delete`

* feat: `ChunkAddr: Clone`

* test: ensure that querier keeps same partition objects

* test: improve `create_parquet_file` flexibility

* feat: sync chunks in querier

* test: improve `test_parquet_file`
2022-03-04 08:53:39 +00:00
Paul Dix 6ba5e51897
feat: update max_persisted_sequence_number in the buffered table on persist (#3868)
This includes a bit of a refactor in the locking structure of the buffer data. Locking at the partition collection and within the partition data was making things more complex than they needed to be. The partitions in the buffer are there only temporarily until they get persisted. Locking on the table simplifies things a bit and makes it more clear when the table state is being modified since it no longer has any interior mutability. Having access to separate partitions without the same lock isn't something we need because queries will hit all partitions and data is brought in sequentially, regardless of which partition it is hitting in a sequencer.

Fixes #3850
2022-03-03 23:52:31 +00:00
Dom Dwyer 14d90d1011 feat: schema validation benchmarks
Useful for confirming the scalability of the schema check algorithm.
2022-03-03 23:40:13 +00:00
Dom Dwyer 6b5283bf36 refactor: NamespaceCache latency histograms
Switches the get/put counters to latency histograms to record the
duration of each call - this might be interesting!
2022-03-03 23:40:13 +00:00
Dom Dwyer bb9b140f4b refactor: sequencer metrics
Records per-sequencer (kafka partition) enqueue latency / counts broken
down by operation success/error.
2022-03-03 23:40:13 +00:00
Dom Dwyer e00986c563 refactor: write table count metric
Record the number of tables in each write - this will let us observe the
total number of tables a router instance has observed, which when
combined with the existing metrics helps us understand the shape
(distribution of tables/lines/fields) of the workload hitting the
routers.
2022-03-03 23:40:13 +00:00
Carol (Nichols || Goulding) c3acf79307
fix: Only make potentially one cargo hakari commit per branch
So that we don't have to skip running tests when cargo hakari makes a
change, but we won't have infinite cargo hakari commits if there's some
sort of problem.
2022-03-03 15:32:31 -05:00
Carol (Nichols || Goulding) 33bbbd9950
fix: Cargo hakari commits have to use semantic commits too 2022-03-03 14:50:36 -05:00
Carol (Nichols || Goulding) 7f8dcf1ed0
chore: Add ssh key to CircleCI hakari job so it can push commits 2022-03-03 14:43:37 -05:00
Carol (Nichols || Goulding) 5018d1bf66
fix: Have auto hakari commits come from a CircleCI bot, not dependabot 2022-03-03 14:43:37 -05:00
Carol (Nichols || Goulding) 26b9ad812e
feat: Auto commit cargo hakari generate changes 2022-03-03 14:43:37 -05:00
Andrew Lamb 677a272095
refactor: Clean up some future clippy warnings from nightly (#3892)
* refactor: clean up new clippy lints

* refactor: complete other cleanups

* fix: ignore overzealous clippy

* fix: re-remove old code
2022-03-03 19:14:27 +00:00
Raphael Taylor-Davies e304613546
feat: include trace ID in query log (#3912) (#3923)
* feat: include trace ID in query log (#3912)

* chore: fmt

* chore: lint
2022-03-03 17:50:49 +00:00
Marco Neumann cf0c238ae4
feat: allow unencrypted HTTP connections to AWS via flag (#3916)
This is required for the test bench.
2022-03-03 17:01:03 +00:00
Andrew Lamb d6afda0227
refactor: split `influxdb_ioxd`, `clap_blocks` and `serving_readiness` from influxdb_iox crate (#3908)
* refactor: split influxdb_ioxd, clap_blocks, and serving_readiness out of influxdb_iox

split out serving readiness, get compiling

* fix: hakari

* fix: hakari again

Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2022-03-03 16:48:30 +00:00
Raphael Taylor-Davies 82aa314659
feat: make wait-server-initialized wait for database init (#3915)
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2022-03-03 15:37:22 +00:00
Andrew Lamb 07fdbe7c6b
fix: apply `_field` restrictions that do not match any fields (#3903)
* fix: apply field restriction correctly

* refactor: Use Vec::retain
2022-03-03 15:04:05 +00:00
kodiakhq[bot] b9ffc5bcbe
Merge pull request #3913 from influxdata/er/feat/rpc_tracing
feat: add tracing to all remaining influx RPC calls
2022-03-03 14:41:34 +00:00
Edd Robinson de7c46c9bb feat: add read_window_aggregate tracing 2022-03-03 14:30:27 +00:00
Edd Robinson ea32bc366a feat: add read_group tracing 2022-03-03 14:27:01 +00:00
Edd Robinson 32baaa1ee7 feat: add tracing to field_columns 2022-03-03 14:27:01 +00:00
Edd Robinson 787a848bf5 feat: add tracing for tag_values 2022-03-03 14:27:01 +00:00
Edd Robinson 6a6fbf73ae feat: add tracing support tag_keys 2022-03-03 14:27:01 +00:00
Edd Robinson 998e205c2c feat: trace table_names 2022-03-03 14:27:01 +00:00
Edd Robinson 301ae886ce feat: add tracing down to the chunk level (#3804)
* refactor: wire exectution context to Deduplicator

* feat: example trace to chunk read_filter

* refactor: make execution context required

* refactor: expose metadata API

* refactor: more span context for chunk read_filter

* refactor: fix build

* refactor: push context into result stream

* refactor: make executor optional
2022-03-03 14:27:00 +00:00
kodiakhq[bot] 208c3673ad
Merge pull request #3901 from influxdata/dom/rustls
feat: rustls as TLS backend
2022-03-03 12:11:01 +00:00
kodiakhq[bot] 04a7a957fe
Merge branch 'main' into dom/rustls 2022-03-03 11:59:40 +00:00
kodiakhq[bot] 9ed9426bf5
Merge pull request #3902 from influxdata/dom/fix-feature-flags
fix: jemalloc feature flag
2022-03-03 11:59:09 +00:00
Dom Dwyer ab010f9d82 fix: regenerate workspace hack config 2022-03-03 11:55:00 +00:00
kodiakhq[bot] c0ebe5a2f1
Merge branch 'main' into dom/fix-feature-flags 2022-03-03 11:48:35 +00:00
Dom Dwyer 6204a9046d fix: jemalloc feature flag
In #2435 we moved the jemalloc metrics around, and missed a few feature
gates to avoid pulling in jemalloc unless it is requested.
2022-03-03 11:48:24 +00:00
kodiakhq[bot] 02fc20d638
Merge pull request #3897 from influxdata/dom/batch-column-upsert
feat: batch column upsert
2022-03-03 11:41:13 +00:00
kodiakhq[bot] 03ffc03c4b
Merge branch 'main' into dom/batch-column-upsert 2022-03-03 11:29:44 +00:00
Dom Dwyer 8de453edd1 feat: batch column upsert for schema validation
Uses the new ColumnRepo::create_or_get_many() catalog method to perform
a bulk upsert of (potentially) new columns to the catalog during schema
validation.
2022-03-03 11:18:29 +00:00
Raphael Taylor-Davies 0660b514e3
feat: allow persisting all partitions and/or all tables from CLI (#3874)
* feat: allow persisting all partitions and/or all tables

* chore: use BTreeSet

* feat: non-zero exit code on error continue

* test: test continue-on-error

* chore: review feedback

Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2022-03-03 11:17:34 +00:00
Dom Dwyer da145ffbe4 feat: batch upsert of columns to catalog
Adds ColumnRepo::create_or_get_many() to upsert multiple columns in one
round trip to Postgres.
2022-03-03 11:17:30 +00:00
Dom Dwyer 89dba1b7d1 docs: metric decorate macro
Some helpful tips for using the metric decorator's decorate! macro when
modifying the catalog traits.
2022-03-03 11:14:57 +00:00
Dom Dwyer b391cdde5e docs: remove openssl references 2022-03-03 11:05:20 +00:00
Dom Dwyer 46bb107be4 refactor: use rustls
Removes openssl as a dependency, switching to rustls[1] as the TLS
implementation throughout.

It is important to note that this change brings with it a significant
behavioural difference - rustls does not currently support IP SANs in
certificates (instead only supporting fully-qualified names / DNS) and
this will manifest as a failure to connect to IP endpoints over TLS.
This might be a blocker that prevents us using rustls exclusively, but
there's noe asy way to know without trying it. Fortunately the rustls
project has received funding to work on IP SAN support[2].

[1]: https://github.com/rustls/rustls
[2]: https://www.abetterinternet.org/post/preparing-rustls-for-wider-adoption/
2022-03-03 11:05:20 +00:00
Edd Robinson f2126c76d3
refactor: address PR feedback (#3906)
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2022-03-03 11:04:05 +00:00
Dom Dwyer 4785a7d028 refactor: bump Azure SDK
Update to the latest Azure SDK to pick up rustls support.
2022-03-03 11:02:20 +00:00
Raphael Taylor-Davies 02a2cfde54
feat: update rskafka (#3805) (#3910) 2022-03-03 10:53:47 +00:00
Marco Neumann bbeba73345
feat: sync partitions in querier (#3900)
* feat: sync partitions in querier

* docs: explain per-table partition grouping
2022-03-03 09:28:44 +00:00
kodiakhq[bot] ea4a245697
Merge pull request #3786 from influxdata/cn/querier-flight-request
feat: Querier flight request to Ingester
2022-03-02 20:40:10 +00:00
kodiakhq[bot] caba3e9fd2
Merge branch 'main' into cn/querier-flight-request 2022-03-02 20:30:00 +00:00
Carol (Nichols || Goulding) 806a43eb6c
fix: Temporarily remove ingester end-to-end test case
This now needs more setup because without any data, the flight query
request returns an error. The setup is proving to be nontrivial.
2022-03-02 15:29:48 -05:00
Edd Robinson 3d047073b9
feat: add tracing down to the chunk level (#3804)
* refactor: wire exectution context to Deduplicator

* feat: example trace to chunk read_filter

* refactor: make execution context required

* refactor: expose metadata API

* refactor: more span context for chunk read_filter

* refactor: fix build

* refactor: push context into result stream

* refactor: make executor optional
2022-03-02 19:08:22 +00:00
Carol (Nichols || Goulding) 3f2a58b47f
refactor: pub use data_types from data_types2
So it's clearer which parts of data_types the NG design is using, and
which types can be cleaned up eventually.
2022-03-02 13:55:31 -05:00
Carol (Nichols || Goulding) 2a90841715
refactor: Move IngesterQueryRequest to data_types2
So that querier doesn't need to depend on ingester.
2022-03-02 13:52:13 -05:00
Carol (Nichols || Goulding) 8f3e44bf76
refactor: Extract a crate for shared data types in the new design 2022-03-02 12:16:15 -05:00