Demand-driven — relevant once users run large CRDT states; scoped here so the design intent is on record.
Rationale
DistributedData gossip currently replicates full CRDT state. For large ORMap/ORSet instances (thousands of entries) that is O(state) bandwidth per gossip round. Delta-state CRDTs propagate only recent mutations (delta intervals) with causal delivery, cutting steady-state bandwidth dramatically — the standard approach in Akka Distributed Data.
Scope (sketch)
- Delta-interval tracking per CRDT (mutations since last ack per peer), anti-entropy fallback to full-state when a peer is too far behind.
- Causal delivery buffer per peer; delta support per CRDT type (start with ORSet/ORMap/GCounter, matrix documented).
- Bench: gossip payload bytes/round before vs. after on a 10k-entry ORMap (extend the cluster benchmarks).
Documentation
Distributed-data docs: delta replication section (EN + DE); config reference (enable/disable, buffer sizes); CHANGELOG.
Acceptance
- Convergence property tests still green (merge laws unaffected); payload-size bench shows the expected drop; mixed clusters (delta-capable + full-state) converge.
Non-goals
New CRDT types; cross-DC replication (#149).
Relates
Existing CRDT property tests; #149 (multi-DC). Improvement program M8 (demand-driven shelf).
Demand-driven — relevant once users run large CRDT states; scoped here so the design intent is on record.
Rationale
DistributedData gossip currently replicates full CRDT state. For large ORMap/ORSet instances (thousands of entries) that is O(state) bandwidth per gossip round. Delta-state CRDTs propagate only recent mutations (delta intervals) with causal delivery, cutting steady-state bandwidth dramatically — the standard approach in Akka Distributed Data.
Scope (sketch)
Documentation
Distributed-data docs: delta replication section (EN + DE); config reference (enable/disable, buffer sizes); CHANGELOG.
Acceptance
Non-goals
New CRDT types; cross-DC replication (#149).
Relates
Existing CRDT property tests; #149 (multi-DC). Improvement program M8 (demand-driven shelf).