quasardb C API
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
Macros | Typedefs | Enumerations
Error codes and error handling

Macros

#define QDB_ERROR_ORIGIN(x)   ((x) & (int)0xF0000000)
 Extracts the origin out of a qdb_error_t.
 
#define QDB_ERROR_SEVERITY(x)   ((x) & (int)0x0F000000)
 Extracts the severity out of a qdb_error_t.
 
#define QDB_SUCCESS(x)   (((x) == qdb_e_ok) || (QDB_ERROR_SEVERITY(x) == qdb_e_severity_info))
 True if and only if the qdb_error_t indicates a success.
 
#define QDB_FAILURE(x)   (!QDB_SUCCESS(x))
 True if and only if the qdb_error_t indicates a failure.
 

Typedefs

typedef enum qdb_error_origin_t qdb_error_origin_t
 The error origin.
 
typedef enum qdb_error_severity_t qdb_error_severity_t
 An error severity level.
 
typedef enum qdb_error_t qdb_error_t
 An error code indicating success or failure.
 
typedef qdb_error_t qdb_status_t
 An alias for qdb_error_t.
 

Enumerations

enum  qdb_error_origin_t
 The error origin.
 
enum  qdb_error_severity_t
 An error severity level.
 
enum  qdb_error_t {
  qdb_e_ok = 0, qdb_e_uninitialized = QDB_EC(qdb_e_origin_input , qdb_e_severity_unrecoverable, 0xFFFF), qdb_e_alias_not_found = QDB_EC(qdb_e_origin_operation , qdb_e_severity_warning , 0x0008), qdb_e_alias_already_exists = QDB_EC(qdb_e_origin_operation , qdb_e_severity_warning , 0x0009),
  qdb_e_out_of_bounds = QDB_EC(qdb_e_origin_input , qdb_e_severity_warning , 0x0019), qdb_e_skipped = QDB_EC(qdb_e_origin_operation , qdb_e_severity_warning , 0x0021), qdb_e_incompatible_type = QDB_EC(qdb_e_origin_operation , qdb_e_severity_warning , 0x0022), qdb_e_container_empty = QDB_EC(qdb_e_origin_operation , qdb_e_severity_warning , 0x0023),
  qdb_e_container_full = QDB_EC(qdb_e_origin_operation , qdb_e_severity_warning , 0x0024), qdb_e_element_not_found = QDB_EC(qdb_e_origin_operation , qdb_e_severity_info , 0x0025), qdb_e_element_already_exists = QDB_EC(qdb_e_origin_operation , qdb_e_severity_info , 0x0026), qdb_e_overflow = QDB_EC(qdb_e_origin_operation , qdb_e_severity_warning , 0x0027),
  qdb_e_underflow = QDB_EC(qdb_e_origin_operation , qdb_e_severity_warning , 0x0028), qdb_e_tag_already_set = QDB_EC(qdb_e_origin_operation , qdb_e_severity_info , 0x0029), qdb_e_tag_not_set = QDB_EC(qdb_e_origin_operation , qdb_e_severity_info , 0x002A), qdb_e_timeout = QDB_EC(qdb_e_origin_connection , qdb_e_severity_error , 0x000A),
  qdb_e_connection_refused = QDB_EC(qdb_e_origin_connection , qdb_e_severity_unrecoverable, 0x000E), qdb_e_connection_reset = QDB_EC(qdb_e_origin_connection , qdb_e_severity_error , 0x000F), qdb_e_unstable_cluster = QDB_EC(qdb_e_origin_connection , qdb_e_severity_error , 0x0012), qdb_e_try_again = QDB_EC(qdb_e_origin_connection , qdb_e_severity_error , 0x0017),
  qdb_e_conflict = QDB_EC(qdb_e_origin_operation , qdb_e_severity_error , 0x001A), qdb_e_not_connected = QDB_EC(qdb_e_origin_connection , qdb_e_severity_error , 0x001B), qdb_e_resource_locked = QDB_EC(qdb_e_origin_operation , qdb_e_severity_error , 0x002D), qdb_e_system_remote = QDB_EC(qdb_e_origin_system_remote, qdb_e_severity_unrecoverable, 0x0001),
  qdb_e_system_local = QDB_EC(qdb_e_origin_system_local , qdb_e_severity_unrecoverable, 0x0001), qdb_e_internal_remote = QDB_EC(qdb_e_origin_system_remote, qdb_e_severity_unrecoverable, 0x0002), qdb_e_internal_local = QDB_EC(qdb_e_origin_system_local , qdb_e_severity_unrecoverable, 0x0002), qdb_e_no_memory_remote = QDB_EC(qdb_e_origin_system_remote, qdb_e_severity_unrecoverable, 0x0003),
  qdb_e_no_memory_local = QDB_EC(qdb_e_origin_system_local , qdb_e_severity_unrecoverable, 0x0003), qdb_e_invalid_protocol = QDB_EC(qdb_e_origin_protocol , qdb_e_severity_unrecoverable, 0x0004), qdb_e_host_not_found = QDB_EC(qdb_e_origin_connection , qdb_e_severity_error , 0x0005), qdb_e_buffer_too_small = QDB_EC(qdb_e_origin_input , qdb_e_severity_warning , 0x000B),
  qdb_e_not_implemented = QDB_EC(qdb_e_origin_system_remote, qdb_e_severity_unrecoverable, 0x0011), qdb_e_invalid_version = QDB_EC(qdb_e_origin_protocol , qdb_e_severity_unrecoverable, 0x0016), qdb_e_invalid_argument = QDB_EC(qdb_e_origin_input , qdb_e_severity_error , 0x0018), qdb_e_invalid_handle = QDB_EC(qdb_e_origin_input , qdb_e_severity_error , 0x001C),
  qdb_e_reserved_alias = QDB_EC(qdb_e_origin_input , qdb_e_severity_error , 0x001D), qdb_e_unmatched_content = QDB_EC(qdb_e_origin_operation , qdb_e_severity_info , 0x001E), qdb_e_invalid_iterator = QDB_EC(qdb_e_origin_input , qdb_e_severity_error , 0x001F), qdb_e_entry_too_large = QDB_EC(qdb_e_origin_input , qdb_e_severity_error , 0x002B),
  qdb_e_transaction_partial_failure = QDB_EC(qdb_e_origin_operation , qdb_e_severity_error , 0x002C), qdb_e_operation_disabled = QDB_EC(qdb_e_origin_operation , qdb_e_severity_error , 0x002E), qdb_e_operation_not_permitted = QDB_EC(qdb_e_origin_operation , qdb_e_severity_error , 0x002F), qdb_e_iterator_end = QDB_EC(qdb_e_origin_operation , qdb_e_severity_info , 0x0030),
  qdb_e_invalid_reply = QDB_EC(qdb_e_origin_protocol , qdb_e_severity_unrecoverable, 0x0031), qdb_e_ok_created = QDB_EC(qdb_e_origin_operation , qdb_e_severity_info , 0x0032), qdb_e_no_space_left = QDB_EC(qdb_e_origin_system_remote, qdb_e_severity_unrecoverable, 0x0033), qdb_e_quota_exceeded = QDB_EC(qdb_e_origin_system_remote, qdb_e_severity_unrecoverable, 0x0034),
  qdb_e_alias_too_long = QDB_EC(qdb_e_origin_input , qdb_e_severity_error , 0x0035), qdb_e_clock_skew = QDB_EC(qdb_e_origin_system_remote, qdb_e_severity_error , 0x0036), qdb_e_access_denied = QDB_EC(qdb_e_origin_operation , qdb_e_severity_error , 0x0037), qdb_e_login_failed = QDB_EC(qdb_e_origin_system_remote, qdb_e_severity_error , 0x0038),
  qdb_e_column_not_found = QDB_EC(qdb_e_origin_operation , qdb_e_severity_warning , 0x0039), qdb_e_query_too_complex = QDB_EC(qdb_e_origin_operation , qdb_e_severity_error , 0x0040), qdb_e_invalid_crypto_key = QDB_EC(qdb_e_origin_input , qdb_e_severity_error , 0x0041), qdb_e_invalid_query = QDB_EC(qdb_e_origin_input , qdb_e_severity_error , 0x0042),
  qdb_e_invalid_regex = QDB_EC(qdb_e_origin_input , qdb_e_severity_error , 0x0043), qdb_e_unknown_user = QDB_EC(qdb_e_origin_input , qdb_e_severity_error , 0x0044), qdb_e_interrupted = QDB_EC(qdb_e_origin_system_remote, qdb_e_severity_error , 0x0045), qdb_e_network_inbuf_too_small = QDB_EC(qdb_e_origin_system_local , qdb_e_severity_error , 0x0046),
  qdb_e_network_error = QDB_EC(qdb_e_origin_connection , qdb_e_severity_error , 0x0047), qdb_e_data_corruption = QDB_EC(qdb_e_origin_system_remote, qdb_e_severity_unrecoverable, 0x0048), qdb_e_partial_failure = QDB_EC(qdb_e_origin_operation , qdb_e_severity_error , 0x0049), qdb_e_async_pipe_full = QDB_EC(qdb_e_origin_system_remote, qdb_e_severity_error , 0x004A)
}
 An error code indicating success or failure. More...
 

