|
quasardb C API
|
Data Structures | |
| struct | qdb_timespec_t |
| A structure representing an elapsed time since epoch (cross-platform equivalent of timespec structure) More... | |
| struct | qdb_remote_node_t |
| A structure representing the address of a quasardb node. More... | |
| struct | qdb_id_t |
| A cluster-wide unique identifier. More... | |
| struct | qdb_string_t |
| A structure representing a character string of the given length. More... | |
| struct | qdb_entry_metadata_t |
| A structure representing the metadata of an entry in the database. More... | |
| struct | qdb_compact_params_t |
| The optional parameters for a compact operation. More... | |
Macros | |
| #define | qdb_never_expires ((qdb_time_t)0u) |
| An arbitrary time value representing the "no expiration" time value. | |
| #define | qdb_preserve_expiration ((qdb_time_t)0xFFFFFFFFFFFFFFFFULL) |
| An arbitrary time value representing the "preserve existing
expiration" time value. | |
Typedefs | |
| typedef enum qdb_limits_t | qdb_limits_t |
| An enumeration of API limits. | |
Enumerations | |
| enum | qdb_limits_t { qdb_l_max_alias_length = 1024 , qdb_l_alias_max_length = qdb_l_max_alias_length , qdb_l_max_user_name_length = 120 , qdb_max_user_name_length = qdb_l_max_user_name_length } |
| An enumeration of API limits. More... | |
| enum | qdb_protocol_t { qdb_p_tcp = 0 } |
| enum | qdb_entry_type_t { qdb_entry_uninitialized = -1 , qdb_entry_blob = 0 , qdb_entry_integer = 1 , qdb_entry_hset = 2 , qdb_entry_tag = 3 , qdb_entry_deque = 4 , qdb_entry_stream = 5 , qdb_entry_ts = 6 , qdb_entry_double = 10 , qdb_entry_timestamp = 11 , qdb_entry_string = 12 , qdb_entry_internal_ts_double_bucket = 20 , qdb_entry_internal_ts_blob_bucket = 21 , qdb_entry_internal_ts_int64_bucket = 22 , qdb_entry_internal_ts_timestamp_bucket = 23 , qdb_entry_internal_ts_string_bucket = 24 , qdb_entry_internal_ts_double_bucket_index = 30 , qdb_entry_internal_ts_blob_bucket_index = 31 , qdb_entry_internal_ts_int64_bucket_index = 32 , qdb_entry_internal_ts_timestamp_bucket_index = 33 , qdb_entry_internal_ts_string_bucket_index = 34 , qdb_entry_internal_directory = 50 } |
| enum | qdb_compact_options_t { qdb_compact_full = 0 , qdb_compact_piecewise = 1 , qdb_compact_cf = 2 , qdb_compact_prefix = 3 } |
Functions | |
| QDB_API_LINKAGE const char * | qdb_version (void) |
| Returns a null-terminated string describing the API version. | |
| QDB_API_LINKAGE const char * | qdb_build (void) |
| Returns a null-terminated string describing the exact API build. | |
| QDB_API_LINKAGE qdb_error_t | qdb_open (qdb_handle_t *handle, qdb_protocol_t proto) |
| Creates a qdb_handle_t. No connection will be established. | |
| QDB_API_LINKAGE qdb_handle_t | qdb_open_tcp (void) |
| Creates a TCP/IP qdb_handle_t. No connection will be established. | |
| QDB_API_LINKAGE qdb_error_t | qdb_get_last_error (qdb_handle_t handle, qdb_error_t *error, qdb_string_t **message) |
| Describes the last error code returned from the given handle. | |
| QDB_API_LINKAGE qdb_error_t | qdb_connect (qdb_handle_t handle, const char *uri) |
| Binds the client instance to a quasardb cluster and connect to at least one node within. | |
| QDB_API_LINKAGE qdb_error_t | qdb_close (qdb_handle_t handle) |
| Closes the handle previously opened with qdb_open or qdb_open_tcp. | |
| QDB_API_LINKAGE qdb_error_t | qdb_copy_alloc_buffer (qdb_handle_t handle, const void *source_buffer, qdb_size_t source_buffer_size, void **dest_buffer) |
| Creates a clone of a buffer using API's high-performance memory allocator. | |
| QDB_API_LINKAGE qdb_error_t | qdb_alloc_buffer (qdb_handle_t handle, qdb_size_t buffer_size, void **dest_buffer) |
| Allocates a buffer managed by the Quasar API. | |
| QDB_API_LINKAGE void | qdb_release (qdb_handle_t handle, const void *buffer) |
| Releases an API-allocated buffer. | |
| QDB_API_LINKAGE qdb_error_t | qdb_remove (qdb_handle_t handle, const char *alias) |
| Removes an entry from the cluster, regardless of its type. | |
| QDB_API_LINKAGE qdb_error_t | qdb_expires_at (qdb_handle_t handle, const char *alias, qdb_time_t expiry_time) |
| Sets the absolute expiration time of an entry, if the type supports expiration. | |
| QDB_API_LINKAGE qdb_error_t | qdb_expires_from_now (qdb_handle_t handle, const char *alias, qdb_time_t expiry_delta) |
| Sets the expiration time of an entry, relative to the current time of the client, if the type supports expiration. | |
| QDB_API_LINKAGE qdb_error_t | qdb_get_expiry_time (qdb_handle_t handle, const char *alias, qdb_time_t *expiry_time) |
| Retrieves the absolute expiration time of the given entry. | |
| QDB_API_LINKAGE qdb_error_t | qdb_get_location (qdb_handle_t handle, const char *alias, qdb_remote_node_t *location) |
| Returns the primary node of an entry. | |
| QDB_API_LINKAGE qdb_error_t | qdb_get_type (qdb_handle_t handle, const char *alias, qdb_entry_type_t *entry_type) |
| Gets the type of an entry, if it exists. | |
| QDB_API_LINKAGE qdb_error_t | qdb_get_metadata (qdb_handle_t handle, const char *alias, qdb_entry_metadata_t *entry_metadata) |
| Gets the meta-information about an entry, if it exists. | |
| QDB_API_LINKAGE qdb_error_t | qdb_get_metadata_by_id (qdb_handle_t handle, const qdb_id_t *reference, qdb_entry_metadata_t *entry_metadata) |
| Gets the meta-information about an entry, if it exists. | |
| QDB_API_LINKAGE qdb_error_t | qdb_purge_all (qdb_handle_t handle, int timeout_ms) |
| Removes irremediably all data from all the nodes of the cluster. | |
| QDB_API_LINKAGE qdb_error_t | qdb_trim_all (qdb_handle_t handle, int pause_ms, int timeout_ms) |
| Trims all data on all the nodes of the cluster. | |
| QDB_API_LINKAGE qdb_error_t | qdb_trim_all_progress (qdb_handle_t handle, qdb_uint_t *run) |
| Get the trimming process progress. | |
| QDB_API_LINKAGE qdb_error_t | qdb_abort_trim_all (qdb_handle_t handle) |
| Abort the running trimming process. | |
| QDB_API_LINKAGE qdb_error_t | qdb_trim_entry (qdb_handle_t handle, const char *alias, qdb_uint_t *bytes_trimmed) |
| Trims specific key. | |
| QDB_API_LINKAGE qdb_error_t | qdb_cluster_compact (qdb_handle_t handle, const qdb_compact_params_t *params) |
| Compacts all data in the persistence layer on all the nodes of the cluster. | |
| QDB_API_LINKAGE qdb_error_t | qdb_cluster_get_compact_progress (qdb_handle_t handle, qdb_uint_t *run) |
| Get the compaction process progress. | |
| QDB_API_LINKAGE qdb_error_t | qdb_cluster_abort_compact (qdb_handle_t handle) |
| Abort the running compaction process. | |
| QDB_API_LINKAGE qdb_error_t | qdb_cluster_sync_with_master (qdb_handle_t handle) |
| For the read only cluster call the synchronization with the master DB. | |
| QDB_API_LINKAGE qdb_error_t | qdb_cluster_get_sync_with_master_progress (qdb_handle_t handle, qdb_uint_t *run) |
| For the read only cluster get the synchronization with the master DB process progress. | |
| QDB_API_LINKAGE qdb_error_t | qdb_purge_cache (qdb_handle_t handle, int timeout_ms) |
| Removes all cached data from all the nodes of the cluster. | |
| QDB_API_LINKAGE qdb_error_t | qdb_wait_for_stabilization (qdb_handle_t handle, int timeout_ms) |
| Wait for all nodes of the cluster to be stabilized. | |
| QDB_API_LINKAGE qdb_error_t | qdb_cluster_endpoints (qdb_handle_t handle, qdb_remote_node_t **endpoints, qdb_size_t *endpoints_count) |
| Retrieve a sorted array of endpoints. | |
| QDB_API_LINKAGE qdb_error_t | qdb_cluster_reload_user_config (qdb_handle_t handle) |
| Reload user configuration from file. | |
| enum qdb_entry_type_t |
| enum qdb_protocol_t |