quasardb C API
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
Data Structures | Typedefs | Enumerations | Functions
direct.h File Reference
#include "client.h"

Data Structures

struct  qdb_backup_options_t
 Backup additional parameters. More...
 
struct  qdb_backup_s3_options_t
 Backup S3 additional parameters. More...
 
struct  qdb_backup_progress_t
 Backup progress details. More...
 

Typedefs

typedef struct
qdb_direct_handle_internal * 
qdb_direct_handle_t
 An opaque handle to internal API-allocated structures needed for maintaining a direct connection to a cluster.
 
typedef enum qdb_backup_flags_t qdb_backup_flags_t
 Backup modification flags.
 

Enumerations

enum  qdb_backup_flags_t { qdb_backup_checkpoint = 1, qdb_backup_checkpoint_trim, qdb_backup_full }
 Backup modification flags. More...
 

Functions

QDB_API_LINKAGE qdb_direct_handle_t qdb_direct_connect (qdb_handle_t handle, const char *uri)
 Opens a direct connection to a node for use with the direct API. More...
 
QDB_API_LINKAGE void qdb_direct_close (qdb_direct_handle_t handle)
 Close a direct handle initially opened with qdb_direct_connect. More...
 
QDB_API_LINKAGE qdb_error_t qdb_direct_blob_get (qdb_direct_handle_t handle, const char *alias, const void **content, qdb_size_t *content_length)
 Retrieves an entry's content from a quasardb node's local storage. More...
 
QDB_API_LINKAGE qdb_error_t qdb_direct_blob_put (qdb_direct_handle_t handle, const char *alias, const void *content, qdb_size_t content_length, qdb_time_t expiry_time)
 Creates a new entry and sets its content to the provided blob. More...
 
QDB_API_LINKAGE qdb_error_t qdb_direct_blob_update (qdb_direct_handle_t handle, const char *alias, const void *content, qdb_size_t content_length, qdb_time_t expiry_time)
 Creates or updates an entry and sets its content to the provided blob. More...
 
QDB_API_LINKAGE qdb_error_t qdb_direct_remove (qdb_direct_handle_t handle, const char *alias)
 Removes an entry from the local node's storage, regardless of its type. More...
 
QDB_API_LINKAGE qdb_error_t qdb_direct_int_put (qdb_direct_handle_t handle, const char *alias, qdb_int_t integer, qdb_time_t expiry_time)
 Creates a new signed 64-bit integer. More...
 
QDB_API_LINKAGE qdb_error_t qdb_direct_int_update (qdb_direct_handle_t handle, const char *alias, qdb_int_t integer, qdb_time_t expiry_time)
 Creates or updates a signed 64-bit integer. More...
 
QDB_API_LINKAGE qdb_error_t qdb_direct_int_get (qdb_direct_handle_t handle, const char *alias, qdb_int_t *integer)
 Retrieves the value of a signed 64-bit integer. More...
 
QDB_API_LINKAGE qdb_error_t qdb_direct_int_add (qdb_direct_handle_t handle, const char *alias, qdb_int_t addend, qdb_int_t *result)
 Atomically increases or decreases a signed 64-bit integer. More...
 
QDB_API_LINKAGE qdb_error_t qdb_direct_prefix_get (qdb_direct_handle_t handle, const char *prefix, qdb_int_t max_count, const char ***results, size_t *result_count)
 Retrieves the list of all entries matching the provided prefix. More...
 
QDB_API_LINKAGE qdb_error_t qdb_direct_node_backup (qdb_direct_handle_t handle, const char *output_directory, const qdb_backup_options_t *options)
 Run backup process on the node. More...
 
QDB_API_LINKAGE qdb_error_t qdb_direct_node_get_backup_progress (qdb_direct_handle_t handle, qdb_uint_t *completed)
 Get the backup progress. More...
 
QDB_API_LINKAGE qdb_error_t qdb_direct_node_abort_backup (qdb_direct_handle_t handle)
 Abort the running backup. More...
 
