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_e_origin_input | qdb_e_severity_unrecoverable | 0xFFFF, qdb_e_alias_not_found = qdb_e_origin_operation | qdb_e_severity_warning | 0x0008, qdb_e_alias_already_exists = qdb_e_origin_operation | qdb_e_severity_warning | 0x0009,
  qdb_e_out_of_bounds = qdb_e_origin_input | qdb_e_severity_warning | 0x0019, qdb_e_skipped = qdb_e_origin_operation | qdb_e_severity_warning | 0x0021, qdb_e_incompatible_type = qdb_e_origin_operation | qdb_e_severity_warning | 0x0022, qdb_e_container_empty = qdb_e_origin_operation | qdb_e_severity_warning | 0x0023,
  qdb_e_container_full = qdb_e_origin_operation | qdb_e_severity_warning | 0x0024, qdb_e_element_not_found = qdb_e_origin_operation | qdb_e_severity_info | 0x0025, qdb_e_element_already_exists = qdb_e_origin_operation | qdb_e_severity_info | 0x0026, qdb_e_overflow = qdb_e_origin_operation | qdb_e_severity_warning | 0x0027,
  qdb_e_underflow = qdb_e_origin_operation | qdb_e_severity_warning | 0x0028, qdb_e_tag_already_set = qdb_e_origin_operation | qdb_e_severity_info | 0x0029, qdb_e_tag_not_set = qdb_e_origin_operation | qdb_e_severity_info | 0x002A, qdb_e_timeout = qdb_e_origin_connection | qdb_e_severity_error | 0x000A,
  qdb_e_connection_refused = qdb_e_origin_connection | qdb_e_severity_unrecoverable | 0x000E, qdb_e_connection_reset = qdb_e_origin_connection | qdb_e_severity_error | 0x000F, qdb_e_unstable_cluster = qdb_e_origin_connection | qdb_e_severity_error | 0x0012, qdb_e_try_again = qdb_e_origin_connection | qdb_e_severity_error | 0x0017,
  qdb_e_conflict = qdb_e_origin_operation | qdb_e_severity_error | 0x001A, qdb_e_not_connected = qdb_e_origin_connection | qdb_e_severity_error | 0x001B, qdb_e_resource_locked = qdb_e_origin_operation | qdb_e_severity_error | 0x002D, qdb_e_system_remote = qdb_e_origin_system_remote | qdb_e_severity_unrecoverable | 0x0001,
  qdb_e_system_local = qdb_e_origin_system_local | qdb_e_severity_unrecoverable | 0x0001, qdb_e_internal_remote = qdb_e_origin_system_remote | qdb_e_severity_unrecoverable | 0x0002, qdb_e_internal_local = qdb_e_origin_system_local | qdb_e_severity_unrecoverable | 0x0002, qdb_e_no_memory_remote = qdb_e_origin_system_remote | qdb_e_severity_unrecoverable | 0x0003,
  qdb_e_no_memory_local = qdb_e_origin_system_local | qdb_e_severity_unrecoverable | 0x0003, qdb_e_invalid_protocol = qdb_e_origin_protocol | qdb_e_severity_unrecoverable | 0x0004, qdb_e_host_not_found = qdb_e_origin_connection | qdb_e_severity_error | 0x0005, qdb_e_buffer_too_small = qdb_e_origin_input | qdb_e_severity_warning | 0x000B,
  qdb_e_not_implemented = qdb_e_origin_system_remote | qdb_e_severity_unrecoverable | 0x0011, qdb_e_invalid_version = qdb_e_origin_protocol | qdb_e_severity_unrecoverable | 0x0016, qdb_e_invalid_argument = qdb_e_origin_input | qdb_e_severity_error | 0x0018, qdb_e_invalid_handle = qdb_e_origin_input | qdb_e_severity_error | 0x001C,
  qdb_e_reserved_alias = qdb_e_origin_input | qdb_e_severity_error | 0x001D, qdb_e_unmatched_content = qdb_e_origin_operation | qdb_e_severity_info | 0x001E, qdb_e_invalid_iterator = qdb_e_origin_input | qdb_e_severity_error | 0x001F, qdb_e_entry_too_large = qdb_e_origin_input | qdb_e_severity_error | 0x002B,
  qdb_e_transaction_partial_failure = qdb_e_origin_operation | qdb_e_severity_error | 0x002C, qdb_e_operation_disabled = qdb_e_origin_operation | qdb_e_severity_error | 0x002E, qdb_e_operation_not_permitted = qdb_e_origin_operation | qdb_e_severity_error | 0x002F, qdb_e_iterator_end = qdb_e_origin_operation | qdb_e_severity_info | 0x0030,
  qdb_e_invalid_reply = qdb_e_origin_protocol | qdb_e_severity_unrecoverable | 0x0031, qdb_e_ok_created = qdb_e_origin_operation | qdb_e_severity_info | 0x0032, qdb_e_no_space_left = qdb_e_origin_system_remote | qdb_e_severity_unrecoverable | 0x0033, qdb_e_quota_exceeded = qdb_e_origin_system_remote | qdb_e_severity_unrecoverable | 0x0034,
  qdb_e_alias_too_long = qdb_e_origin_input | qdb_e_severity_error | 0x0035, qdb_e_clock_skew = qdb_e_origin_system_remote | qdb_e_severity_error | 0x0036, qdb_e_access_denied = qdb_e_origin_operation | qdb_e_severity_error | 0x0037, qdb_e_login_failed = qdb_e_origin_system_remote | qdb_e_severity_error | 0x0038,
  qdb_e_column_not_found = qdb_e_origin_operation | qdb_e_severity_warning | 0x0039, qdb_e_query_too_complex = qdb_e_origin_operation | qdb_e_severity_error | 0x0040, qdb_e_invalid_crypto_key = qdb_e_origin_input | qdb_e_severity_error | 0x0041, qdb_e_invalid_query = qdb_e_origin_input | qdb_e_severity_error | 0x0042,
  qdb_e_invalid_regex = qdb_e_origin_input | qdb_e_severity_error | 0x0043, qdb_e_unknown_user = qdb_e_origin_input | qdb_e_severity_error | 0x0044, qdb_e_interrupted = qdb_e_origin_system_remote | qdb_e_severity_error | 0x0045, qdb_e_network_inbuf_too_small = qdb_e_origin_system_local | qdb_e_severity_error | 0x0046,
  qdb_e_network_error = qdb_e_origin_connection | qdb_e_severity_error | 0x0047, qdb_e_data_corruption = qdb_e_origin_system_remote | qdb_e_severity_unrecoverable | 0x0048
}
 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.