Aerospike::Exceptions::InvalidNode: Invalid node on Ruby Aerospike Client

Hello,

We are using aerospike client library GitHub - aerospike/aerospike-client-ruby: Ruby client for the Aerospike database version v2.18.0 to communicate with AES cluster. We get a lot of Aerospike::Exceptions::InvalidNode: Invalid node errors when we do the batch_get request to AES. Below is the config for aes cluster:

service {

user root group root paxos-single-replica-limit 1 pidfile /var/run/aerospike/asd.pid service-threads 2 transaction-queues 2 transaction-threads-per-queue 3 proto-fd-max 30000 work-directory /opt/aerospike scan-threads 2 proto-fd-idle-ms 180000000 batch-index-threads 2 paxos-protocol v5 batch-max-requests 7000 } logging { console { context any critical } file /var/log/aerospike/aerospike.log { context any info } file { context any warning } } mod-lua { user-path /opt/aerospike/usr/udf/lua system-path /opt/aerospike/sys/udf/lua } network { service { address any port 3000 } heartbeat { mode mesh mesh-seed-address-port <ip address 1>3002 mesh-seed-address-port <ip address 2> 3002 mesh-seed-address-port <ip address 3> 3002 interval 150 timeout 100 port 3002 protocol v3 address 10.37.119.186 } fabric { port 3001 } info { port 3003 } } namespace configuration { replication-factor 2 high-water-memory-pct 66 evict-hist-buckets 40000 memory-size 10G default-ttl 0h storage-engine device { data-in-memory true file /opt/aerospike/data/configuration.dat filesize 15G } } namespace scoring { replication-factor 2 high-water-memory-pct 66 evict-hist-buckets 40000 memory-size 512M default-ttl 0h storage-engine device { data-in-memory true file /opt/aerospike/data/scoring.dat filesize 1G } }

Can someone help?

The “invalid node” error suggests the client does not know where a partition is which can happen because of connectivity issues or if the client has marked a node as inactive. Please take a look at this article for troubleshooting tips.