Skip to main content

Config, Metrics, and Info Changes in Aerospike Database 6.0

· 6 min read
Ronen Botzer

Aerospike Database 6 is here, loaded with new developer features - partitioned queries, query pagination, batch anything and more. You can read a detailed overview in Aerospike Database 6: Partitioned Secondary Index Queries, Batch Anything, and JSON Document Models.

We have breaking changes in this 6.0 version, which we’ll dig into here. More information is in the release notes and the special upgrade instructions.

Configuration Parameters

The following configuration parameters have been renamed:

  • scan-max-done renamed to query-max-done.
  • scan-threads-limit renamed to query-threads-limit.
  • background-scan-max-rps renamed to background-query-max-rps.
  • single-scan-threads renamed to single-query-threads.

These config param pairs are equivalent. If you have any of these scan related ones in your configuration file, all you need to do is rename them.

The following configuration items have been removed:

  • query-threads
  • query-worker-threads
  • query-microbenchmark
  • query-batch-size
  • query-in-transaction-thread
  • query-long-q-max-size
  • query-priority
  • query-priority-sleep-us
  • query-rec-count-bound
  • query-req-in-query-thread
  • query-short-q-max-size
  • query-threshold
  • query-untracked-time-ms

All of the above are related to the server 5.x query subsystem. These do not have a meaning in server 6.0, so you just need to remove them.

Finally, batch-without-digest, which was defaulted to false in server 4.9 (2020-04-08) and deprecated in server 5.7 (2021-09-27), has been removed. Any clients that require server 4.9 or higher will be compatible with this change.

Stats

Due to the new unified query subsystem, several statistics have been renamed or removed.

Global Context

The following table shows changes to statistics related to the statistics info command.

Pre 6.0Aerospike 6.0
query_short_running- removed -
query_long_running- removed -
scans_activequeries_active

The queries_active stat is shared by both primary index (PI) queries (formerly known as scans) and secondary index (SI) queries.

Namespace Context

The following table shows changes to statistics related to the namespace info command.

Pre 6.0Aerospike 6.0
scan_proto_uncompressed_pct- removed -
scan_proto_compression_ratio- removed -
scan_basic_completepi_query_long_basic_complete
scan_basic_errorpi_query_long_basic_error
scan_basic_abortpi_query_long_basic_abort
pi_query_short_basic_complete
pi_query_short_basic_error
pi_query_short_basic_timeout
scan_aggr_completepi_query_aggr_complete
scan_aggr_errorpi_query_aggr_error
scan_aggr_abortpi_query_aggr_abort
scan_udf_bg_completepi_query_udf_bg_complete
scan_udf_bg_errorpi_query_udf_bg_error
scan_udf_bg_abortpi_query_udf_bg_abort
scan_ops_bg_completepi_query_ops_bg_complete
scan_ops_bg_errorpi_query_ops_bg_error
scan_ops_bg_abortpi_query_ops_bg_abort
query_reqs- removed -
query_fail- removed -
query_short_queue_full- removed -
query_long_queue_full- removed -
query_short_reqs- removed -
query_long_reqs- removed -
query_false_positives- removed -
query_basic_completesi_query_long_basic_complete
query_basic_errorsi_query_long_basic_error
query_basic_abortsi_query_long_basic_abort
query_basic_avg_rec_count- removed -
si_query_short_basic_complete
si_query_short_basic_error
si_query_short_basic_timeout
query_aggr_completesi_query_aggr_complete
query_aggr_errorsi_query_aggr_complete
query_aggr_abortsi_query_aggr_abort
query_udf_bg_completesi_query_udf_bg_complete
query_udf_bg_errorsi_query_udf_bg_error
query_udf_bg_abortsi_query_udf_bg_abort
query_ops_bg_completesi_query_ops_bg_complete
query_ops_bg_errorsi_query_ops_bg_error
query_ops_bg_abortsi_query_ops_bg_abort
query_aggr_avg_rec_count- removed -

