Package org.infinispan.distribution

Classes relating to the distributed cache mode.


Interface Summary
DistributionManager A component that manages the distribution of elements across a cache cluster
L1Manager Manages the L1 Cache, in particular recording anyone who is going to cache an a command that a node responds to so that a unicast invalidation can be sent later if needed.
RemoteTransactionLogger This abstraction performs RPCs and works on a TransactionLogger located on a remote node.
TransactionLogger Typically adding a command, the following pattern would be used:

if (txLogger.beforeCommand()) { try { // execute this command! } finally { txLogger.afterCommand(cmd); } }

When draining, the following pattern should be used:

List<WriteCommand> c = null; while (txLogger.shouldDrainWithoutLock()) { c = txLogger.drain(); applyCommands(c); } c = txLogger.drainAndLock(); applyCommands(c); applyPendingPrepares(txLogger.getPendingPrepares()); txLogger.unlockAndDisable();


Class Summary
DistributionManagerImpl The default distribution manager implementation
RebalanceTask Task which handles view changes (joins, merges or leaves) and rebalances keys using a push based approach.
RehashTask A task that handles the rehashing of data in the cache system wheh nodes join or leave the cluster.
RemoteTransactionLogDetails A holder for fetching transaction logs from a remote state provider
TransactionLoggerImpl A transaction logger to log ongoing transactions in an efficient and thread-safe manner while a rehash is going on.

Enum Summary
DataLocality Used to determine whether a key is mapped to a local node.

Exception Summary
RehashInProgressException This exception is thrown when an operation cannot complete because a rehash is in progress.

Package org.infinispan.distribution Description

Classes relating to the distributed cache mode.


Copyright © 2011 JBoss, a division of Red Hat. All Rights Reserved.