Commit Graph

574 Commits (b783bb1967a5b7f5ab14a1240cdaa9693c01c0fd)

Author SHA1 Message Date
Stuart Carnie d9feed3374
Merge branch 'main' into sgc/issue/7794_subquery_inconsistency 2023-05-23 09:52:28 +10:00
kodiakhq[bot] b9bcaf1aa0
Merge branch 'main' into savage/wal-regenerate-lp-cli-command 2023-05-22 16:18:44 +00:00
Marco Neumann 31b8813760
feat: hide `system.queries` table from prod by default (#7810)
Introduce a new header called `iox-debug` which when set enables certain
debug features. The first one will be the `system.queries` table which
is a process-local, namespace-scoped query log. In most prod setups this
is only useful for debugging and will confuse the user a lot because
when multiple queries are deployed then the K8s routing decides which
pod/process the users hits. This leads to an inconsistent view. However
the log is still useful for debugging.

This also wires the "debug header set" flag through the Flight ticket,
because JDBC proved (integration tests FTW!) that headers are only
passed to `GetFlightInfo` but not to `DoGet` and the ticket must encode
all the relevant information.

Closes #7119.

Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2023-05-22 12:29:24 +00:00
Stuart Carnie ed9a16c4ad
chore: Add test to validate compatibility 2023-05-22 16:23:21 +10:00
Christopher M. Wolff 90a25a3ff0
chore: update DataFusion (#7825)
* chore: update DataFusion

* chore: Run cargo hakari tasks

---------

Co-authored-by: CircleCI[bot] <circleci@influxdata.com>
2023-05-18 17:51:16 +00:00
Andrew Lamb e97c48b388
feat: download catalog objects as part of `remote store get-table` (#7779)
* feat: download catalog objects as part of remote store get-table

* fix: fix future_not_send

* fix: reorder import order

* chore: reduce repetition of `Error` in naming

* fix: improve the partition filtering API

* fix: clarify export comment

* fix: make index printing consistent

* fix: improve skip message

* chore: add extra clippy lints to inmport_export crate

* fix: comments

---------

Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2023-05-18 16:52:43 +00:00
Fraser Savage c263585d94
feat(cli): Add table ID `debug wal regenerate-lp` command implementation
This adds a command to `influxdb_iox` that can take a WAL segment file
and regenerate all write operation entries, writing to stdout or namespaced
files within a target directory, using table ID as the measurement name
in the case where there is no catalog access at point of regeneration.
2023-05-18 17:20:41 +01:00
Carol (Nichols || Goulding) 9cc2169ce2
fix: Rename Step::WaitForPersisted2 to Step::WaitForPersisted 2023-05-17 17:02:59 -04:00
Carol (Nichols || Goulding) 6785dcfd37
fix: Correct invalid test setups that the detector now detects 2023-05-17 17:00:17 -04:00
Carol (Nichols || Goulding) 45e47af974
test: Add an invalid test configuration checker
If the test setup calls `Step::Persist` to persist on-demand, that
means it shouldn't be used with `ChunkStage::Parquet`, which tries to
persist as fast as possible. This will fail the test with a hopefully
helpful message to prevent this.
2023-05-17 16:58:50 -04:00
Marco Neumann 62fed73bcd
refactor: upgrade DataFusion to `19b03240920ad63cac916b42951754c0337bdac8#19b03240920ad63cac916b42951754c0337bdac8` (#7813)
I need:

- https://github.com/apache/arrow-datafusion/pull/6226.

Changes in code due to:

- https://github.com/apache/arrow-datafusion/pull/6332

Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2023-05-17 13:57:12 +00:00
Andrew Lamb 1ff11d0856
refactor: Change catalog configuration so it is entirely dsn based / support end to end testing without postgres (#7736)
* refactor: Change catalog configuration so it is entirely dsn based / support end to end testing without postgres

Restores code from https://github.com/influxdata/influxdb_iox/pull/7708

Revert "revert: PR #7708"

This reverts commit c9cfe05f8d.

* fix: merge

* fix: Update new test
2023-05-17 13:36:25 +00:00
Marco Neumann 7e64264eef
refactor: remove `RedudantSort` optimizer pass (#7809)
* test: add dedup test for multiple partitions and ranges

* refactor: remove `RedudantSort` optimizer pass

Similar to #7807 this is now covered by DataFusion, as demonstrated by
the fact that all query tests (incl. explain tests) still pass.

The good thing is: passes that are no longer required don't require any
upstreaming, so this also closes #7411.
2023-05-17 09:30:04 +00:00
Nga Tran ca12f1c03d
fix: correctly recurse in `ParquetSortness` (#7778)
* test: reproducer for idpe_17556

* fix: `ParquetSortness` and partial opt

1. correctly handle cases where `ParquetSortness` would optimize one
   child branch but not the other
2. handle cases where `ParquetSortness` recusion should stop a bit
   clearer (using `TreeNodeRewriter`)
3. rename query tests to be a bit clearer
4. add test case with many (but not too many) duplicate files and an
   ingester (basically a prod use case where the compactor is slightly
   behind)

---------

Co-authored-by: Marco Neumann <marco@crepererum.net>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2023-05-17 06:09:23 +00:00
Stuart Carnie d7ab96c879
Merge branch 'main' into sgc/issue/6879_subquery_01 2023-05-17 07:20:08 +10:00
wiedld a4ad4fe69e
fix(4895): handle measurement missing, null bytes, and `=` in measurement names (#7759)
* test: add tests for the desired contract for parsing measurements from line protocol
* fix: restrict null chars in measurement
* chore: make an explicit Measurement type
* refactor: have iox lp parser match influxdb contract, for acceptance of eq in measurements
* test: create end_to_end test to confirm same write-then-read behavior with `=` in measurements, is the same as influxdb
2023-05-16 10:48:39 -07:00
Stuart Carnie 5a813fb61f
chore: Simplify first queries 2023-05-16 10:18:34 +10:00
Stuart Carnie d2fe92f71e
chore: Add additional queries to be fixed by #7794 2023-05-16 10:05:04 +10:00
Stuart Carnie 2e30442a86
Merge branch 'main' into sgc/issue/6879_subquery_01 2023-05-16 09:15:03 +10:00
Stuart Carnie 7ba619a32b
feat: outer GROUP BY pushed down to subqueries; more Cloud 2 examples 2023-05-15 15:31:20 +10:00
Stuart Carnie 62a4c02836
feat: Handle default FILL behaviour for subqueries 2023-05-15 11:22:26 +10:00
Stuart Carnie c77c4b3d23
feat: support nested aggregate subqueries 2023-05-15 09:31:06 +10:00
Stuart Carnie 4e96f814db
chore: Improve docs 2023-05-15 07:21:36 +10:00
Carol (Nichols || Goulding) 1770d0f4d8
fix: Move ingester-querier gRPC communication to its own crate 2023-05-12 13:28:30 -04:00
Stuart Carnie f4a19fc6c1
fix: Aggregate subqueries with push-down `GROUP BY tags` 2023-05-12 16:53:16 +10:00
Stuart Carnie 87dca540a7
feat: More subqueries succeeding 2023-05-12 13:55:42 +10:00
Stuart Carnie 0c391de410
Merge branch 'main' into sgc/issue/6879_subquery_01 2023-05-11 06:02:09 +10:00
Stuart Carnie 1d837b175e
feat: add schema support to DataSource::Subquery; fix incompatibilities 2023-05-10 14:33:34 +10:00
Carol (Nichols || Goulding) 3cafa9ace3
fix: Rename query_tests2 to query_tests 2023-05-09 22:10:46 -04:00
Carol (Nichols || Goulding) 35e8c52702
fix: Rename remaining test helper methods with a 2 suffix to not 2023-05-09 22:07:46 -04:00
Carol (Nichols || Goulding) e60f703e95
fix: Rename router2 to router
Including an alias and a test for continuing to support `influxdb_iox
run router2`.
2023-05-09 22:01:39 -04:00
Carol (Nichols || Goulding) 6daf5660b4
fix: Rename querier2 to querier
Just some test helpers; there never was an `influxdb_iox run querier2`
command so no alias or test needed.
2023-05-09 22:01:06 -04:00
Dom 372ec8ef96
Merge branch 'main' into cn/delete-experiments 2023-05-09 10:17:30 +01:00
Carol (Nichols || Goulding) dd9c5d1b13
fix: Rename compactor2 to compactor 2023-05-09 10:58:55 +02:00
Carol (Nichols || Goulding) 3d5df5574a
fix: Remove vestiges of shards 2023-05-08 20:24:36 -04:00
Carol (Nichols || Goulding) d8b56888a7
feat: Add a command alias so that 'influxdb_iox run ingester2' runs ingester 2023-05-08 12:03:05 -04:00
Carol (Nichols || Goulding) 56916cf942
fix: Rename ingester2 to ingester 2023-05-08 12:03:05 -04:00
Andrew Lamb be6bcdef45
fix: do not panic on unimplemented (#7765) 2023-05-08 15:13:54 +00:00
Andrew Lamb 2860d87fe1
chore: Update DataFusion (#7756)
* chore: Update DataFusion pin

* chore: Update explain plans

* chore: Run cargo hakari tasks

---------

Co-authored-by: CircleCI[bot] <circleci@influxdata.com>
2023-05-05 18:58:18 +00:00
Stuart Carnie f8b1d37d5a
fix: Consistent alias names with InfluxQL OG
Fixes #7750
2023-05-05 10:11:37 +10:00
Christopher M. Wolff 55b35367ac
test: add test for gap fill query missing time bounds (#7747)
* test: add test for gap fill query missing time bounds

* chore: update unit test

---------

Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2023-05-04 21:01:45 +00:00
Chunchun Ye a98952bff6
feat(flightsql): Support `CommandGetXdbcTypeInfo` metadata endpoint with actual data type info (#7696)
* chore: add expected xdbc type info value to jdbc test

* chore: add query skeleton to kick off plan_get_xdbc_type_info()`

* chore: implement a minimun version query for type info

* chore: rewrite `plan_get_xdbc_type_info` to use a static recrod batch

* chore: construct create_params as a string list

* chore: add create_params column in e2e test result

* chore: re-define create_params list items to be non-nullable

* chore: remove comment

* chore: refactor TYPE_INFO_RECORD_BATCH using XdbcTypeInfo struct and rewrite metadata for character types

chore: lint

chore: lint doc

chore: lint doc use automatic link

* chore: add unimplemented error msg

* chore: add `INTEGER`, `FLOAT`, `TIMESTAMP`, `INTERVAL` and  remove `CHAR`, `TEXT`, `STRING`

---------

Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2023-05-04 17:22:57 +00:00
Andrew Lamb 667da5eea4
chore: Add test for `dsn-file://` catalog urls (#7735)
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2023-05-04 10:48:18 +00:00
Stuart Carnie 60931631b8
Merge branch 'main' into sgc/issue/subquery_6891_03 2023-05-04 08:58:05 +10:00
Nga Tran 2d601bf211
test: num files to read exceed the max_parquet_fanout and all sorted files are resorted (#7737)
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2023-05-03 22:29:26 +00:00
Stuart Carnie 54d50bb6cf
Merge branch 'main' into sgc/issue/subquery_6891_03 2023-05-04 07:07:02 +10:00
Joe-Blount 6de18b6544
chore: conditionally parse shard_id from HOSTNAME (#7733)
* chore: conditionally parse shard_id from HOSTNAME

* chore: remove HOSTNAME env from test case relying on it not being there.
2023-05-03 20:09:00 +00:00
Christopher M. Wolff 05688799c4
fix: handle aliases in gapfill aggregate columns (#7725)
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2023-05-03 15:20:14 +00:00
Marco Neumann 231e0f48ab
test: add test for InfluxQL md queries w/ `FROM ""` (#7728)
See https://github.com/influxdata/idpe/issues/17559 .

Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2023-05-03 12:46:51 +00:00
Stuart Carnie 72397f63e5
Merge branch 'main' into sgc/issue/subquery_6891_03 2023-05-03 12:06:18 +10:00