27 #include <aerospike/as_thread_pool.h>
28 #include <citrusleaf/cf_atomic.h>
38 typedef struct as_seed_s {
54 typedef struct as_nodes_s {
84 typedef struct as_gc_item_s {
101 typedef struct as_cluster_s {
286 ck_pr_dec_32_zero(&nodes->
ref_count, &destroy);
337 ck_pr_dec_32_zero(&tables->
ref_count, &destroy);
as_thread_pool thread_pool
pthread_mutex_t tend_lock
static void as_partition_tables_release(as_partition_tables *tables)
void(* as_release_fn)(void *value)
void as_cluster_change_password(as_cluster *cluster, const char *user, const char *password)
as_status as_cluster_create(as_config *config, as_error *err, as_cluster **cluster)
static as_partition_tables * as_partition_tables_reserve(as_cluster *cluster)
as_partition_tables * partition_tables
static as_node * as_node_get(as_cluster *cluster, const char *ns, const uint8_t *digest, bool write, as_policy_replica replica)
as_node * as_shm_node_get(as_cluster *cluster, const char *ns, const uint8_t *digest, bool write, as_policy_replica replica)
void as_cluster_get_node_names(as_cluster *cluster, int *n_nodes, char **node_names)
cl_partition_id n_partitions
static as_partition_table * as_cluster_get_partition_table(as_cluster *cluster, const char *ns)
struct as_shm_info_s * shm_info
as_node * as_partition_table_get_node(as_cluster *cluster, as_partition_table *table, const uint8_t *digest, bool write, as_policy_replica replica)
void as_cluster_destroy(as_cluster *cluster)
as_node * as_node_get_by_name(as_cluster *cluster, const char *name)
as_partition_table * as_partition_tables_get(as_partition_tables *tables, const char *ns)
static as_nodes * as_nodes_reserve(as_cluster *cluster)
bool as_cluster_is_connected(as_cluster *cluster)
static void as_nodes_release(as_nodes *nodes)
as_node * as_node_get_random(as_cluster *cluster)