Detailed Description

Enumeration Type Documentation

An error code indicating success or failure.

Enumerator
qdb_e_ok 

Success.

qdb_e_uninitialized 

Uninitialized error.

qdb_e_alias_not_found 

Entry alias/key was not found.

qdb_e_alias_already_exists 

Entry alias/key already exists.

qdb_e_out_of_bounds 

Index out of bounds.

qdb_e_skipped 

Skipped operation. Used in batches and transactions.

qdb_e_incompatible_type 

Entry or column is incompatible with the operation.

qdb_e_container_empty 

Container is empty.

qdb_e_container_full 

Container is full.

qdb_e_element_not_found 

Element was not found.

qdb_e_element_already_exists 

Element already exists.

qdb_e_overflow 

Arithmetic operation overflows.

qdb_e_underflow 

Arithmetic operation underflows.

qdb_e_tag_already_set 

Tag is already set.

qdb_e_tag_not_set 

Tag is not set.

qdb_e_timeout 

Operation timed out.

qdb_e_connection_refused 

Connection was refused.

qdb_e_connection_reset 

Connection was reset.

qdb_e_unstable_cluster 

Cluster is unstable.

qdb_e_try_again 

Please retry.

qdb_e_conflict 

There is another ongoing conflicting operation.

qdb_e_not_connected 

