Handles inbound state transfers.
Handles outbound state transfers.
We use the state transfer lock for three different things: We don't want to execute a command until we have the transaction table for that topology id.
A component that manages the state transfer when the topology of the cluster changes.
Inbound state transfer task.
Outbound state transfer task.
Encapsulates a chunk of cache entries that belong to the same segment.
This command is used by a StateConsumer to request transactions and cache entries from a StateProvider.
This command is used by a StateProvider to push cache entries to a StateConsumer.
This interceptor has two tasks: If the command's topology id is higher than the current topology id, wait for the node to receive transaction data for the new topology id. If the topology id changed during a command's execution, forward the command to the new owners. Note that we don't keep track of old cache topologies (yet), so we actually forward the command to all the owners -- not just the ones added in the new topology.
A representation of a transaction that is suitable for transferring between a StateProvider and a StateConsumer running on different members of the same cache.
With the Non-Blocking State Transfer (NBST) in place it is possible for a transactional command to be forwarded multiple times, concurrently to the same node.
An exception signalling that a command should be retried because it was executed with an outdated topology.
Copyright © 2017 JBoss, a division of Red Hat. All Rights Reserved.