trait RemovedNodePruning extends ReplicatedData
ReplicatedData that has support for pruning of data belonging to a specific node may implement this interface. When a node is removed from the cluster these methods will be used by the Replicator to collapse data from the removed node into some other node in the cluster.
See process description in the 'CRDT Garbage' section of the Replicator documentation.
- Source
- ReplicatedData.scala
- Alphabetic
- By Inheritance
- RemovedNodePruning
- ReplicatedData
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- All
Type Members
-
abstract
type
T <: ReplicatedData
The type of the concrete implementation, e.g.
The type of the concrete implementation, e.g.
GSet[A]
. To be specified by subclass.- Definition Classes
- ReplicatedData
Abstract Value Members
-
abstract
def
merge(that: T): T
Monotonic merge function.
Monotonic merge function.
- Definition Classes
- ReplicatedData
-
abstract
def
modifiedByNodes: Set[UniqueAddress]
The nodes that have changed the state for this data and would need pruning when such node is no longer part of the cluster.
-
abstract
def
needPruningFrom(removedNode: UniqueAddress): Boolean
Does it have any state changes from a specific node, which has been removed from the cluster.
-
abstract
def
prune(removedNode: UniqueAddress, collapseInto: UniqueAddress): T
When the
removed
node has been removed from the cluster the state changes from that node will be pruned by collapsing the data entries to another node. -
abstract
def
pruningCleanup(removedNode: UniqueAddress): T
Remove data entries from a node that has been removed from the cluster and already been pruned.