public interface DistributionManager
Modifier and Type | Method and Description |
---|---|
Collection<Address> |
getAffectedNodes(Collection<Object> affectedKeys)
A helper method that retrieves a list of nodes affected by operations on a set of keys.
|
ConsistentHash |
getConsistentHash()
Retrieves the consistent hash instance currently in use, an instance of the configured ConsistentHash
class (which defaults to
DefaultConsistentHash . |
DataLocality |
getLocality(Object key)
Returns the data locality characteristics of a given key.
|
Address |
getPrimaryLocation(Object key)
Returns the first Address containing the key.
|
boolean |
isAffectedByRehash(Object key)
Tests whether a given key is affected by a rehash that may be in progress.
|
boolean |
isJoinComplete()
Tests whether the current instance has completed joining the cluster
|
boolean |
isLocal(Object key)
Deprecated.
|
boolean |
isRehashInProgress()
Tests whether a rehash is in progress
|
List<Address> |
locate(Object key)
Locates a key in a cluster.
|
Map<Object,List<Address>> |
locateAll(Collection<Object> keys)
Locates a list of keys in a cluster.
|
Map<Object,List<Address>> |
locateAll(Collection<Object> keys,
int numOwners)
Same as
locateAll(java.util.Collection) , but the list of addresses only contains numOwners owners. |
InternalCacheEntry |
retrieveFromRemoteSource(Object key,
InvocationContext ctx,
boolean acquireRemoteLock)
Retrieves a cache entry from a remote source.
|
ConsistentHash |
setConsistentHash(ConsistentHash consistentHash)
Sets the consistent hash implementation in use.
|
void |
transformForL1(CacheEntry entry)
Transforms a cache entry so it is marked for L1 rather than the primary cache data structure.
|
@Deprecated boolean isLocal(Object key)
getLocality(Object)
instead.key
- key to testDataLocality getLocality(Object key)
key
- key to testList<Address> locate(Object key)
key
- key to testAddress getPrimaryLocation(Object key)
locate(Object)
key
- key to testMap<Object,List<Address>> locateAll(Collection<Object> keys)
locate(Object)
the returned addresses may not be owners
of the keys if a rehash happens to be in progress or is pending, so when querying these servers, invalid responses
should be checked for and the next address checked accordingly.keys
- list of keys to testMap<Object,List<Address>> locateAll(Collection<Object> keys, int numOwners)
locateAll(java.util.Collection)
, but the list of addresses only contains numOwners owners.void transformForL1(CacheEntry entry)
entry
- entry to transformInternalCacheEntry retrieveFromRemoteSource(Object key, InvocationContext ctx, boolean acquireRemoteLock) throws Exception
ClusteredGetCommand
and some form of quorum of responses if the responses returned are inconsistent - often the case if there is a
rehash in progress, involving nodes that the key maps to.key
- key to look upException
ConsistentHash getConsistentHash()
DefaultConsistentHash
.ConsistentHash setConsistentHash(ConsistentHash consistentHash)
consistentHash
- consistent hash to set toboolean isAffectedByRehash(Object key)
key
- key to testboolean isRehashInProgress()
boolean isJoinComplete()
Collection<Address> getAffectedNodes(Collection<Object> affectedKeys)
locateAll(java.util.Collection)
and then combine the result addresses.affectedKeys
- keys to locateCopyright © 2012 JBoss by Red Hat. All Rights Reserved.