Sindex Context

The following table shows changes to statistics related to the sindex info command.

Pre 6.0Aerospike 6.0
keys- removed -
nbtr_memory_used- removed -
ibtr_memory_used- removed -
memory_used
write_success- removed -
delete_success- removed -
write_error- removed -
delete_error- removed -
loadtimeload_time
query_basic_complete- removed -
query_basic_error- removed -
query_basic_abort- removed -
query_basic_avg_rec_count- removed -
histogram- removed -

Info Commands

The following info commands are typically used by tools such as asadm and asinfo.

Pre 6.0Aerospike 6.0
jobs
Deprecated in 5.7
job
The module 'scan' is removed, use 'query' for both PI and SI queries.
Scheduled to be removed in 6 months. Use query-show instead.
scan-show
Deprecated in 6.0

Output Changes:
module=scan
priority=0 only in scan-show
query-show
Applies to both PI and SI queries.

Output Changes:
module=query
net-io-time=0 only in query-show
scan-abort
Deprecated in 6.0
query-abort
Applies to both PI and SI queries.
scan-abort-all
Deprecated in 6.0
query-abort-all
Applies to both PI and SI queries.
latencies
New short PI query histograms
"{ns}-pi-query"
"{ns}-pi-query-rec-count"
latencies
Query histograms
"{ns}-query"
"{ns}-query-rec-count"
latencies
Short SI query histograms
"{ns}-si-query"
"{ns}-si-query-rec-count"
sindex-histogram- removed -

Logs

The following are log line changes.

Log Histograms

Added PI and SI query histogram log lines to the 'namespace' context.

Pre 6.0Aerospike 6.0
{ns}-pi-query
Only for short PI queries
{ns}-pi-query-rec-count
Only for short PI queries
{ns}-si-query
Only for short SI queries
{ns}-si-query-rec-count
Only for short SI queries

Scan Context

The different log lines in the 'scan' context have been removed in server 6.0.

Ticker

Ticker lines for query and scan have been replaced with SI query and PI query ones. The new ticker lines show separate ticker data for short and long queries.

Pre 6.0Aerospike 6.0
query: basic (4,0,0) aggr (0,0,0) udf-bg (0,0,0) ops-bg (0,0,0)si-query: short-basic (4,0,0) long-basic (0,0,0) aggr (0,0,0) udf-bg (0,0,0) ops-bg (0,0,0)
scan: basic (4,0,0) aggr (0,0,0) udf-bg (0,0,0) ops-bg (0,0,0)pi-query: short-basic (4,0,0) long-basic (0,0,0) aggr (0,0,0) udf-bg (0,0,0) ops-bg (0,0,0)

Audit Trail

An audit trail log line with action: scan will now show action: query.

Pre 6.0:

Sep 01 2021 18:37:56 GMT: INFO (audit): (security.c:7608) permitted | client: 127.0.0.1:51380 | authenticated user: user2 | action: scan | detail: rps:5,read-quota:10

Aerospike 6.0:

Sep 01 2021 18:37:56 GMT: INFO (audit): (security.c:7608) permitted | client: 127.0.0.1:51380 | authenticated user: user2 | action: query | detail: rps:5,read-quota:10

Error Codes

The following error codes have changed and may affect applications.

Pre 6.0 Error CodeAerospike 6.0 Error Code
210 AS_ERR_QUERY_USER_ABORT15 AS_ERR_QUERY_ABORT
Was named AS_ERR_SCAN_ABORT
211 AS_ERR_QUERY_QUEUE_FULL22 AS_ERR_FORBIDDEN
212 AS_ERR_QUERY_TIMEOUT9 AS_ERR_TIMEOUT
Only for short PI and SI queries.
213 AS_ERR_QUERY_CB- removed -
214 AS_ERR_QUERY_NET_IO- removed -
215 AS_ERR_QUERY_DUPLICATE4 AS_ERR_PARAMETER