Loading
Error codes
Overview
This page describes the error codes that are returned from both client and server. In general, error codes greater than 0 are server-generated errors, and error codes less than 0 are client-generated errors. There are some exceptions like AEROSPIKE_ERR_TIMEOUT (9), which is generated by both client and server.
Client errors
Here are the error code tables for some of the main client libraries:
Server errors
The server error codes range from 1 to 255.
The server error codes are roughly categorized as:
- 1-49 - basic server errors
- 50-99 - security specific errors
- 100-109 - UDF specific errors
- 150-159 - batch specific errors
- 160-169 - GEO specific errors
- 200-219 - secondary index specific errors
The server log typically provides additional detail on the error at hand.
Value | Define | Notes | New in Version |
---|---|---|---|
0 | AS_OK | No error. | |
1 | AS_ERR_UNKNOWN | Unknown server error. | |
2 | AS_ERR_NOT_FOUND | No record is found with the specified namespace/set/key combination. Verify that the correct namespace/set/key is passed in. | |
3 | AS_ERR_GENERATION | Attempt to modify a record with unexpected generation. This happens on a read-modify-write situation where concurrent write requests collide and only one wins. | |
4 | AS_ERR_PARAMETER | Illegal parameter sent from client. Verify that client parameters are supported by the current server version. | |
5 | AS_ERR_RECORD_EXISTS | For write requests which specify 'CREATE_ONLY', request fail because record already exists. | |
6 | AS_ERR_BIN_EXISTS | Create-only operation applied to a bin that already exists. | 4.6.0.2 |
7 | AS_ERR_CLUSTER_KEY_MISMATCH | On scan requests, the scan terminates because cluster is in migration. Only occurs when client requested 'fail_on_cluster_change' policy on scan. | |
8 | AS_ERR_OUT_OF_SPACE | Occurs when stop-writes is true (either memory - stop-writes-pct or indexes-memory-budget ). Can also occur if memory cannot be allocated anymore, but stop-writes should in general hit first. Namespace will no longer be able to accept write requests. | |
9 | AS_ERR_TIMEOUT | Request was not completed during the allocated time, thus aborted. | |
10 | AS_ERR_ALWAYS_FORBIDDEN | Write request is rejected because XDR configuration does not allow it. Only occurs when namespace configuration items allow-xdr-writes or allow-nonxdr-writes are false. | EE |
11 | AS_ERR_UNAVAILABLE | Partition unavailable (Strong Consistency mode). Will also be returned in AP mode when a transaction is received on an orphan node (a node that separated from a cluster) or, for versions prior to 4.5.2, during the initial balance for a very short time after a node joins a cluster. | |
12 | AS_ERR_INCOMPATIBLE_TYPE | Operation is not allowed due to data type or namespace configuration incompatibility. For example, append to a float data type, or insert a non-integer when namespace is configured as data-in-index. | |
13 | AS_ERR_RECORD_TOO_BIG | Attempt to write a record larger than the configured max-record-size . See Known Limitations | |
14 | AS_ERR_KEY_BUSY | Too many concurrent operations (> transaction-pending-limit) on the same record. | |
15 | AS_ERR_SCAN_ABORT | Scan aborted by user on server. | |
16 | AS_ERR_UNSUPPORTED_FEATURE | This feature currently is not supported. | |
17 | AS_ERR_BIN_NOT_FOUND | Update-only operation applied to a bin that does not exist. | 4.6.0.2 |
18 | AS_ERR_DEVICE_OVERLOAD | Write request is rejected because storage device is not keeping up. | |
19 | AS_ERR_KEY_MISMATCH | For update request on records which has key stored, the incoming key does not match the existing stored key. This indicates a RIPEMD160 key collision, and has never happened. | |
20 | AS_ERR_NAMESPACE | The passed in namespace does not exist on cluster, or no namespace parameter is passed in on request. | |
21 | AS_ERR_BIN_NAME | Bin name length greater than 14 characters, or maximum number of unique bin names are exceeded. | |
22 | AS_ERR_FORBIDDEN | Operation not allowed at this time.
| |
23 | AS_ERR_ELEMENT_NOT_FOUND | Target was not found for operations that requires a target to be found. | 3.7.0.1 |
24 | AS_ERR_ELEMENT_EXISTS | Target already exist for operations that requires the target to not exist. | 3.7.0.1 |
25 | AS_ERR_ENTERPRISE_ONLY | Attempting Enterprise functionality on Community build. | EE |
26 | AS_ERR_OP_NOT_APPLICABLE | Operation isn't able to be applied to the current contents of the bin. | 4.6.0.2 |
27 | AS_ERR_FILTERED_OUT | Filter expression indicated to not return this record. | 4.7.0.2 |
28 | AS_ERR_LOST_CONFLICT | Indicates that the client write lost to a conflicting write by XDR. This can happen when bin convergence is on and XDR wrote a later version of the record compared to the client write. | 5.4.0 |
32 | AS_ERR_XDR_KEY_BUSY | Occurs when a write must wait for a previous version to ship, and either the write would time out or there are already too many writes waiting. See ship-versions-policy . | 7.2.0 |
50 | AS_SEC_OK_LAST | End of security response. No error. | EE |
51 | AS_SEC_ERR_NOT_SUPPORTED | Security functionality not supported by connected server. | EE |
52 | AS_SEC_ERR_NOT_ENABLED | Security functionality not enabled by connected server. | EE |
53 | AS_SEC_ERR_SCHEME | Security scheme not supported. | EE |
54 | AS_SEC_ERR_COMMAND | Unrecognized security command. | EE |
55 | AS_SEC_ERR_FIELD | Field is not valid. | EE |
56 | AS_SEC_ERR_STATE | Security protocol not followed. | EE |
60 | AS_SEC_ERR_USER | No user supplied or unknown user. | EE |
61 | AS_SEC_ERR_USER_EXISTS | User already exists. | EE |
62 | AS_SEC_ERR_PASSWORD | Password does not exists or not recognized. | EE |
63 | AS_SEC_ERR_EXPIRED_PASSWORD | Expired password. | EE |
64 | AS_SEC_ERR_FORBIDDEN_PASSWORD | Forbidden password, such as a recently used password or one that does not meet requirements. | EE |
65 | AS_SEC_ERR_CREDENTIAL | Invalid credential or credential does not exist. | EE |
66 | AS_SEC_ERR_EXPIRED_SESSION | Expired session token. | EE 4.1.0.1 |
70 | AS_SEC_ERR_ROLE | No role(s) or unknown role(s). | EE |
71 | AS_SEC_ERR_ROLE_EXISTS | Role already exists. | EE |
72 | AS_SEC_ERR_PRIVILEGE | Privilege is invalid. | EE |
73 | AS_SEC_ERR_WHITELIST | Specified IP whitelist is invalid. | EE 4.6.0.2 |
74 | AS_SEC_ERR_QUOTAS_NOT_ENABLED | Quotas not enabled on the server. | EE 5.6 |
75 | AS_SEC_ERR_QUOTA | Invalid quota specified. | EE 5.6 |
80 | AS_SEC_ERR_NOT_AUTHENTICATED | User must be authenticated before performing database operations. | EE |
81 | AS_SEC_ERR_ROLE_VIOLATION | User does not possess the required role to perform the database operation. | EE |
82 | AS_SEC_ERR_NOT_WHITELISTED | Client IP address is not on the IP whitelist. | EE 4.6.0.2 |
83 | AS_SEC_ERR_QUOTA_EXCEEDED | Quota currently exceeded. | EE 5.6 |
90 | AS_SEC_ERR_LDAP_NOT_ENABLED | LDAP feature not enabled on server. | EE 4.1.0.1 |
91 | AS_SEC_ERR_LDAP_SETUP | Error in LDAP setup. | EE 4.1.0.1 |
92 | AS_SEC_ERR_LDAP_TLS_SETUP | Error in LDAP TLS setup. | EE 4.1.0.1 |
93 | AS_SEC_ERR_LDAP_AUTHENTICATION | Error authenticating LDAP user. | EE 4.1.0.1 |
94 | AS_SEC_ERR_LDAP_QUERY | Error querying LDAP server. | EE 4.1.0.1 |
100 | AS_ERR_UDF_EXECUTION | A User-Defined Function (UDF) failed to execute. | |
150 | AS_ERR_BATCH_DISABLED | Batch functionality has been disabled by configuring batch-index-thread to 0. | 3.6.0 |
152 | AS_ERR_BATCH_QUEUES_FULL | All batch queues are full. | 3.6.0 |
160 | AS_ERR_GEO_INVALID_GEOJSON | GeoJSON is malformed or not supported. | 3.7.0 |
200 | AS_ERR_SINDEX_FOUND | Secondary index already exists. | |
201 | AS_ERR_SINDEX_NOT_FOUND | Secondary index does not exist. | |
202 | AS_ERR_SINDEX_OOM | Secondary index memory space exceeded. | |
203 | AS_ERR_SINDEX_NOT_READABLE | Secondary index not available for query. Occurs when indexing creation has not finished. | |
204 | AS_ERR_SINDEX_GENERIC | Generic secondary index error. | |
205 | AS_ERR_SINDEX_NAME | Index name maximum length exceeded. | |
206 | AS_ERR_SINDEX_MAX_COUNT | Maximum number of indices exceeded. | |
210 | AS_ERR_QUERY_USER_ABORT | Secondary index query aborted. | |
211 | AS_ERR_QUERY_QUEUE_FULL | Secondary index queue full. | |
212 | AS_ERR_QUERY_TIMEOUT | Secondary index query timed out on server. | |
213 | AS_ERR_QUERY_CB | Generic query error. | |
214 | AS_ERR_QUERY_NET_IO | Generic query error. Query is aborted. | |
215 | AS_ERR_QUERY_DUPLICATE | Internal error. |