summaryrefslogtreecommitdiffstats
path: root/src/state
diff options
context:
space:
mode:
authortv <tv@krebsco.de>2026-10-28 05:42:07 +0100
committertv <tv@krebsco.de>2026-10-28 05:42:07 +0100
commita0152151a89035846d564231a4c0023b31dddc0e (patch)
treebde5ede0823773a9418e5adc08b2a3bf3e18c185 /src/state
parent46c7d1bf7dd359e5eef6bc9eff023be7b9addb93 (diff)
add document lock stats
Diffstat (limited to 'src/state')
-rw-r--r--src/state/mod.rs5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/state/mod.rs b/src/state/mod.rs
index d8291a7..fec164d 100644
--- a/src/state/mod.rs
+++ b/src/state/mod.rs
@@ -40,7 +40,8 @@ use tokio::sync::{Mutex, RwLock, broadcast, mpsc, watch};
use tokio::time::Instant;
use tracing::{debug, error, warn};
-use crate::document::replica::{Epoch, Replica, Stamp};
+use crate::document::lock::DocumentLock;
+use crate::document::replica::{Epoch, Stamp};
use crate::locks::MutexExt;
use crate::remake::{Host, RemakeState};
use crate::swarm::sync::{ChangeSet, SyncEvent};
@@ -58,7 +59,7 @@ pub(crate) enum NodeLifecycle {
#[derive(Clone)]
pub(crate) struct AppState {
/// The document and its epoch. Derefs to `AutoCommit`.
- pub(crate) doc: Arc<RwLock<Replica>>,
+ pub(crate) doc: Arc<DocumentLock>,
/// Copy of `doc.epoch` for cheap, lock-free reads (handshakes, keepalives, /peers).
/// Only ever changed while holding `doc`'s write lock, together with `doc.epoch`.