[package] name = "pageserver" version = "0.1.0" edition.workspace = true license.workspace = true [features] default = [] # Enables test-only APIs, incuding failpoints. In particular, enables the `fail_point!` macro, # which adds some runtime cost to run tests on outage conditions testing = ["fail/failpoints"] [dependencies] anyhow.workspace = true async-compression.workspace = true async-stream.workspace = true async-trait.workspace = true byteorder.workspace = true bytes.workspace = true chrono = { workspace = true, features = ["serde"] } clap = { workspace = true, features = ["string"] } close_fds.workspace = true const_format.workspace = true consumption_metrics.workspace = true crc32c.workspace = true crossbeam-utils.workspace = true either.workspace = true flate2.workspace = true fail.workspace = true futures.workspace = true git-version.workspace = true hex.workspace = true humantime.workspace = true humantime-serde.workspace = true hyper.workspace = true itertools.workspace = true nix.workspace = true # hack to get the number of worker threads tokio uses num_cpus = { version = "1.15" } num-traits.workspace = true once_cell.workspace = true pin-project-lite.workspace = true postgres.workspace = true postgres_backend.workspace = true postgres-protocol.workspace = true postgres-types.workspace = true rand.workspace = true regex.workspace = true scopeguard.workspace = true serde.workspace = true serde_json = { workspace = true, features = ["raw_value"] } serde_with.workspace = true signal-hook.workspace = true smallvec = { workspace = true, features = ["write"] } svg_fmt.workspace = true sync_wrapper.workspace = true tokio-tar.workspace = true thiserror.workspace = true tokio = { workspace = true, features = ["process", "sync", "fs", "rt", "io-util", "time"] } tokio-io-timeout.workspace = true tokio-postgres.workspace = true tokio-util.workspace = true toml_edit = { workspace = true, features = [ "serde" ] } tracing.workspace = true url.workspace = true walkdir.workspace = true metrics.workspace = true pageserver_api.workspace = true postgres_connection.workspace = true postgres_ffi.workspace = true pq_proto.workspace = true remote_storage.workspace = true storage_broker.workspace = true tenant_size_model.workspace = true utils.workspace = true workspace_hack.workspace = true reqwest.workspace = true rpds.workspace = true enum-map.workspace = true enumset.workspace = true strum.workspace = true strum_macros.workspace = true [dev-dependencies] criterion.workspace = true hex-literal.workspace = true tempfile.workspace = true tokio = { workspace = true, features = ["process", "sync", "fs", "rt", "io-util", "time", "test-util"] } [[bench]] name = "bench_layer_map" harness = false [[bench]] name = "bench_walredo" harness = false