Handle is not connected.

qdb_e_resource_locked 

Resource is locked.

qdb_e_system_remote 

System error on remote node (server-side). Please check errno or GetLastError() for actual error.

qdb_e_system_local 

System error on local system (client-side). Please check errno or GetLastError() for actual error.

qdb_e_internal_remote 

Internal error on remote node (server-side).

qdb_e_internal_local 

Internal error on local system (client-side).

qdb_e_no_memory_remote 

No memory on remote node (server-side).

qdb_e_no_memory_local 

No memory on local system (client-side).

qdb_e_invalid_protocol 

Protocol is invalid.

qdb_e_host_not_found 

Host was not found.

qdb_e_buffer_too_small 

Buffer is too small.

qdb_e_not_implemented 

Operation is not implemented.

qdb_e_invalid_version 

Version is invalid.

qdb_e_invalid_argument 

Argument is invalid.

qdb_e_invalid_handle 

Handle is invalid.

qdb_e_reserved_alias 

Alias/key is reserved.

qdb_e_unmatched_content 

Content did not match.

qdb_e_invalid_iterator 

Iterator is invalid.

qdb_e_entry_too_large 

Entry is too large.

qdb_e_transaction_partial_failure 

Transaction failed partially.

Warning
This may provoke failures until the transaction has not been rolled back.
See Also
Cluster configuration parameter global/cluster/max_transaction_duration.
qdb_e_operation_disabled 

Operation has not been enabled in cluster configuration.

qdb_e_operation_not_permitted 

Operation is not permitted.

qdb_e_iterator_end 

Iterator reached the end.

qdb_e_invalid_reply 

Cluster sent an invalid reply.

qdb_e_ok_created 

Success. A new entry has been created.

qdb_e_no_space_left 

No more space on disk.

qdb_e_quota_exceeded 

Disk space quota has been reached.

qdb_e_alias_too_long 

Alias is too long.

See Also
qdb_l_max_alias_length
qdb_e_clock_skew 

Cluster nodes have important clock differences.

qdb_e_access_denied 

Access is denied.

qdb_e_login_failed 

Login failed.

qdb_e_column_not_found 

Column was not found.

qdb_e_query_too_complex 

Query is too complex.

qdb_e_invalid_crypto_key 

Security key is invalid.

qdb_e_invalid_query 

Malformed query.

qdb_e_invalid_regex 

Malformed regex.

qdb_e_unknown_user 

Unknown user.

qdb_e_interrupted 

Task has been interrupted.

qdb_e_network_inbuf_too_small 

Client network buffer is too small.

qdb_e_network_error 

Generic network error.

qdb_e_data_corruption 

Corrupted data.

qdb_e_partial_failure 

query failed partially.

qdb_e_async_pipe_full 

the async pipeline is full