支持多业务系统的配置并发进行同步

This commit is contained in:
linuxrc@163.com
2021-07-22 10:25:42 +08:00
parent 8b236b38cb
commit 5217e9188e
10 changed files with 453 additions and 327 deletions

View File

@@ -7,34 +7,39 @@
#include <cjson/cJSON.h>
#define MONITOR_STATUS_VERSION_ERR 3
enum DORIS_SERVER_FS_FILED
{
DRS_FSSTAT_RECV_FULL_VER=0,
DRS_FSSTAT_RECV_INC_VER,
DRS_FSSTAT_RECV_ERR_VER,
DRS_FSSTAT_RECV_ERR_VER=0,
DRS_FSSTAT_RECV_START_FILES,
DRS_FSSTAT_RECV_CMPLT_FILES,
DRS_FSSTAT_CLIENT_INVALID_REQ,
DRS_FSSTAT_CLIENT_META_REQ,
DRS_FSSTAT_SEND_META_RES,
DRS_FSSTAT_SEND_META_NONEW,
DRS_FSSTAT_CLIENT_FILE_REQ,
DRS_FSSTAT_SEND_FILE_RES,
DRS_FSSTAT_SEND_FILE_BYTES,
DRS_FSSTAT_SEND_FILE_RES_404,
DRS_FSSTAT_FIELD_NUM,
};
enum DORIS_SERVER_FS_COLUMN
{
DRS_FSCLM_RECV_FULL_VER=0,
DRS_FSCLM_RECV_INC_VER,
DRS_FSCLM_RECV_FILES,
DRS_FSCLM_SEND_META_RES,
DRS_FSCLM_SEND_FILE_RES,
DRS_FSCLM_CUR_FULL_VERSION,
DRS_FSCLM_CUR_INC_VERSION,
DRS_FSCLM_CONFIG_TOTAL_NUM,
DRS_FSSTAT_CLUMN_NUM,
};
enum DORIS_SERVER_FS_STATUS
{
DRS_FSSTAT_MEMORY_USED=0,
DRS_FSSTAT_CUR_FULL_VERSION,
DRS_FSSTAT_CUR_INC_VERSION,
DRS_FSSTAT_CONFIG_TOTAL_NUM,
DRS_FSSTAT_STATUS_NUM,
};
@@ -82,21 +87,11 @@ struct version_list_handle
struct version_list_handle *config_version_handle_new(void);
struct doris_srv_statistics
{
long long field[DRS_FSSTAT_FIELD_NUM];
long long status[DRS_FSSTAT_STATUS_NUM];
};
struct worker_statistic_info
{
struct event timer_statistic;
struct doris_srv_statistics statistic, statistic_last;
};
struct doris_business;
struct confile_save
{
struct event_base *evbase;
struct doris_business *business;
int64_t version;
int32_t source_from;
int32_t type;
@@ -108,8 +103,6 @@ struct confile_save
FILE *fp_cfg_file;
FILE *fp_idx_file;
struct worker_statistic_info statistic;
struct version_list_node *cur_vernode;
struct table_list_node *cur_table;
struct cont_frag_node *cur_frag;
@@ -118,12 +111,9 @@ struct confile_save
struct common_timer_event
{
struct event timer_event;
struct confile_save *save;
void *data;
};
void doris_worker_statistic_timer_cb(int fd, short kind, void *userp);
void* thread_doris_client_recv_cfg(void *arg);
void* thread_index_file_recv_cfg(void *arg);