Files
SpacetimeDB/crates/durability/Cargo.toml
Kim Altintop 05d4874918 Create db.lock file only for persistent databases (#3912)
This is the first step to make in-memory only databases not touch the
disk at all. Pending is an in-memory only sink for module logs.

Responsibility for the lock file is transferred to `Durability`, which
means that only persistent databases opened for writing acquire the
lock.

As a consequence, the `Durability` trait gains a `close` method that
prevents further writes and drains the internal buffers, even when
multiple `Arc`-pointers to the `Durability` exist.


# Expected complexity level and risk

2

# Testing

Covered by existing tests.
2026-01-08 08:22:37 +00:00

35 lines
826 B
TOML

[package]
name = "spacetimedb-durability"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
license-file = "LICENSE"
description = "Traits and single-node implementation of durability for SpacetimeDB."
[features]
test = []
fallocate = ["spacetimedb-commitlog/fallocate"]
[dependencies]
anyhow.workspace = true
futures.workspace = true
itertools.workspace = true
log.workspace = true
scopeguard.workspace = true
spacetimedb-commitlog.workspace = true
spacetimedb-fs-utils.workspace = true
spacetimedb-paths.workspace = true
spacetimedb-sats.workspace = true
thiserror.workspace = true
tokio.workspace = true
tracing.workspace = true
[dev-dependencies]
spacetimedb-commitlog = { workspace = true, features = ["test"] }
tempfile.workspace = true
tokio.workspace = true
[lints]
workspace = true