Aerospike Database 7.2.0 Release Notes
October 7, 2024 | Download
New in this version
This version implements a variety of new features and improvements to enhance performance, usability, and reliability.
New features
- XDR version shipping controls: Database 7.2.0 introduces a dynamically configurable mechanism to control how XDR ships versions of modified records, through two new configuration parameters:
ship-versions-policyandship-versions-interval - Active rack - with the
active-racknamespace configuration parameter, you can designate a particularrack-idto hold all master partition copies. See Designate an active rack. - See the detailed complete list of all new features.
Updates
- Aerospike Tools 11.1.0.
- See Platform support and compatibility for all currently supported platforms.
Improvements and enhancements
- The
active-rackconfiguration allows one availability zone (AZ), represented by a distinctrack-id, to own all partition masters. - When quiescing nodes in AP namespaces where the replication factor (RF) is greater than or equal to the number of nodes in the subcluster, the effective RF is automatically decremented so that the quiesced node gives up partition ownership (becomes a non-replica), equivalent to the node leaving the cluster.
- New best practice checks at startup:
rmem-max(which comes from /proc/sys/net/core/rmem_max) must be greater than 15MiBwmem-max(which comes from /proc/sys/net/core/wmem_max) must be greater than 5MiB- The
asd-systemd-helperscript used to set rmem_max and wmem_max, and also potentially raised shmmax to 1GiB (less useful now that data may also use shmem). This script has been removed.
Breaking changes
- Removed support for using
yesornofor boolean parameters. All boolean parameters must usetrueorfalse.- Affects the
ignore-migrationsfield in thecluster-stablecommand.
- Affects the
Configuration item changes
| Item | Action | Notes |
|---|---|---|
active-rack | added | The rack that owns all of the masters in AP and SC namespaces. |
ship-versions-policy | added | Stops XDR from skipping record versions. |
ship-versions-interval | added | Relevant only if ship-versions-policy is true. With value 0, every version is shipped. |
Metrics changes
| Item | Action | Description |
|---|---|---|
early_tsvc_batch_sub_error | removed | |
early_tsvc_udf_sub_error | removed | |
early_tsvc_ops_sub_error | removed | |
effective_active_rack | added | Roster’s current active-rack for SC namespaces. |
fail_xdr_key_busy | added | Counts how many XDR key busy errors have occurred. |
nsup_xdr_key_busy | added | Counts how many NSUP deletes (expirations and evictions) had to wait for a previous version to ship. |
Info command updates
| Item | Action | Description |
|---|---|---|
get-config | modified | id parameter is now deprecated and namespace is accepted in its place. |
set-config | modified | id parameter is now deprecated and namespace is accepted in its place. |
sindex-create | modified | ns parameter is now deprecated and namespace is accepted in its place. |
sindex-delete | modified | ns parameter is now deprecated and namespace is accepted in its place. |
sindex-exists | modified | ns parameter is now deprecated and namespace is accepted in its place. |
sindex-list | modified | ns parameter is now deprecated and namespace is accepted in its place. |
sindex-stat | modified | ns parameter is now deprecated and namespace is accepted in its place. |
xdr-dc-state | modified | ns parameter is now deprecated and namespace is accepted in its place. |
xdr-get-filter | modified | ns parameter is now deprecated and namespace is accepted in its place. |
get-config:context=xdr;dc=DC-NAME; | modified | ns parameter is now deprecated and namespace is accepted in its place. |
get-stats:context=xdr;dc=DC-NAME; | modified | ns parameter is now deprecated and namespace is accepted in its place. |
Error responses to info commands have been standardized to the format ERROR:<code>:<msg>
dump-cluster,dump-fabric,dump-hb,dump-hlc,dump-migrates, anddump-wb-summaryused to return anerrorresponse format.histogramused to returnerror-this-is-a-message.reclusterused to returnERRORwhen the clustering layer responded with anything other than success or ignored.tipandtip-clearused to return anerrorresponse format.
The following minor changes were also made to the info command cleanup:
sindex-createandsindex-deletenow returnokinstead ofOKon success.- Fixed various error codes and error messages to be more appropriate and clear.
Server log changes
| Item | Action | Notes |
|---|---|---|
special-errors: key-busy 123 … | enhanced | Now reads special-errors: key-busy (1234, 40) where the second number in the parentheses is the XDR key busy count. |
early-fail: | modified | Now reads early-fail: demarshal 0 tsvc-client 1 tsvc-from-proxy 0 tsvc-from-proxy-batch-sub 0 |
Error code changes
| Item | Action | Notes |
|---|---|---|
| AS_ERR_XDR_KEY_BUSY | added | Error code 32. Occurs when a write must wait on a previous version to ship and either the write times out or there are too many writes waiting. |
Tools changes
Changes in Tools 11.1.0
See Tools 11.1.0 Release Notes.
Client/server feature compatibility
For a complete list of client features and the Aerospike Database versions that support them, see the Client Matrix.
Minimum compatible client versions
For full feature access in Database 7.2.0:
- Java client 8.1.0
- Python client 15.0
- C# client 7.2.0
- C client 6.6.0
- Go client 7.2.0
- Node.js client 5.12
- PHP 1.0
Ecosystem compatibility
Compatible connector versions
- Trino connector 1.7 or later
- Spark connector 3.2.2 or later
Prerequisites and notes
For upgrade instructions, see Upgrade or Repair Server.
Complete list of changes
| ID | Description |
|---|---|
| AER-6749 | (BALANCE) For AP namespaces, exclude quiesced nodes when calculating effective replication factor. |
| AER-6753 | (DEPLOYMENT) Added some new best practices and removed asd-systemd-helper. |
| AER-6754 | (BALANCE) Added namespace context configuration item active-rack to specify a rack to own all partition masters. |
| AER-6762 | (XDR) Added configuration to restrict or prevent skipping record versions when shipping. |
| AER-6763 | (STATS) Removed some meaningless stats, and improved some cluster related logging. |
| AER-6764 | (INFO) Standardized error responses to info commands. |
Product lifecycle updates
Aerospike provides Maintenance and Support for 2 years (24 months) from its generally available (GA) release. See Platform support for details.