Aerospike Java client not fetching data from all nodes


We have 2 node cluster. Based on the documentation, we need to provide IP of only single node to connect to the cluster. Details of other nodes should be fetched by the seed node.

In our case it works fine for inserts and but fetches only partial data for selects. We are using Java Client. And we are fetching all records based on Namespace and Set. Issue also occurs for ScanAll.

In case we provide both IPs to Java client Select works fine.

Aerospike Version: C- Aerospike Java Client: 4.4.0

seems like an external vs internal ip address issue. check access-address configuration setting of the network context, service sub-context.

1 Like

Appreciate your reply.

Below is our config.

service { address any access-address Internal_IP
alternate-access-address External_IP port 3000 }

Do you see any issues here?

depends where your client machine is. Is it in internal ip access range or is it accessing the servers from outside via the external ip?

It is accessing from outside via external IP.

Switch your access-address and alternate-access-address entries and everything should work.

OR – Alternatively, in your client application, set use Alternate services to true … look at the specific client api connection policy settings.

Aerospike seed node - the first node you connect to - sends access-address ip address of all other nodes by default to client unless client says - hey - send me the alternate-access-address of each node of the cluster. i.e. sets connection policy param use alternate services to true.

Thanks. Will try the solution.

© 2015 Copyright Aerospike, Inc. | All rights reserved. Creators of the Aerospike Database.