Marco Neumann
a0bbbdb197
refactor: use dedicated in-memory `Expr` type during IO
...
Place a dedicated `Expr` type between datafusion and protobuf. While
this type is currently only used during serialization, it will be used
within `Predicate` in a follow-up change to enable de-duplication of
predicates and avoid the double parsing of datafusion expressions (we
are already somewhat parsing them when we check for valid delete
predicates).
This change looks larger than it is. In practice it just separates the
conversion "datafusion => protobuf" into "datafusion => IOx => protobuf"
and "protobuf => datafusion" into "protobuf => IOx => datafusion". So
(apart from the error types) this is functionally the same.
2021-10-04 09:59:14 +02:00
Raphael Taylor-Davies
b402423e9e
feat: remove move lifecycle action ( #2674 )
...
* feat: remove move_chunk lifecycle action
* chore: review feedback
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2021-09-30 16:58:05 +00:00
Raphael Taylor-Davies
db22b4bf60
chore: expand protobuf documentation ( #2659 )
...
* chore: expand protobuf documentation
* chore: review feedback
Co-authored-by: Andrew Lamb <alamb@influxdata.com>
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2021-09-29 21:22:03 +00:00
Andrew Lamb
451135ac31
fix: remove unused imports in proto ( #2654 )
...
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2021-09-29 08:42:32 +00:00
Raphael Taylor-Davies
86cee568d5
feat: use upstream pbjson ( #2650 )
...
* feat: use upstream pbjson
* chore: fmt
2021-09-28 16:29:26 +00:00
Marco Neumann
24c1563535
chore: remove unused `generated_types` => `futures` dep
2021-09-22 11:34:36 +02:00
Marco Neumann
26edaa4d42
chore: `generated_types` uses `num_cpus` only for tests
2021-09-22 11:31:22 +02:00
Marco Neumann
16a257e7b9
chore: remove unused `generated_types` => `serde_json` dep
2021-09-22 11:19:19 +02:00
Marco Neumann
6682178d6f
feat: teach preserved catalog to handle delete predicates
2021-09-20 15:51:14 +02:00
Marco Neumann
cef5aeee52
refactor: introduce `ChunkId` type
2021-09-20 13:10:41 +02:00
Raphael Taylor-Davies
f62d0eab3c
feat: disable bytes serde ( #2580 )
...
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2021-09-20 09:07:12 +00:00
Marco Neumann
9c80d32af5
refactor: use normal google timestamps in parquet metadata again
...
We changed from Google timestamp (which use variable-sized integers) to
our own fixed-sized integer timestamps so that the size of the parquet
metadata does not depend on the timestamp. However with the introduction
of compression this is the case anyways (since slightly different
timestamps lead to different compression results) and we need now
derministic timestamps for tests. So there is now point in using our own
timestamp type. Switching back to the variable-sized type also shrinks
the post-compression results a bit.
2021-09-20 09:34:03 +02:00
Marco Neumann
afc507ae14
feat: compress encoded parquet metadata
...
Depending on the number of columns, this should safe between 60% and
75%.
2021-09-20 09:33:18 +02:00
Marco Neumann
7e804db0a3
fix: use btree map for some protobuf messages for deterministic outputs
2021-09-20 09:33:18 +02:00
Carol (Nichols || Goulding)
51a40b31bf
feat: Add a --detailed option to the database list CLI
...
That will list both active and deleted databases with their generations.
Closes #2462 .
2021-09-17 15:27:23 -04:00
Carol (Nichols || Goulding)
44a89cdf75
refactor: Change DeletedDatabase to DetailedDatabase
...
So this info can be reused for active databases in detailed database
lists.
2021-09-17 15:27:22 -04:00
kodiakhq[bot]
23cc980d9e
Merge branch 'main' into cn/restore
2021-09-17 17:52:56 +00:00
Raphael Taylor-Davies
37b615f301
feat: migrate operations CLI to use pbjson ( #2562 )
...
* feat: migrate operations CLI to use pbjson
* fix: reserve removed field
* chore: review feedback
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2021-09-16 19:15:24 +00:00
Raphael Taylor-Davies
1d55d9a1b5
feat: add pbjson support ( #2468 )
...
* feat: add pbjson support
* chore: fix test
2021-09-16 07:33:27 +00:00
Carol (Nichols || Goulding)
91fd32d506
fix: Reset restored db's state instead of restarting background worker
2021-09-15 19:04:05 -04:00
Carol (Nichols || Goulding)
7b6d8f9327
feat: Add an API for restoring a database that was marked deleted
2021-09-15 16:59:37 -04:00
Raphael Taylor-Davies
6e7fa3e574
feat: migrate http ingest metrics ( #2542 )
...
* feat: migrate http ingest metrics
* chore: review feedback
* refactor: RAII entry ingest recorder
2021-09-15 19:01:10 +00:00
Raphael Taylor-Davies
1ea4335ff3
fix: report correct DatabaseStateCode ( #2543 )
...
* fix: report correct DatabaseStateCode
* chore: fix lint
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2021-09-15 18:02:54 +00:00
Marco Neumann
c5ebf4a2e6
refactor: remove unused predicate serialization variants
2021-09-15 18:05:11 +02:00
Marco Neumann
44eb3b994d
feat: `Predicate` serialization
...
Closes #2493 .
2021-09-15 16:37:25 +02:00
Marco Neumann
becef1c75f
refactor: introduce `ChunkOrder` type
2021-09-14 17:10:23 +02:00
Marco Neumann
8a531be05b
feat: expose chunk order via API and in system table
2021-09-14 13:00:55 +02:00
Marco Neumann
45cb00d8c0
refactor: track chunk order in chunks
2021-09-14 13:00:55 +02:00
Marco Neumann
3f2e46c397
feat: prune old transactions from preserved catalog
2021-09-14 12:08:17 +02:00
Nga Tran
00df7b064c
feat: finally have the delete predicate parsed
2021-09-08 17:30:10 -04:00
Marco Neumann
bbb8898d36
refactor: make writer buffer auto-creation types nicer to read
2021-09-08 11:13:48 +02:00
Marco Neumann
0a823cd75c
refactor: simplify error handling
2021-09-07 18:24:59 +02:00
Marco Neumann
e7cf91bfc4
refactor: more structures write buffer auto-creation config
2021-09-07 18:18:20 +02:00
Marco Neumann
d5662328b0
refactor: `n_sequencers` should be non-zero
2021-09-07 18:18:20 +02:00
Nga Tran
dbe4bcff22
chore: merge main to branch
2021-09-07 10:54:59 -04:00
Nga Tran
9de3b79a90
refactor: more cleanup
2021-09-06 01:45:47 -04:00
Nga Tran
de0bd80c3d
refactor: cleanup
2021-09-06 01:07:07 -04:00
Nga Tran
4801b2c238
feat: Have the ParseDelete message and its corresponding ProvidedParseDelete struct ready for building delete parser
2021-09-06 00:13:59 -04:00
Nga Tran
d8b3208896
refactor: sstart building parser in the client side
2021-09-03 17:56:45 -04:00
Carol (Nichols || Goulding)
ce6030a3cb
feat: Wire list deleted databases through gRPC and CLI APIs
2021-09-02 15:48:07 -04:00
Marco Neumann
81e672db14
feat: add `auto_create_sequencers` write buffer flag
2021-09-02 16:41:35 +02:00
Marco Neumann
ecf1f99ddb
refactor: more flexible writer buffer config
...
This allows:
- different types (instead of guessing through the connection URL)
- sequencer counts (not used yet but will be by #2455 )
- extensible configs (e.g. to configure Kafka in a more granular way,
not wired up yet)
- future extensions (since we use a message now instead of a single
string)
**BREAKING: This requires changes for deployed systems / existing DBs!**
2021-09-02 16:41:35 +02:00
Marco Neumann
27248850e5
refactor: use `byte::Bytes` for metadata in protobuf messages
...
That simplifies printing a bit since we `Vec<u8>` prints quite badly.
2021-09-01 11:26:05 +02:00
Nga Tran
a4183de411
feat: more progress on the delete flow from grpc API to catalog chunks
2021-08-31 17:42:07 -04:00
Carol (Nichols || Goulding)
d688678464
feat: Add an iox_object_store API for writing the tombstone file
...
Connects to #1871 .
2021-08-30 10:42:45 -04:00
dependabot[bot]
3e154b3b02
chore(deps): bump serde_json from 1.0.66 to 1.0.67
...
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.66 to 1.0.67.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.66...v1.0.67 )
---
updated-dependencies:
- dependency-name: serde_json
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2021-08-30 11:28:35 +00:00
dependabot[bot]
52fbaef2df
chore(deps): bump thiserror from 1.0.26 to 1.0.28
...
Bumps [thiserror](https://github.com/dtolnay/thiserror ) from 1.0.26 to 1.0.28.
- [Release notes](https://github.com/dtolnay/thiserror/releases )
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.26...1.0.28 )
---
updated-dependencies:
- dependency-name: thiserror
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2021-08-30 11:05:11 +00:00
Andrew Lamb
2f49e47a23
feat: return DatabaseRules for ListDatabases request ( #2431 )
2021-08-28 10:53:24 +00:00
Andrew Lamb
779b027271
feat: Store only the database rules sent by the client (do not store default values) ( #2430 )
...
* feat: add omit_default to protobuf definition
* feat: Persist only the client provided rules
* fix: Remove race conditions
* fix: merge confit
* refactor: do not use macro
* refactor: restore use of glob import
* fix: review comments
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2021-08-28 10:26:32 +00:00
Nga Tran
499af57299
chore: merge mian to branch and resolve conflicts
2021-08-27 17:51:07 -04:00