Skip to main content

Client Matrix

Full client/server feature compatibility

The following matrix shows the minimal version of each client required for full feature compatibility with the given server version.

Aerospike server version6.
Java client version6.
Python client version11.
Go client version6.
C# client version6.
C client version6.
Node.js client version5.

Minimum usable client versions

The following matrix shows the minimal client version that ensures non-breaking operation against the given server version. Applications using older client versions may still work, if they do not use developer API functionality affected by the breaking changes specified below.

Aerospike server version6.
Java client version6.0.0 (5.1.6)6.0.0 (5.0.1)6.0.0 (5.0.1)6.0.0 (5.0.1)
Python client version7.0.0 (6.1.0)7.0.0 (6.0.0)7.0.0 (6.0.0)7.0.0 (6.0.0)
Go client version6.0.0 (5.4.0)6.0.0 (4.0.0)6.0.0 (4.0.0)6.0.0 (4.0.0)
C# client version5.0.0 (4.2.2)5.0.0 (4.0.0)5.0.0 (4.0.0)5.0.0 (4.0.0)
C client version6.0.0 (5.2.3)6.0.0 (5.0.0)6.0.0 (5.0.0)6.0.0 (5.0.0)
Node.js client version5.0.0 (4.0.0)5.0.0 (4.0.0)5.0.0 (4.0.0)5.0.0 (4.0.0)
Ruby client version2.

Aerospike server version 5.2 introduced filter expressions as an upgrade to the predicate expressions query language. The predicate expression system was supported until server version 6.0, when it was removed.

In the "Minimum usable client versions" chart, the client version number in parentheses is usable with the corresponding server version as long as the application has migrated to using filter expressions (using a client version that supports both filter and predicate expressions). Otherwise, the higher-numbered client version ensures predicate expressions cannot be used with server versions that don't support them.

Major server changes

Server versionBreaking change the jobs: info command. predicate expressions (PredExp). scan policies percent, failOnClusterChange, and priority.
4.9.0Client applications must support the new style truncate command, and the batch-index protocol for batch operations. support for batch-direct. suport for set-delete.

Client/Server Features

The following table shows the feature compatibility of different language clients. See the feature guide for more information.

Batch Transactions⁴
Batch Writes
Bitwise Operations
Boolean Data Type
Client-Server Compression
Context Path Creation
HyperLogLog Data Type
PI Query (Scan)
SI Query
Query Partitions
Query Pagination
Operation Expressions⁸
Geospatial Query
Background Query Operation
Filter Expressions on Operations⁸
Filter Expressions on Queries⁸
Record UDF
Stream UDF
PKI Authentication✳️⁷
Load Balancer as Seed Node
Strong Consistency
Rack Aware Reads
1 Minimum JDK version is 8.
2 C client supports libev, libuv, and libevent asynchronous frameworks.
4 Refers to a transaction of read operations (`operate`) run in a batch against multiple keys.
5 Node.js client supports TLS on Linux only.
6 Node.js has RBAC support for connections to EE clusters, but not the management of users and roles.
7 REST has TLS, IPv6 and PKI authentication between the gateway and the EE cluster, but not for calls to the gateway itself.
8 Aerospike Filter Expressions were added in Aerospike Database 5.2; Operation Expressions were added in Aerospike Database 5.6.
9 Minimum JDK version is 17.