All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Data Structures | Functions
as_shm_cluster.h File Reference
#include <aerospike/as_atomic.h>
#include <aerospike/as_config.h>
#include <aerospike/as_node.h>
#include <aerospike/as_partition.h>
#include <citrusleaf/cf_queue.h>
+ Include dependency graph for as_shm_cluster.h:

Go to the source code of this file.

Data Structures

struct  as_cluster_shm
 
struct  as_node_shm
 
struct  as_partition_shm
 
struct  as_partition_table_shm
 
struct  as_shm_info
 

Functions

void as_shm_add_nodes (struct as_cluster_s *cluster, as_vector *nodes_to_add)
 
as_status as_shm_create (struct as_cluster_s *cluster, as_error *err, as_config *config)
 
void as_shm_destroy (struct as_cluster_s *cluster)
 
as_partition_table_shmas_shm_find_partition_table (as_cluster_shm *cluster_shm, const char *ns)
 
static as_partition_table_shmas_shm_get_partition_table (as_cluster_shm *cluster_shm, as_partition_table_shm *tables, uint32_t index)
 
static as_partition_table_shmas_shm_get_partition_tables (as_cluster_shm *cluster_shm)
 
static as_partition_table_shmas_shm_next_partition_table (as_cluster_shm *cluster_shm, as_partition_table_shm *table)
 
void as_shm_node_replace_racks (as_cluster_shm *cluster_shm, as_node *node, as_racks *racks)
 
void as_shm_remove_nodes (struct as_cluster_s *cluster, as_vector *nodes_to_remove)
 
void as_shm_update_partitions (as_shm_info *shm_info, const char *ns, char *bitmap_b64, int64_t len, as_node *node, uint8_t replica_size, uint8_t replica_index, uint32_t regime)
 

Function Documentation

void as_shm_add_nodes ( struct as_cluster_s *  cluster,
as_vector nodes_to_add 
)
private

Add nodes to shared memory.

as_status as_shm_create ( struct as_cluster_s *  cluster,
as_error err,
as_config config 
)
private

Create shared memory implementation of cluster.

void as_shm_destroy ( struct as_cluster_s *  cluster)
private

Destroy shared memory components.

as_partition_table_shm* as_shm_find_partition_table ( as_cluster_shm cluster_shm,
const char *  ns 
)
private

Find partition table for namespace in shared memory.

static as_partition_table_shm* as_shm_get_partition_table ( as_cluster_shm cluster_shm,
as_partition_table_shm tables,
uint32_t  index 
)
inlinestaticprivate

Get partition table identified by index.

Definition at line 331 of file as_shm_cluster.h.

References as_cluster_shm::partition_table_byte_size.

static as_partition_table_shm* as_shm_get_partition_tables ( as_cluster_shm cluster_shm)
inlinestaticprivate

Get shared memory partition tables array.

Definition at line 321 of file as_shm_cluster.h.

References as_cluster_shm::partition_tables_offset.

static as_partition_table_shm* as_shm_next_partition_table ( as_cluster_shm cluster_shm,
as_partition_table_shm table 
)
inlinestaticprivate

Get next partition table in array.

Definition at line 343 of file as_shm_cluster.h.

References as_cluster_shm::partition_table_byte_size.

void as_shm_node_replace_racks ( as_cluster_shm cluster_shm,
as_node node,
as_racks racks 
)
private

Update shared memory node racks.

void as_shm_remove_nodes ( struct as_cluster_s *  cluster,
as_vector nodes_to_remove 
)
private

Remove nodes from shared memory.

void as_shm_update_partitions ( as_shm_info shm_info,
const char *  ns,
char *  bitmap_b64,
int64_t  len,
as_node node,
uint8_t  replica_size,
uint8_t  replica_index,
uint32_t  regime 
)
private

Update shared memory partition tables for given namespace.