![]() |
Cluster of server nodes.
Definition at line 87 of file as_cluster.h.
#include "as_cluster.h"
Data Fields | |
as_cluster_event_callback | event_callback |
void * | event_callback_udata |
Private Attributes | |
uint32_t | async_conn_count |
uint32_t | async_conn_pool |
uint32_t | async_max_conns_per_node |
uint32_t | async_pending |
char * | cluster_name |
uint32_t | conn_pools_per_node |
uint32_t | conn_timeout_ms |
as_vector * | gc |
as_vector * | ip_map |
uint32_t | max_conns_per_node |
uint32_t | max_socket_idle |
uint16_t | n_partitions |
uint32_t | node_index |
as_nodes * | nodes |
as_partition_tables * | partition_tables |
char * | password |
uint32_t | pipe_max_conns_per_node |
pthread_mutex_t | seed_lock |
as_vector * | seeds |
struct as_shm_info_s * | shm_info |
pthread_cond_t | tend_cond |
uint32_t | tend_interval |
pthread_mutex_t | tend_lock |
pthread_t | tend_thread |
as_thread_pool | thread_pool |
as_tls_context | tls_ctx |
bool | use_services_alternate |
char * | user |
volatile bool | valid |
|
private |
Number of active async pipeline and non-pipeline connections combined.
Definition at line 240 of file as_cluster.h.
|
private |
Number of async connections in the pools.
Definition at line 246 of file as_cluster.h.
|
private |
Maximum number of asynchronous (non-pipeline) connections allowed for each node. Async transactions will be rejected if the maximum async node connections would be exceeded. This variable is ignored if asynchronous event loops are not created.
Definition at line 214 of file as_cluster.h.
|
private |
Number of pending async commands (i.e., commands with an outstanding reply).
Definition at line 234 of file as_cluster.h.
|
private |
Expected cluster name for all nodes. May be null.
Definition at line 128 of file as_cluster.h.
|
private |
Number of synchronous connection pools used for each node.
Definition at line 228 of file as_cluster.h.
|
private |
Initial connection timeout in milliseconds.
Definition at line 252 of file as_cluster.h.
as_cluster_event_callback as_cluster::event_callback |
Cluster event function that will be called when nodes are added/removed from the cluster.
Definition at line 133 of file as_cluster.h.
void* as_cluster::event_callback_udata |
Cluster event user data that will be passed back to event_callback.
Definition at line 138 of file as_cluster.h.
|
private |
Nodes to be garbage collected.
Definition at line 104 of file as_cluster.h.
|
private |
A IP translation table is used in cases where different clients use different server IP addresses. This may be necessary when using clients from both inside and outside a local area network. Default is no translation.
The key is the IP address returned from friend info requests to other servers. The value is the real IP address used to connect to the server.
Definition at line 155 of file as_cluster.h.
|
private |
Maximum number of synchronous connections allowed per server node.
Definition at line 206 of file as_cluster.h.
|
private |
Maximum socket idle in seconds.
Definition at line 258 of file as_cluster.h.
|
private |
Total number of data partitions used by cluster.
Definition at line 270 of file as_cluster.h.
|
private |
Random node index.
Definition at line 264 of file as_cluster.h.
|
private |
Active nodes in cluster.
Definition at line 92 of file as_cluster.h.
|
private |
Hints for best node for a partition.
Definition at line 98 of file as_cluster.h.
|
private |
Password in hashed format in bytes.
Definition at line 122 of file as_cluster.h.
|
private |
Maximum number of pipeline connections allowed for each node. Pipeline transactions will be rejected if the maximum pipeline node connections would be exceeded. This variable is ignored if asynchronous event loops are not created.
Definition at line 222 of file as_cluster.h.
|
private |
Lock for adding/removing seeds.
Definition at line 179 of file as_cluster.h.
|
private |
Initial seed hosts specified by user.
Definition at line 144 of file as_cluster.h.
|
private |
Shared memory implementation of cluster.
Definition at line 110 of file as_cluster.h.
|
private |
Tend thread identifier to be used with tend_lock.
Definition at line 194 of file as_cluster.h.
|
private |
Milliseconds between cluster tends.
Definition at line 200 of file as_cluster.h.
|
private |
Lock for the tend thread to wait on with the tend interval as timeout. Normally locked, resulting in waiting a full interval between tend iterations. Upon cluster shutdown, unlocked by the main thread, allowing a fast termination of the tend thread.
Definition at line 188 of file as_cluster.h.
|
private |
Cluster tend thread.
Definition at line 173 of file as_cluster.h.
|
private |
Pool of threads used to query server nodes in parallel for batch, scan and query.
Definition at line 167 of file as_cluster.h.
|
private |
TLS parameters
Definition at line 161 of file as_cluster.h.
|
private |
If "services-alternate" should be used instead of "services"
Definition at line 276 of file as_cluster.h.
|
private |
User name in UTF-8 encoded bytes.
Definition at line 116 of file as_cluster.h.
|
private |
Should continue to tend cluster.
Definition at line 282 of file as_cluster.h.