Files
greptimedb/src/servers/Cargo.toml
Ruihang Xia e22aa819be feat: support server-side keep-alive for mysql and pg protocols (#5496)
* feat: support server-side keep-alive for mysql and pg protocols

Signed-off-by: Ruihang Xia <waynestxia@gmail.com>

* update config.md

Signed-off-by: Ruihang Xia <waynestxia@gmail.com>

* update config to use humantime for keep-alive configuration

Signed-off-by: Ruihang Xia <waynestxia@gmail.com>

* chore: Update socket2 dependency

Signed-off-by: Ruihang Xia <waynestxia@gmail.com>

---------

Signed-off-by: Ruihang Xia <waynestxia@gmail.com>
2025-02-11 19:22:10 +00:00

162 lines
4.5 KiB
TOML

[package]
name = "servers"
version.workspace = true
edition.workspace = true
license.workspace = true
[features]
default = []
dashboard = []
mem-prof = ["dep:common-mem-prof"]
pprof = ["dep:common-pprof"]
testing = []
[lints]
workspace = true
[target.'cfg(not(target_os = "android"))'.dependencies]
local-ip-address.workspace = true
[dependencies]
ahash = "0.8"
api.workspace = true
arrow.workspace = true
arrow-flight.workspace = true
arrow-ipc.workspace = true
arrow-schema.workspace = true
async-trait = "0.1"
auth.workspace = true
axum = { workspace = true, features = ["multipart"] }
axum-extra = { workspace = true, features = ["typed-header"] }
axum-macros.workspace = true
base64.workspace = true
bytes.workspace = true
catalog.workspace = true
chrono.workspace = true
common-base.workspace = true
common-catalog.workspace = true
common-config.workspace = true
common-error.workspace = true
common-grpc.workspace = true
common-macro.workspace = true
common-mem-prof = { workspace = true, optional = true }
common-meta.workspace = true
common-plugins.workspace = true
common-pprof = { workspace = true, optional = true }
common-query.workspace = true
common-recordbatch.workspace = true
common-runtime.workspace = true
common-telemetry.workspace = true
common-time.workspace = true
common-version = { workspace = true, features = ["codec"] }
dashmap.workspace = true
datafusion.workspace = true
datafusion-common.workspace = true
datafusion-expr.workspace = true
datatypes.workspace = true
derive_builder.workspace = true
futures = "0.3"
futures-util.workspace = true
hashbrown = "0.15"
headers = "0.4"
hostname = "0.3"
http.workspace = true
http-body = "1"
humantime.workspace = true
humantime-serde.workspace = true
hyper = { workspace = true, features = ["full"] }
influxdb_line_protocol = { git = "https://github.com/evenyag/influxdb_iox", branch = "feat/line-protocol" }
itertools.workspace = true
jsonb.workspace = true
lazy_static.workspace = true
log-query.workspace = true
loki-proto.workspace = true
mime_guess = "2.0"
notify.workspace = true
object-pool = "0.5"
once_cell.workspace = true
openmetrics-parser = "0.4"
socket2 = "0.5"
# use crates.io version after current revision is merged in next release
# opensrv-mysql = "0.7.0"
opensrv-mysql = { git = "https://github.com/datafuselabs/opensrv", rev = "6bbc3b65e6b19212c4f7fc4f40c20daf6f452deb" }
opentelemetry-proto.workspace = true
parking_lot.workspace = true
pgwire = { version = "0.28.0", default-features = false, features = ["server-api-ring"] }
pin-project = "1.0"
pipeline.workspace = true
postgres-types = { version = "0.2", features = ["with-chrono-0_4", "with-serde_json-1"] }
prometheus.workspace = true
promql-parser.workspace = true
prost.workspace = true
query.workspace = true
quoted-string = "0.6"
rand.workspace = true
regex.workspace = true
reqwest.workspace = true
rust-embed = { version = "6.6", features = ["debug-embed"] }
rustls = { workspace = true, default-features = false, features = ["ring", "logging", "std", "tls12"] }
rustls-pemfile = "2.0"
rustls-pki-types = "1.0"
serde.workspace = true
serde_json.workspace = true
session.workspace = true
snafu.workspace = true
snap = "1"
sql.workspace = true
store-api.workspace = true
strum.workspace = true
table.workspace = true
tokio.workspace = true
tokio-rustls.workspace = true
tokio-stream = { workspace = true, features = ["net"] }
tokio-util.workspace = true
tonic.workspace = true
tonic-reflection = "0.12"
tower = { workspace = true, features = ["full"] }
tower-http = { version = "0.6", features = ["full"] }
urlencoding = "2.1"
uuid.workspace = true
zstd.workspace = true
[target.'cfg(not(windows))'.dependencies]
tikv-jemalloc-ctl = { version = "0.6", features = ["use_std", "stats"] }
[dev-dependencies]
auth = { workspace = true, features = ["testing"] }
catalog = { workspace = true, features = ["testing"] }
client = { workspace = true, features = ["testing"] }
common-base.workspace = true
common-test-util.workspace = true
criterion = "0.5"
json5 = "0.4"
mysql_async = { version = "0.33", default-features = false, features = [
"default-rustls",
] }
permutation = "0.4"
rand.workspace = true
serde_json.workspace = true
session = { workspace = true, features = ["testing"] }
table.workspace = true
tempfile = "3.0.0"
tokio-postgres = "0.7"
tokio-postgres-rustls = "0.12"
[target.'cfg(unix)'.dev-dependencies]
pprof = { version = "0.14", features = ["criterion", "flamegraph"] }
[build-dependencies]
common-version.workspace = true
[[bench]]
name = "bench_prom"
harness = false
[[bench]]
name = "to_http_output"
harness = false
[[bench]]
name = "loki_labels"
harness = false