mirror of
https://github.com/GreptimeTeam/greptimedb.git
synced 2026-10-24 21:02:30 +00:00
* fix(mito): bound retained scan memory Compact unused tag dictionary values before merge retention and avoid splitting a single scan source into redundant batches. Include regression coverage. Signed-off-by: jeremyhi <fengjiachun@gmail.com> * perf(snapshot): bound writes and reduce logical export overhead Bound metadata writes to 8 MiB and abort failed writers. Preserve compatible string dictionaries, bound conversion work, combine Parquet row groups and filter single-table exports before routing. Include resource-boundary and packed-restore regression coverage. Signed-off-by: jeremyhi <fengjiachun@gmail.com> * docs: clarify metric snapshot acceptance criteria Specify populated scale fixtures, controlled S3 request delay, native macOS validation, paging exclusions and alternating comparison rounds. Signed-off-by: jeremyhi <fengjiachun@gmail.com> * fix(mito): split batches only for merged readers Signed-off-by: jeremyhi <fengjiachun@gmail.com> * test(snapshot): cover supported types in both layouts Signed-off-by: jeremyhi <fengjiachun@gmail.com> * docs: consolidate metric snapshot experiment conclusions Signed-off-by: jeremyhi <fengjiachun@gmail.com> * fix(mito): honor series statistics when splitting L0 scans Apply the existing series-density heuristic to L0 files with known statistics and include them in the batch-size estimate. Preserve the fallback for older files without statistics. Cover short-series overlapping L0 files with an ordered latest-value regression. Signed-off-by: jeremyhi <fengjiachun@gmail.com> * docs(mito): explain memory risk of splitting short L0 series Signed-off-by: jeremyhi <fengjiachun@gmail.com> * refactor: address snapshot export review feedback Signed-off-by: jeremyhi <fengjiachun@gmail.com> * fix(cli): accept source errors in lazy snapshot contexts Signed-off-by: jeremyhi <fengjiachun@gmail.com> --------- Signed-off-by: jeremyhi <fengjiachun@gmail.com>
157 lines
3.9 KiB
TOML
157 lines
3.9 KiB
TOML
[package]
|
|
name = "mito2"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
|
|
[features]
|
|
default = []
|
|
test = ["common-test-util", "rstest", "rstest_reuse", "rskafka"]
|
|
testing = ["test"]
|
|
test-shared-fs-region-migration = []
|
|
enterprise = []
|
|
hdfs-object-store = ["object-store/hdfs-object-store"]
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[dependencies]
|
|
api.workspace = true
|
|
aquamarine.workspace = true
|
|
arrow-schema.workspace = true
|
|
arrow-select.workspace = true
|
|
async-channel = "1.9"
|
|
async-stream.workspace = true
|
|
async-trait.workspace = true
|
|
base64.workspace = true
|
|
bytemuck.workspace = true
|
|
bytes.workspace = true
|
|
chrono.workspace = true
|
|
common-base.workspace = true
|
|
common-datasource.workspace = true
|
|
common-error.workspace = true
|
|
common-function.workspace = true
|
|
common-grpc.workspace = true
|
|
common-macro.workspace = true
|
|
common-memory-manager.workspace = true
|
|
common-meta.workspace = true
|
|
common-query.workspace = true
|
|
common-recordbatch.workspace = true
|
|
common-runtime.workspace = true
|
|
common-stat.workspace = true
|
|
common-telemetry.workspace = true
|
|
common-test-util = { workspace = true, optional = true }
|
|
common-time.workspace = true
|
|
common-wal.workspace = true
|
|
crc32fast = "1"
|
|
crossbeam-utils.workspace = true
|
|
dashmap.workspace = true
|
|
datafusion.workspace = true
|
|
datafusion-common.workspace = true
|
|
datafusion-expr.workspace = true
|
|
datatypes.workspace = true
|
|
derive_more.workspace = true
|
|
dotenv.workspace = true
|
|
either.workspace = true
|
|
futures.workspace = true
|
|
greptime-proto.workspace = true
|
|
humantime.workspace = true
|
|
humantime-serde.workspace = true
|
|
index.workspace = true
|
|
itertools.workspace = true
|
|
lazy_static = "1.4"
|
|
log-store = { workspace = true }
|
|
mito-codec.workspace = true
|
|
moka = { workspace = true, features = ["sync", "future"] }
|
|
object-store = { workspace = true, features = ["testing"] }
|
|
parquet = { workspace = true, features = ["async", "variant_experimental"] }
|
|
partition.workspace = true
|
|
pin-project.workspace = true
|
|
prometheus.workspace = true
|
|
prost.workspace = true
|
|
puffin.workspace = true
|
|
rand.workspace = true
|
|
rayon = "1.10"
|
|
regex.workspace = true
|
|
rskafka = { workspace = true, optional = true }
|
|
rstest = { workspace = true, optional = true }
|
|
rstest_reuse = { workspace = true, optional = true }
|
|
serde.workspace = true
|
|
serde_json.workspace = true
|
|
serde_with.workspace = true
|
|
smallvec.workspace = true
|
|
snafu.workspace = true
|
|
store-api.workspace = true
|
|
strum.workspace = true
|
|
table.workspace = true
|
|
tokio.workspace = true
|
|
tokio-stream.workspace = true
|
|
tokio-util.workspace = true
|
|
tracing.workspace = true
|
|
uuid.workspace = true
|
|
winner_tree.workspace = true
|
|
zstd.workspace = true
|
|
|
|
[dev-dependencies]
|
|
common-function.workspace = true
|
|
common-meta = { workspace = true, features = ["testing"] }
|
|
common-test-util.workspace = true
|
|
criterion = { workspace = true, features = ["async", "async_tokio"] }
|
|
dotenv.workspace = true
|
|
log-store = { workspace = true, features = ["testing"] }
|
|
mito-codec = { workspace = true, features = ["testing"] }
|
|
object-store = { workspace = true, features = ["services-memory"] }
|
|
rskafka.workspace = true
|
|
rstest.workspace = true
|
|
rstest_reuse.workspace = true
|
|
toml.workspace = true
|
|
|
|
[[bench]]
|
|
name = "memtable_bench"
|
|
harness = false
|
|
required-features = ["test"]
|
|
|
|
[[bench]]
|
|
name = "bench_cache_stream"
|
|
harness = false
|
|
required-features = ["test"]
|
|
|
|
[[bench]]
|
|
name = "bench_filter_time_partition"
|
|
harness = false
|
|
required-features = ["test"]
|
|
|
|
[[bench]]
|
|
name = "bench_compaction_picker"
|
|
harness = false
|
|
required-features = ["testing"]
|
|
|
|
[[bench]]
|
|
name = "bench_flat_merge"
|
|
harness = false
|
|
required-features = ["testing"]
|
|
|
|
[[bench]]
|
|
name = "simple_bulk_memtable"
|
|
harness = false
|
|
required-features = ["test"]
|
|
|
|
[[bench]]
|
|
name = "bench_wal_encode"
|
|
harness = false
|
|
|
|
[[bench]]
|
|
name = "bench_index_update"
|
|
harness = false
|
|
required-features = ["testing"]
|
|
|
|
[[bench]]
|
|
name = "bench_pk_tag_column"
|
|
harness = false
|
|
required-features = ["testing"]
|
|
|
|
[[bench]]
|
|
name = "bench_dense_index_update"
|
|
harness = false
|
|
required-features = ["testing"]
|