QDB_API_LINKAGE qdb_error_t qdb_direct_node_s3_backup (qdb_direct_handle_t handle, const char *bucket, const char *path_prefix, const char *region, const qdb_backup_s3_options_t *options)
 Run backup process to S3 on the node. More...
 
QDB_API_LINKAGE qdb_error_t qdb_direct_node_get_s3_backup_progress (qdb_direct_handle_t handle, qdb_backup_progress_t *progress)
 Get the S3 backup progress. More...
 

Enumeration Type Documentation

Backup modification flags.

Enumerator
qdb_backup_checkpoint 

Make checkpoint backup.

qdb_backup_checkpoint_trim 

Control number of checkpoints in backup.

qdb_backup_full 

Make full backup. Incompatible with checkpoint flags.

Function Documentation

QDB_API_LINKAGE qdb_error_t qdb_direct_node_abort_backup ( qdb_direct_handle_t  handle)

Abort the running backup.

This function aborts the last active backup.

See Also
qdb_direct_node_backup
Parameters
handleA valid handle previously initialized by qdb_direct_connect
Returns
A qdb_error_t code indicating success or failure.
QDB_API_LINKAGE qdb_error_t qdb_direct_node_backup ( qdb_direct_handle_t  handle,
const char *  output_directory,
const qdb_backup_options_t options 
)

Run backup process on the node.

This function bypasses the clustering mechanism and accesses the node local storage. Entries in the local node storage are not accessible via the regular API and vice versa.

Triggers a backup of the node into the specified directory. The function returns right after the backup is started and will not wait for its completion. Only one backup per node can be running at any point in time. Returns an error if a backup is already in progress.

Parameters
handleA valid handle previously initialized by qdb_direct_connect
output_directoryA pointer to a null-terminated UTF-8 string representing the target backup path on the node size. Can't be null or empty.
optionsAdditional backup parameters (optional).
Returns
A qdb_error_t code indicating success or failure.
QDB_API_LINKAGE qdb_error_t qdb_direct_node_get_backup_progress ( qdb_direct_handle_t  handle,
qdb_uint_t *  completed 
)

Get the backup progress.

This function returns last backup progress.

See Also
qdb_direct_node_backup
Parameters
handleA valid handle previously initialized by qdb_direct_connect
completedAn actually backupped part in Bytes.
Returns
A qdb_error_t code indicating success or failure.
QDB_API_LINKAGE qdb_error_t qdb_direct_node_get_s3_backup_progress ( qdb_direct_handle_t  handle,
qdb_backup_progress_t progress 
)

Get the S3 backup progress.

This function returns last backup progress.

See Also
qdb_direct_node_s3_backup
Parameters
handleA valid handle previously initialized by qdb_direct_connect
progressA backup progress details.
Returns
A qdb_error_t code indicating success or failure.
QDB_API_LINKAGE qdb_error_t qdb_direct_node_s3_backup ( qdb_direct_handle_t  handle,
const char *  bucket,
const char *  path_prefix,
const char *  region,
const qdb_backup_s3_options_t options 
)

Run backup process to S3 on the node.

This function bypasses the clustering mechanism and accesses the node local storage. Entries in the local node storage are not accessible via the regular API and vice versa.

Triggers a backup of the node into the S3 cloud. The function returns right after the backup is started and will not wait for its completion. Only one backup per node can be running at any point in time. Returns an error if a backup is already in progress.

See Also
qdb_direct_node_get_s3_backup_progress
Parameters
handleA valid handle previously initialized by qdb_direct_connect
bucketA pointer to a null-terminated UTF-8 string representing the bucket name.
path_prefixA pointer to a null-terminated UTF-8 string representing the object path prefix.
regionA pointer to a null-terminated UTF-8 string representing the region (optional).
optionsAdditional backup parameters (optional).
Returns
A qdb_error_t code indicating success or failure.