The Aerospike Knowledge Base has moved to https://support.aerospike.com. Content on https://discuss.aerospike.com is being migrated to either https://support.aerospike.com or https://docs.aerospike.com. Maintenance on articles stored in this repository ceased on December 31st 2022 and this article may be stale. If you have any questions, please do not hesitate to raise a case via https://support.aerospike.com.
Issue
I see the following exception on my Java Async Application when a node is un-reachable or during a networking event in the cluster:
com.aerospike.client.AerospikeException$Timeout: Client timeout: iteration=0 socket=30000 total=30000 maxRetries=2 node=null inDoubt=false
Solution
The timeout exception showing a ‘null’ node happens only in the following known scenarios:
-
Timeout occurred when the async command is in delay queue. Note that Delay queue is only used when EventPolicy.maxCommandsInProcess > 0.
-
Async command is submitted from a non-eventloop thread and the timeout occured before the command is executed in the eventloop thread.
Note: Timeout exceptions with a null node do not occur when using the Java Sync Client.
Subscribing to the Client Logging is recommended as it would show cluster tend errors (if any).
Reference
- Documentation on Java Async API
- Knowledge-Base article:
Keywords
ASYNC JAVA NULL NODE
Timestamp
June 2020