com.netflix.astyanax.connectionpool.impl
Class TokenAwareConnectionPoolImpl<CL>
java.lang.Object
com.netflix.astyanax.connectionpool.impl.AbstractHostPartitionConnectionPool<CL>
com.netflix.astyanax.connectionpool.impl.TokenAwareConnectionPoolImpl<CL>
- Type Parameters:
CL
-
- All Implemented Interfaces:
- ConnectionPool<CL>, SimpleHostConnectionPool.Listener<CL>
public class TokenAwareConnectionPoolImpl<CL>
- extends AbstractHostPartitionConnectionPool<CL>
Connection pool that partitions connections by the hosts which own the token
being operated on. When a token is not available or an operation is known
to span multiple tokens (such as a batch mutate or an index query) host pools
are picked using round robin.
This implementation takes an optimistic approach which is optimized for
a well functioning ring with all nodes up and keeps downed hosts in the
internal data structures.
- Author:
- elandau
Methods inherited from class com.netflix.astyanax.connectionpool.impl.AbstractHostPartitionConnectionPool |
addHost, executeWithFailover, getActivePools, getHostPool, hasHost, isHostUp, newHostConnectionPool, onHostDown, onHostUp, rebuildPartitions, removeHost, setHosts, shutdown, start |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
TokenAwareConnectionPoolImpl
public TokenAwareConnectionPoolImpl(ConnectionPoolConfiguration configuration,
ConnectionFactory<CL> factory,
ConnectionPoolMonitor monitor)
newExecuteWithFailover
public <R> ExecuteWithFailover<CL,R> newExecuteWithFailover(Operation<CL,R> op)
throws ConnectionException
- Description copied from class:
AbstractHostPartitionConnectionPool
- Return a new failover context. The context captures the connection pool state and implements
the necessary failover logic.
- Specified by:
newExecuteWithFailover
in class AbstractHostPartitionConnectionPool<CL>
- Returns:
-
- Throws:
ConnectionException
Copyright © 2012. All Rights Reserved.