[package]
edition = "2021"
name = "pi_db"
version = "0.19.13"
authors = ["vmos <vmosone007@gmail.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Full cache based database,support transaction"
readme = "README.md"
keywords = [
"pi",
"database",
"transaction",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/GaiaWorld/pi_db.git"
[features]
default = []
log_table_debug = []
trace = [
"opentelemetry",
"pi_logger",
]
[lib]
name = "pi_db"
path = "src/lib.rs"
[[test]]
name = "btree_delete_old_value"
path = "tests/btree_delete_old_value.rs"
[[test]]
name = "btree_redb_prepare_baseline"
path = "tests/btree_redb_prepare_baseline.rs"
[[test]]
name = "commit_confirmation_contract"
path = "tests/commit_confirmation_contract.rs"
[[test]]
name = "commit_confirmation_real_environment"
path = "tests/commit_confirmation_real_environment.rs"
[[test]]
name = "core_types_contract"
path = "tests/core_types_contract.rs"
[[test]]
name = "ddl_remove_crash_durability"
path = "tests/ddl_remove_crash_durability.rs"
[[test]]
name = "ddl_reserved_meta_safety"
path = "tests/ddl_reserved_meta_safety.rs"
[[test]]
name = "empty_wal_commit"
path = "tests/empty_wal_commit.rs"
[[test]]
name = "inspector_replay_lifecycle"
path = "tests/inspector_replay_lifecycle.rs"
[[test]]
name = "iterator_snapshot_safety"
path = "tests/iterator_snapshot_safety.rs"
[[test]]
name = "key_version_api_contract"
path = "tests/key_version_api_contract.rs"
[[test]]
name = "key_version_btree_empty_query"
path = "tests/key_version_btree_empty_query.rs"
[[test]]
name = "key_version_btree_restart_consistency"
path = "tests/key_version_btree_restart_consistency.rs"
[[test]]
name = "key_version_concurrency_safety"
path = "tests/key_version_concurrency_safety.rs"
[[test]]
name = "key_version_conflict_real"
path = "tests/key_version_conflict_real.rs"
[[test]]
name = "key_version_first_observation_lease"
path = "tests/key_version_first_observation_lease.rs"
[[test]]
name = "key_version_iterator_protocol_isolation"
path = "tests/key_version_iterator_protocol_isolation.rs"
[[test]]
name = "key_version_publication_real"
path = "tests/key_version_publication_real.rs"
[[test]]
name = "key_version_snapshot_lifecycle"
path = "tests/key_version_snapshot_lifecycle.rs"
[[test]]
name = "key_version_ttl_early_expiry"
path = "tests/key_version_ttl_early_expiry.rs"
[[test]]
name = "key_version_ttl_index"
path = "tests/key_version_ttl_index.rs"
[[test]]
name = "kv_action_contract"
path = "tests/kv_action_contract.rs"
[[test]]
name = "manager_contract"
path = "tests/manager_contract.rs"
[[test]]
name = "manager_listener_contract"
path = "tests/manager_listener_contract.rs"
[[test]]
name = "manager_startup_configuration"
path = "tests/manager_startup_configuration.rs"
[[test]]
name = "manager_table_maintenance"
path = "tests/manager_table_maintenance.rs"
[[test]]
name = "ordinary_2pc_api_contract"
path = "tests/ordinary_2pc_api_contract.rs"
[[test]]
name = "ordinary_multi_table_concurrency"
path = "tests/ordinary_multi_table_concurrency.rs"
[[test]]
name = "ordinary_multi_table_conflict_rollback"
path = "tests/ordinary_multi_table_conflict_rollback.rs"
[[test]]
name = "ordinary_multi_table_ordering"
path = "tests/ordinary_multi_table_ordering.rs"
[[test]]
name = "ordinary_multi_table_recovery"
path = "tests/ordinary_multi_table_recovery.rs"
[[test]]
name = "prepare_conflict_regression"
path = "tests/prepare_conflict_regression.rs"
[[test]]
name = "root_delete_contract"
path = "tests/root_delete_contract.rs"
[[test]]
name = "root_key_hook_contract"
path = "tests/root_key_hook_contract.rs"
[[test]]
name = "root_query_contract"
path = "tests/root_query_contract.rs"
[[test]]
name = "root_transaction_construction"
path = "tests/root_transaction_construction.rs"
[[test]]
name = "root_transaction_lifecycle"
path = "tests/root_transaction_lifecycle.rs"
[[test]]
name = "root_upsert_contract"
path = "tests/root_upsert_contract.rs"
[[test]]
name = "root_wal_checkpoint_rotation"
path = "tests/root_wal_checkpoint_rotation.rs"
[[test]]
name = "schema_protocol_neutral"
path = "tests/schema_protocol_neutral.rs"
[[test]]
name = "schema_protocol_recovery"
path = "tests/schema_protocol_recovery.rs"
[[test]]
name = "startup_repair_liveness"
path = "tests/startup_repair_liveness.rs"
[[test]]
name = "startup_table_batch_boundary"
path = "tests/startup_table_batch_boundary.rs"
[[test]]
name = "table_name_contract"
path = "tests/table_name_contract.rs"
[[test]]
name = "table_wal_codec_contract"
path = "tests/table_wal_codec_contract.rs"
[[test]]
name = "test"
path = "tests/test.rs"
[[test]]
name = "trace_meter_initialization"
path = "tests/trace_meter_initialization.rs"
[[test]]
name = "utils_contract"
path = "tests/utils_contract.rs"
[[bench]]
name = "bench"
path = "benches/bench.rs"
[[bench]]
name = "btree_delete"
path = "benches/btree_delete.rs"
[[bench]]
name = "btree_prepare_baseline"
path = "benches/btree_prepare_baseline.rs"
[[bench]]
name = "core_types"
path = "benches/core_types.rs"
[[bench]]
name = "empty_wal_commit"
path = "benches/empty_wal_commit.rs"
[[bench]]
name = "iterator_snapshot"
path = "benches/iterator_snapshot.rs"
[[bench]]
name = "key_version_publication"
path = "benches/key_version_publication.rs"
[[bench]]
name = "key_version_ttl_index"
path = "benches/key_version_ttl_index.rs"
[[bench]]
name = "ordinary_2pc_phases"
path = "benches/ordinary_2pc_phases.rs"
harness = false
[[bench]]
name = "ordinary_memory_concurrency"
path = "benches/ordinary_memory_concurrency.rs"
[[bench]]
name = "publication_contention_redline"
path = "benches/publication_contention_redline.rs"
harness = false
[[bench]]
name = "root_delete"
path = "benches/root_delete.rs"
[[bench]]
name = "root_key_hook"
path = "benches/root_key_hook.rs"
[[bench]]
name = "root_query"
path = "benches/root_query.rs"
[[bench]]
name = "root_upsert"
path = "benches/root_upsert.rs"
[[bench]]
name = "root_wal_checkpoint_rotation"
path = "benches/root_wal_checkpoint_rotation.rs"
harness = false
[[bench]]
name = "table_wal_codec"
path = "benches/table_wal_codec.rs"
[[bench]]
name = "version_commit_contention"
path = "benches/version_commit_contention.rs"
harness = false
[[bench]]
name = "version_commit_scaling"
path = "benches/version_commit_scaling.rs"
harness = false
[[bench]]
name = "version_commit_wal_payload"
path = "benches/version_commit_wal_payload.rs"
harness = false
[[bench]]
name = "wal_flush_contention_redline"
path = "benches/wal_flush_contention_redline.rs"
harness = false
[dependencies.async-channel]
version = "~2.5"
[dependencies.async-lock]
version = "~3.4"
[dependencies.async-stream]
version = "~0.3"
[dependencies.bytes]
version = "~1.11"
[dependencies.crossbeam-channel]
version = "~0.5"
[dependencies.dashmap]
version = "6.2"
[dependencies.futures]
version = "~0.3"
[dependencies.lazy_static]
version = "~1.5"
[dependencies.log]
version = "~0.4"
[dependencies.opentelemetry]
version = "~0.30"
optional = true
[dependencies.parking_lot]
version = "~0.12"
[dependencies.pi-async-rt]
version = "~0.5"
[dependencies.pi_async_file]
version = "~0.9"
[dependencies.pi_async_transaction]
version = "~0.12"
[dependencies.pi_atom]
version = "~0.7"
[dependencies.pi_bon]
version = "~0.3"
[dependencies.pi_guid]
version = "~0.1"
[dependencies.pi_hash]
version = "~0.1"
[dependencies.pi_logger]
version = "~0.9"
optional = true
[dependencies.pi_ordmap]
version = "~0.5"
[dependencies.pi_sinfo]
version = "~0.6"
[dependencies.pi_store]
version = "~0.11"
[dependencies.redb]
version = "~2.6"
[dev-dependencies.chrono]
version = "0.4"
[dev-dependencies.env_logger]
version = "~0.11"
[dev-dependencies.fastrand]
version = "~1.5"
[dev-dependencies.indexmap]
version = "~1.9"
features = ["std"]
[dev-dependencies.opentelemetry_sdk]
version = "~0.30"
features = [
"metrics",
"testing",
]
[dev-dependencies.pi_time]
version = "~0.5"
[target.'cfg(target_os = "linux")'.dependencies.libc]
version = "~0.2"