hce-node application  1.4.3
HCE Hierarchical Cluster Engine node application
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
cl_cluster.h File Reference
#include "citrusleaf.h"
Include dependency graph for cl_cluster.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  cl_cluster_node_s
struct  cl_partition_s
struct  cl_partition_table_s
struct  cl_cluster_compression_stat_s
struct  cl_cluster_s

Macros

#define __CL_C_H__
#define MAX_INTERVALS_ABSENT   1
#define CLS_TENDER_RUNNING   0x00000001
#define CLS_FREED   0x00000002
#define CLS_UNUSED1   0x00000004
#define CLS_UNUSED2   0x00000008
#define CLS_UNUSED3   0x00000010

Typedefs

typedef struct cl_cluster_node_s cl_cluster_node
typedef struct cl_partition_s cl_partition
typedef struct cl_partition_table_s cl_partition_table

Functions

cl_cluster_nodecl_cluster_node_get_random (cl_cluster *asc)
cl_cluster_nodecl_cluster_node_get (cl_cluster *asc, const char *ns, const cf_digest *d, bool write)
void cl_cluster_node_release (cl_cluster_node *cn, const char *tag)
void cl_cluster_node_reserve (cl_cluster_node *cn, const char *tag)
void cl_cluster_node_put (cl_cluster_node *cn)
int cl_cluster_node_fd_get (cl_cluster_node *cn, bool asyncfd, bool nbconnect)
void cl_cluster_node_fd_put (cl_cluster_node *cn, int fd, bool asyncfd)
int citrusleaf_cluster_init ()
cl_cluster_nodecl_cluster_node_get_byname (cl_cluster *asc, char *name)
int cl_cluster_get_node_names_byhostportlist (cl_cluster *asc, char *list_nodes, int *n_nodes, char **node_names)
int citrusleaf_info_parse_single (char *values, char **value)
void cl_partition_table_destroy_all (cl_cluster *asc)
bool cl_partition_table_is_node_present (cl_cluster *asc, cl_cluster_node *node)
void cl_partition_table_update (cl_cluster *asc, cl_cluster_node *node, const char *ns, bool *masters, bool *proles)
cl_cluster_nodecl_partition_table_get (cl_cluster *asc, const char *ns, cl_partition_id pid, bool write)

Variables

cf_ll cluster_ll

Macro Definition Documentation

#define __CL_C_H__

Definition at line 24 of file cl_cluster.h.

#define CLS_FREED   0x00000002

Definition at line 117 of file cl_cluster.h.

#define CLS_TENDER_RUNNING   0x00000001

Definition at line 116 of file cl_cluster.h.

#define CLS_UNUSED1   0x00000004

Definition at line 118 of file cl_cluster.h.

#define CLS_UNUSED2   0x00000008

Definition at line 119 of file cl_cluster.h.

#define CLS_UNUSED3   0x00000010

Definition at line 120 of file cl_cluster.h.

#define MAX_INTERVALS_ABSENT   1

Definition at line 26 of file cl_cluster.h.

Typedef Documentation

typedef struct cl_partition_s cl_partition

Function Documentation

int citrusleaf_cluster_init ( )
int citrusleaf_info_parse_single ( char *  values,
char **  value 
)
int cl_cluster_get_node_names_byhostportlist ( cl_cluster asc,
char *  list_nodes,
int *  n_nodes,
char **  node_names 
)
int cl_cluster_node_fd_get ( cl_cluster_node cn,
bool  asyncfd,
bool  nbconnect 
)
void cl_cluster_node_fd_put ( cl_cluster_node cn,
int  fd,
bool  asyncfd 
)
cl_cluster_node* cl_cluster_node_get ( cl_cluster asc,
const char *  ns,
const cf_digest d,
bool  write 
)
cl_cluster_node* cl_cluster_node_get_byname ( cl_cluster asc,
char *  name 
)
cl_cluster_node* cl_cluster_node_get_random ( cl_cluster asc)
void cl_cluster_node_put ( cl_cluster_node cn)
void cl_cluster_node_release ( cl_cluster_node cn,
const char *  tag 
)
void cl_cluster_node_reserve ( cl_cluster_node cn,
const char *  tag 
)
void cl_partition_table_destroy_all ( cl_cluster asc)
cl_cluster_node* cl_partition_table_get ( cl_cluster asc,
const char *  ns,
cl_partition_id  pid,
bool  write 
)
bool cl_partition_table_is_node_present ( cl_cluster asc,
cl_cluster_node node 
)
void cl_partition_table_update ( cl_cluster asc,
cl_cluster_node node,
const char *  ns,
bool *  masters,
bool *  proles 
)

Variable Documentation

cf_ll cluster_ll