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 toquery-max-done
.scan-threads-limit
renamed toquery-threads-limit
.background-scan-max-rps
renamed tobackground-query-max-rps
.single-scan-threads
renamed tosingle-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.0 | Aerospike 6.0 |
---|---|
query_short_running | - removed - |
query_long_running | - removed - |
scans_active | queries_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.0 | Aerospike 6.0 |
---|---|
scan_proto_uncompressed_pct | - removed - |
scan_proto_compression_ratio | - removed - |
scan_basic_complete | pi_query_long_basic_complete |
scan_basic_error | pi_query_long_basic_error |
scan_basic_abort | pi_query_long_basic_abort |
pi_query_short_basic_complete | |
pi_query_short_basic_error | |
pi_query_short_basic_timeout | |
scan_aggr_complete | pi_query_aggr_complete |
scan_aggr_error | pi_query_aggr_error |
scan_aggr_abort | pi_query_aggr_abort |
scan_udf_bg_complete | pi_query_udf_bg_complete |
scan_udf_bg_error | pi_query_udf_bg_error |
scan_udf_bg_abort | pi_query_udf_bg_abort |
scan_ops_bg_complete | pi_query_ops_bg_complete |
scan_ops_bg_error | pi_query_ops_bg_error |
scan_ops_bg_abort | pi_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_complete | si_query_long_basic_complete |
query_basic_error | si_query_long_basic_error |
query_basic_abort | si_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_complete | si_query_aggr_complete |
query_aggr_error | si_query_aggr_complete |
query_aggr_abort | si_query_aggr_abort |
query_udf_bg_complete | si_query_udf_bg_complete |
query_udf_bg_error | si_query_udf_bg_error |
query_udf_bg_abort | si_query_udf_bg_abort |
query_ops_bg_complete | si_query_ops_bg_complete |
query_ops_bg_error | si_query_ops_bg_error |
query_ops_bg_abort | si_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.0 | Aerospike 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 - |
loadtime | load_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.0 | Aerospike 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.0 | Aerospike 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.0 | Aerospike 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 Code | Aerospike 6.0 Error Code |
---|---|
210 AS_ERR_QUERY_USER_ABORT | 15 AS_ERR_QUERY_ABORT Was named AS_ERR_SCAN_ABORT |
211 AS_ERR_QUERY_QUEUE_FULL | 22 AS_ERR_FORBIDDEN |
212 AS_ERR_QUERY_TIMEOUT | 9 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_DUPLICATE | 4 AS_ERR_PARAMETER |