24 #include <citrusleaf/cf_queue.h>
25 #include <netinet/in.h>
33 #include <aerospike/ck/ck_pr.h>
42 #define AS_HOSTNAME_SIZE 256
47 #define AS_NODE_NAME_SIZE 20
50 #define AS_NODE_NAME_MAX_SIZE AS_NODE_NAME_SIZE
52 #define AS_FEATURES_GEO (1 << 0)
53 #define AS_FEATURES_DOUBLE (1 << 1)
54 #define AS_FEATURES_BATCH_INDEX (1 << 2)
55 #define AS_FEATURES_REPLICAS_ALL (1 << 3)
56 #define AS_FEATURES_PIPELINING (1 << 4)
57 #define AS_FEATURES_PEERS (1 << 5)
59 #define AS_IP_ADDRESS_SIZE 64
60 #define AS_ADDRESS4_MAX 4
61 #define AS_ADDRESS6_MAX 8
70 typedef struct as_address_s {
74 struct sockaddr_storage addr;
87 typedef struct as_alias_s {
107 typedef struct as_node_s {
248 typedef struct as_node_info_s {
279 struct as_cluster_s* cluster,
const char* hostname,
const char* tls_name,
280 in_port_t port,
bool is_alias,
struct sockaddr* addr,
as_node_info* node_info
298 ck_pr_store_8(&node->
active,
false);
322 ck_pr_dec_32_zero(&node->
ref_count, &destroy);
355 static inline const char*
385 if (cf_queue_push(node->
conn_q, sock) != CF_QUEUE_OK) {