Package com.aerospike.client.cluster
Class Node
java.lang.Object
com.aerospike.client.cluster.Node
- All Implemented Interfaces:
Closeable,AutoCloseable
Server node representation. This class manages server node connections and health status.
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final intstatic final intstatic final intstatic final intNumber of partitions for each namespace. -
Constructor Summary
ConstructorsConstructorDescriptionNode(com.aerospike.client.cluster.Cluster cluster, com.aerospike.client.cluster.NodeValidator nv) Initialize server node with connection parameters. -
Method Summary
Modifier and TypeMethodDescriptionvoidaddError()Increment transaction error count.final voidaddLatency(LatencyType type, long elapsed) Add elapsed time in nanoseconds to latency buckets corresponding to latency type.voidIncrement transaction timeout count.final voidbalanceAsyncConnections(EventLoop eventLoop) final voidclose()Close all socket connections.final voidcloseAsyncConnection(com.aerospike.client.async.AsyncConnection conn, int index) Close async connection on error.final voidcloseAsyncConnections(int index) Close asynchronous connections.final voidcloseAsyncIdleConnection(com.aerospike.client.async.AsyncConnection conn, int index) Close async connection without incrementing error count.final voidcloseConnection(com.aerospike.client.cluster.Connection conn) Close pooled connection on error and decrement connection count.final voidcloseConnectionOnError(com.aerospike.client.cluster.Connection conn) Close any connection on error.final voidcloseConnections(AtomicInteger eventLoopCount, int index) Close all node socket connections from event loop.final voidcloseIdleConnection(com.aerospike.client.cluster.Connection conn) Close connection without incrementing error count.final voidClose synchronous connections.final voidconnectionOpened(int index) final voidfinal voiddecrAsyncConnection(int index) final voidenableMetrics(MetricsPolicy policy) final booleanfinal booleanfinal InetSocketAddressReturn node IP address.final com.aerospike.client.async.AsyncConnectiongetAsyncConnection(int index, ByteBuffer byteBuffer) final ConnectionStatsfinal Node.AsyncPoolgetAsyncPool(int index) final com.aerospike.client.cluster.ConnectiongetConnection(int timeoutMillis) Get a socket connection from connection pool to the server node.final com.aerospike.client.cluster.ConnectiongetConnection(int connectTimeout, int socketTimeout) Get a socket connection from connection pool to the server node.final com.aerospike.client.cluster.ConnectiongetConnection(com.aerospike.client.command.SyncCommand cmd, int connectTimeout, int socketTimeout, int timeoutDelay) Get a socket connection from connection pool to the server node.final ConnectionStatslongReturn transaction error count.final HostgetHost()Return server node IP address and port.final NodeMetricsfinal StringgetName()Return server node name.final intReturn current generation of partition maps.final intReturn current generation of cluster peers.final intReturn current generation of racks.final byte[]Return node session token.longReturn transaction timeout count.final booleanfinal inthashCode()final booleanfinal booleanfinal booleanReturn if this node has the same rack as the client for the given namespace.final voidfinal booleanisActive()Return whether node is currently active.final booleanputAsyncConnection(com.aerospike.client.async.AsyncConnection conn, int index) final voidputConnection(com.aerospike.client.cluster.Connection conn) Put connection back into connection pool.final voidrefresh(com.aerospike.client.cluster.Peers peers) Request current status from server node.final booleanreserveAsyncConnectionSlot(int index) final voidfinal voidfinal StringtoString()Does server support partition scans.final void
-
Field Details
-
PARTITIONS
public static final int PARTITIONSNumber of partitions for each namespace.- See Also:
-
HAS_PARTITION_SCAN
public static final int HAS_PARTITION_SCAN- See Also:
-
HAS_QUERY_SHOW
public static final int HAS_QUERY_SHOW- See Also:
-
HAS_BATCH_ANY
public static final int HAS_BATCH_ANY- See Also:
-
HAS_PARTITION_QUERY
public static final int HAS_PARTITION_QUERY- See Also:
-
-
Constructor Details
-
Node
public Node(com.aerospike.client.cluster.Cluster cluster, com.aerospike.client.cluster.NodeValidator nv) Initialize server node with connection parameters.- Parameters:
cluster- collection of active server nodesnv- connection parameters
-
-
Method Details
-
createMinConnections
public final void createMinConnections() -
refresh
public final void refresh(com.aerospike.client.cluster.Peers peers) Request current status from server node. -
signalLogin
public final void signalLogin() -
getConnection
public final com.aerospike.client.cluster.Connection getConnection(int timeoutMillis) Get a socket connection from connection pool to the server node. -
getConnection
public final com.aerospike.client.cluster.Connection getConnection(int connectTimeout, int socketTimeout) Get a socket connection from connection pool to the server node. -
getConnection
public final com.aerospike.client.cluster.Connection getConnection(com.aerospike.client.command.SyncCommand cmd, int connectTimeout, int socketTimeout, int timeoutDelay) Get a socket connection from connection pool to the server node. -
putConnection
public final void putConnection(com.aerospike.client.cluster.Connection conn) Put connection back into connection pool.- Parameters:
conn- socket connection
-
closeConnection
public final void closeConnection(com.aerospike.client.cluster.Connection conn) Close pooled connection on error and decrement connection count. -
closeConnectionOnError
public final void closeConnectionOnError(com.aerospike.client.cluster.Connection conn) Close any connection on error. -
closeIdleConnection
public final void closeIdleConnection(com.aerospike.client.cluster.Connection conn) Close connection without incrementing error count. -
getConnectionStats
-
getAsyncConnection
public final com.aerospike.client.async.AsyncConnection getAsyncConnection(int index, ByteBuffer byteBuffer) -
reserveAsyncConnectionSlot
public final boolean reserveAsyncConnectionSlot(int index) -
connectionOpened
public final void connectionOpened(int index) -
putAsyncConnection
public final boolean putAsyncConnection(com.aerospike.client.async.AsyncConnection conn, int index) -
closeAsyncConnection
public final void closeAsyncConnection(com.aerospike.client.async.AsyncConnection conn, int index) Close async connection on error. -
closeAsyncIdleConnection
public final void closeAsyncIdleConnection(com.aerospike.client.async.AsyncConnection conn, int index) Close async connection without incrementing error count. -
decrAsyncConnection
public final void decrAsyncConnection(int index) -
getAsyncPool
-
balanceAsyncConnections
-
getAsyncConnectionStats
-
enableMetrics
-
getMetrics
-
addLatency
Add elapsed time in nanoseconds to latency buckets corresponding to latency type. -
incrErrorRate
public final void incrErrorRate() -
resetErrorRate
public final void resetErrorRate() -
errorRateWithinLimit
public final boolean errorRateWithinLimit() -
validateErrorCount
public final void validateErrorCount() -
addError
public void addError()Increment transaction error count. If the error is retryable, multiple errors per transaction may occur. -
addTimeout
public void addTimeout()Increment transaction timeout count. If the timeout is retryable (ie socketTimeout), multiple timeouts per transaction may occur. -
getErrorCount
public long getErrorCount()Return transaction error count. The value is cumulative and not reset per metrics interval. -
getTimeoutCount
public long getTimeoutCount()Return transaction timeout count. The value is cumulative and not reset per metrics interval. -
getHost
Return server node IP address and port. -
isActive
public final boolean isActive()Return whether node is currently active. -
getName
Return server node name. -
getAddress
Return node IP address. -
getSessionToken
public final byte[] getSessionToken()Return node session token. -
getPeersGeneration
public final int getPeersGeneration()Return current generation of cluster peers. -
getPartitionGeneration
public final int getPartitionGeneration()Return current generation of partition maps. -
getRebalanceGeneration
public final int getRebalanceGeneration()Return current generation of racks. -
hasRack
Return if this node has the same rack as the client for the given namespace. -
hasQueryShow
public final boolean hasQueryShow() -
hasBatchAny
public final boolean hasBatchAny() -
hasPartitionQuery
public final boolean hasPartitionQuery() -
toString
Does server support partition scans. -
hashCode
public final int hashCode() -
equals
-
close
public final void close()Close all socket connections.- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable
-
closeConnections
Close all node socket connections from event loop. Must be called from event loop thread. -
closeAsyncConnections
public final void closeAsyncConnections(int index) Close asynchronous connections. Must be called from event loop thread. -
closeSyncConnections
public final void closeSyncConnections()Close synchronous connections.
-