Skip to main content

Aerospike Database 7.2 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

Updates

Improvements and enhancements

  • The active-rack configuration allows one availability zone (AZ), represented by a distinct rack-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 15MiB
    • wmem-max (which comes from /proc/sys/net/core/wmem_max) must be greater than 5MiB
    • The asd-systemd-helper script 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 yes or no for boolean parameters. All boolean parameters must use true or false.

Configuration item changes

ItemActionNotes
active-rackaddedThe rack that owns all of the masters in AP and SC namespaces.
ship-versions-policyaddedStops XDR from skipping record versions.
ship-versions-intervaladdedRelevant only if ship-versions-policy is true. With value 0, every version is shipped.

Metrics changes

ItemActionDescription
early_tsvc_batch_sub_errorremoved
early_tsvc_udf_sub_errorremoved
early_tsvc_ops_sub_errorremoved
effective_active_rackaddedRoster’s current active-rack for SC namespaces.
fail_xdr_key_busyaddedCounts how many XDR key busy errors have occurred.
nsup_xdr_key_busyaddedCounts how many NSUP deletes (expirations and evictions) had to wait for a previous version to ship.

Info command updates

note
  • Make sure you are not passing invalid parameters as inputs are now checked more strictly. The reason for an info command failure is often articulated more clearly.
  • Most parameter check failures either result in error code 4 AS_ERR_PARAMETER or error code 20 AS_ERR_NAMESPACE - the latter only when parsing a namespace parameter.
ItemActionDescription
get-configmodifiedid parameter is now deprecated and namespace is accepted in its place.
set-configmodifiedid parameter is now deprecated and namespace is accepted in its place.
sindex-createmodifiedns parameter is now deprecated and namespace is accepted in its place.
sindex-deletemodifiedns parameter is now deprecated and namespace is accepted in its place.
sindex-existsmodifiedns parameter is now deprecated and namespace is accepted in its place.
sindex-listmodifiedns parameter is now deprecated and namespace is accepted in its place.
sindex-statmodifiedns parameter is now deprecated and namespace is accepted in its place.
xdr-dc-statemodifiedns parameter is now deprecated and namespace is accepted in its place.
xdr-get-filtermodifiedns parameter is now deprecated and namespace is accepted in its place.
get-config:context=xdr;dc=DC-NAME;modifiedns parameter is now deprecated and namespace is accepted in its place.
get-stats:context=xdr;dc=DC-NAME;modifiedns 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, and dump-wb-summary used to return an error response format.
  • histogram used to return error-this-is-a-message.
  • recluster used to return ERROR when the clustering layer responded with anything other than success or ignored.
  • tip and tip-clear used to return an error response format.

The following minor changes were also made to the info command cleanup:

  • sindex-create and sindex-delete now return ok instead of OK on success.
  • Fixed various error codes and error messages to be more appropriate and clear.

Server log changes

ItemActionNotes
special-errors: key-busy 123 ...enhancedNow reads special-errors: key-busy (123) (40) where the second number in the parentheses is the XDR key busy count.
early-fail:modifiedNow reads early-fail: demarshal 0 tsvc-client 1 tsvc-from-proxy 0 tsvc-from-proxy-batch-sub 0

Error code changes

ItemActionNotes
AS_ERR_XDR_KEY_BUSYaddedError 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:

  • Java client 8.1
  • Python client 15.0
  • C# client 7.2
  • C client 6.6
  • Go client 7.2
  • 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

IDDescription
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.

Known issues

See Database known issues reference.