Expand description
atomr-distributed-data. akka.net: src/contrib/cluster/Akka.DistributedData.
Provides CRDTs (GCounter, PNCounter, GSet, ORSet, LWWRegister,
Flag, ORMap, LWWMap, PNCounterMap) and a Replicator that
stores them in-memory and merges on request.
Structs§
- File
Durable Store - Append-only file-backed store. Keys live as
<dir>/<sanitized>.bin. - Flag
- GCounter
- GSet
- LWWMap
- Last-write-wins map of K → V.
- LwwRegister
- Noop
Durable Store - In-memory no-op implementation. Used when durability is disabled.
- ORMap
- Observed-remove map of K → V (V itself a CRDT).
- ORMulti
Map - Map of K → set-of-V, where the set is itself an
OrSet<V>. Akka.DistributedData’sORMultiMap. Phase 8.B. - OrSet
- Observed-remove set. Each addition gets a unique tag; a removal retains all tags seen at that moment. Merge takes the union of (item, tag) pairs minus tombstones.
- PNCounter
- PNCounter
Map - Map of K →
PNCounter. - Replicator
- Replicator
Actor - Actor-style replicator handle.
- Subscription
Token - RAII handle returned by
Replicator::subscribe.
Enums§
- Read
Consistency - Replicator
Ack - Tagged response payloads for
ReplicatorActorcommands. - Replicator
Error - Write
Consistency - Phase 8.D — typed consistency levels with timeouts. The current
in-process Replicator runs every operation as
Local(single-node store); cross-nodeAll/Majority/From(n)semantics activate once Phase 6 gossip lands.
Traits§
- Crdt
Merge - Convergent replicated data type merge semantics.
- Delta
Crdt - Optional delta-CRDT layer: emit a small “delta” describing the last local change and merge incoming deltas into the full state.
- Durable
Store - Abstraction over a durable backing store. Methods are sync so they can be called from anywhere (including the replicator actor task); implementations should keep work small or punt to a worker thread.