mirror of
https://github.com/GreptimeTeam/greptimedb.git
synced 2026-10-03 02:25:35 +00:00
* feat: add HDFS object storage backend Signed-off-by: Minghan2005 <cambrianocean@gmail.com> * fix: make HDFS storage operations durable Gate the native HDFS backend behind an explicit feature. Publish writes through same-directory temporary files and atomic HDFS Rename2 replacement, and provide streaming copy fallback for COPY_REGION. Add regression coverage for interrupted writes and the region-copy path. Signed-off-by: Minghan2005 <cambrianocean@gmail.com> * ci: run HDFS object store tests Signed-off-by: jeremyhi <fengjiachun@gmail.com> * docs: note HDFS temporary file cleanup follow-up Signed-off-by: jeremyhi <fengjiachun@gmail.com> * feat: enable HDFS object storage by default Signed-off-by: jeremyhi <fengjiachun@gmail.com> * docs: remove redundant HDFS build feature notes Signed-off-by: jeremyhi <fengjiachun@gmail.com> --------- Signed-off-by: Minghan2005 <cambrianocean@gmail.com> Signed-off-by: jeremyhi <fengjiachun@gmail.com> Co-authored-by: Minghan2005 <cambrianocean@gmail.com> Co-authored-by: jeremyhi <fengjiachun@gmail.com>
135 lines
3.5 KiB
TOML
135 lines
3.5 KiB
TOML
[package]
|
|
name = "cmd"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
default-run = "greptime"
|
|
|
|
[[bin]]
|
|
name = "greptime"
|
|
path = "src/bin/greptime.rs"
|
|
|
|
[[bin]]
|
|
name = "query_perf_fixture"
|
|
path = "src/bin/query_perf_fixture.rs"
|
|
required-features = ["dev-tools"]
|
|
|
|
[[bin]]
|
|
name = "query_regression_runner"
|
|
path = "src/bin/query_regression_runner.rs"
|
|
required-features = ["dev-tools"]
|
|
|
|
[features]
|
|
default = [
|
|
"ai_functions",
|
|
"hdfs-object-store",
|
|
"servers/pprof",
|
|
"servers/mem-prof",
|
|
"meta-srv/pg_kvbackend",
|
|
"meta-srv/mysql_kvbackend",
|
|
]
|
|
ai_functions = ["query/ai_functions"]
|
|
enterprise = ["common-meta/enterprise", "frontend/enterprise", "meta-srv/enterprise"]
|
|
# Developer-only helper binaries and diagnostic datanode commands.
|
|
# Kept out of `default` so normal/release builds don't compile them.
|
|
dev-tools = []
|
|
hdfs-object-store = ["mito2/hdfs-object-store", "object-store/hdfs-object-store"]
|
|
mysql-object-store = ["object-store/mysql-object-store"]
|
|
tokio-console = ["common-telemetry/tokio-console"]
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[dependencies]
|
|
api.workspace = true
|
|
async-trait.workspace = true
|
|
auth.workspace = true
|
|
cache.workspace = true
|
|
catalog.workspace = true
|
|
clap.workspace = true
|
|
cli.workspace = true
|
|
client.workspace = true
|
|
colored = "2.1.0"
|
|
common-base.workspace = true
|
|
common-catalog.workspace = true
|
|
common-config.workspace = true
|
|
common-datasource.workspace = true
|
|
common-error.workspace = true
|
|
common-grpc.workspace = true
|
|
common-macro.workspace = true
|
|
common-mem-prof.workspace = true
|
|
common-meta.workspace = true
|
|
common-options.workspace = true
|
|
common-procedure.workspace = true
|
|
common-query.workspace = true
|
|
common-runtime.workspace = true
|
|
common-stat.workspace = true
|
|
common-telemetry = { workspace = true, features = [
|
|
"deadlock_detection",
|
|
] }
|
|
common-time.workspace = true
|
|
common-version.workspace = true
|
|
common-wal.workspace = true
|
|
datafusion.workspace = true
|
|
datafusion-common.workspace = true
|
|
datafusion-physical-plan.workspace = true
|
|
datafusion_object_store.workspace = true
|
|
datanode.workspace = true
|
|
datatypes.workspace = true
|
|
etcd-client.workspace = true
|
|
flow.workspace = true
|
|
frontend = { workspace = true, default-features = false }
|
|
futures.workspace = true
|
|
hex.workspace = true
|
|
human-panic = "2.0"
|
|
lazy_static.workspace = true
|
|
log-store.workspace = true
|
|
meta-client.workspace = true
|
|
meta-srv.workspace = true
|
|
mito-codec.workspace = true
|
|
mito2.workspace = true
|
|
moka = { workspace = true, features = ["future"] }
|
|
object-store.workspace = true
|
|
object_store_opendal.workspace = true
|
|
parquet = { workspace = true, features = ["object_store"] }
|
|
plugins.workspace = true
|
|
prometheus.workspace = true
|
|
prost.workspace = true
|
|
query.workspace = true
|
|
rand.workspace = true
|
|
regex.workspace = true
|
|
reqwest.workspace = true
|
|
serde.workspace = true
|
|
serde_json.workspace = true
|
|
servers.workspace = true
|
|
smallvec.workspace = true
|
|
snafu.workspace = true
|
|
sqlparser.workspace = true
|
|
standalone.workspace = true
|
|
store-api.workspace = true
|
|
tokio.workspace = true
|
|
toml.workspace = true
|
|
tracing-appender.workspace = true
|
|
|
|
[target.'cfg(unix)'.dependencies]
|
|
daemonize = "0.5"
|
|
pprof = { version = "0.15", features = [
|
|
"flamegraph",
|
|
] }
|
|
|
|
[target.'cfg(not(windows))'.dependencies]
|
|
tikv-jemallocator = "0.7"
|
|
|
|
[dev-dependencies]
|
|
api.workspace = true
|
|
client = { workspace = true, features = ["testing"] }
|
|
common-test-util.workspace = true
|
|
common-version.workspace = true
|
|
file-engine.workspace = true
|
|
metric-engine.workspace = true
|
|
mito2.workspace = true
|
|
serde.workspace = true
|
|
similar-asserts.workspace = true
|
|
temp-env = "0.3"
|
|
tempfile.workspace = true
|