diff --git a/docs/table_data.md b/docs/table_data.md index 61577fa..b016359 100644 --- a/docs/table_data.md +++ b/docs/table_data.md @@ -232,7 +232,7 @@ Maat实例的工作线程定时轮询Redis中MAAT_VERSION,如果大于实例 { "table_name": "IP_CONFIG", //域表表名和类型,应与配置表 //描述文件一致 - "table_type": "ip",//类型包括 ip, string, intval 三种 + "table_type": "ip",//类型包括 ip, string, interval 三种 "table_content": {//以下是ip类配置表的格式 "addr_type": "ipv4",//地址类型,可选ipv4和ipv6 "src_ip": "10.0.6.201", @@ -306,7 +306,7 @@ Maat实例的工作线程定时轮询Redis中MAAT_VERSION,如果大于实例 "regions": [ { "table_name": "CONTENT_SIZE", - "table_type": "intval", + "table_type": "interval", "table_content": { "low_boundary": 100, //上下界的约定参照数值类域配 "up_boundary": 500 //置表定义 diff --git a/docs/table_schema.md b/docs/table_schema.md index e4e8f25..001e8ad 100644 --- a/docs/table_schema.md +++ b/docs/table_schema.md @@ -24,8 +24,8 @@ Item tables are further subdivided into different types of subtables as follows: - [expr item table](#11-expr-item-table) - [expr_plus item table](#12-expr_plus-item-table) - [ip_plus item table](#13-ip_plus-item-table) -- [intval item table](#14-numeric-range-item-table) -- [intval_plus item table](#14-numeric-range-item-table) +- [interval item table](#14-numeric-range-item-table) +- [interval_plus item table](#14-numeric-range-item-table) - [flag item table](#15-flag-item-table) - [flag_plus item table](#16-flag_plus-item-table) diff --git a/src/inc_internal/maat_interval.h b/src/inc_internal/maat_interval.h index 260b600..b9b3039 100644 --- a/src/inc_internal/maat_interval.h +++ b/src/inc_internal/maat_interval.h @@ -42,7 +42,7 @@ long long interval_runtime_rule_count(void *interval_runtime); /* interval runtime scan API */ /** - * @brief scan intval to get hit group_ids + * @brief scan interval to get hit group_ids * * @retval the num of hit group_id */ diff --git a/src/inc_internal/maat_redis_monitor.h b/src/inc_internal/maat_redis_monitor.h index dcd7b6c..144024d 100644 --- a/src/inc_internal/maat_redis_monitor.h +++ b/src/inc_internal/maat_redis_monitor.h @@ -79,9 +79,9 @@ void maat_get_foreign_conts(redisContext *c, struct serial_rule *rule_list, void maat_rewrite_table_line_with_foreign(struct serial_rule *s_rule); int maat_get_rm_key_list(redisContext *c, long long instance_version, - long long desired_version, long long *new_version, - struct table_manager *tbl_mgr, struct serial_rule **list, - int *update_type, int cumulative_off, struct log_handle *logger); + long long *new_version, struct table_manager *tbl_mgr, + struct serial_rule **list, int *update_type, + int cumulative_off, struct log_handle *logger); void redis_monitor_traverse(long long version, struct source_redis_ctx *mr_ctx, void (*start_fn)(long long, int, void *), diff --git a/src/inc_internal/maat_rule.h b/src/inc_internal/maat_rule.h index 7759232..d05be1a 100644 --- a/src/inc_internal/maat_rule.h +++ b/src/inc_internal/maat_rule.h @@ -125,7 +125,7 @@ struct maat_options { int maat_json_is_gzipped; int cumulative_update_off; //Default: cumulative update on - + int gc_timeout_ms; int rule_effect_interval_ms; int rule_update_checking_interval_ms; @@ -173,7 +173,6 @@ struct maat { long long maat_version; long long last_full_version; - long long load_specific_version; //Default: Load the Latest. Only valid in redis mode, and maybe failed for too old /* internal state */ long long new_version; diff --git a/src/json2iris.c b/src/json2iris.c index 2b03ddb..19fa64b 100644 --- a/src/json2iris.c +++ b/src/json2iris.c @@ -149,9 +149,7 @@ static int set_iris_descriptor(const char *json_file, cJSON *json, maat_kv_register(iris_cfg->str2int_map, "string", TABLE_TYPE_EXPR); maat_kv_register(iris_cfg->str2int_map, "expr", TABLE_TYPE_EXPR); maat_kv_register(iris_cfg->str2int_map, "expr_plus", TABLE_TYPE_EXPR_PLUS); - maat_kv_register(iris_cfg->str2int_map, "intval", TABLE_TYPE_INTERVAL); maat_kv_register(iris_cfg->str2int_map, "interval", TABLE_TYPE_INTERVAL); - maat_kv_register(iris_cfg->str2int_map, "intval_plus", TABLE_TYPE_INTERVAL_PLUS); maat_kv_register(iris_cfg->str2int_map, "interval_plus", TABLE_TYPE_INTERVAL_PLUS); maat_kv_register(iris_cfg->str2int_map, "ipv4", 4); @@ -578,7 +576,7 @@ static int write_ip_plus_line(cJSON *region_json, struct iris_description *p_iri json_cmd, cmd_cnt, table, logger); } -static int write_intval_line(cJSON *region_json, struct iris_description *p_iris, +static int write_interval_line(cJSON *region_json, struct iris_description *p_iris, struct iris_table *table, struct log_handle *logger) { struct translate_command json_cmd[MAX_COLUMN_NUM]; @@ -676,7 +674,7 @@ static int write_region_rule(cJSON *region_json, int compile_id, int group_id, break; case TABLE_TYPE_INTERVAL: case TABLE_TYPE_INTERVAL_PLUS: - ret = write_intval_line(table_content, p_iris, table_info, logger); + ret = write_interval_line(table_content, p_iris, table_info, logger); break; default: assert(0); diff --git a/src/maat_interval.c b/src/maat_interval.c index 189ef39..3dcb8cf 100644 --- a/src/maat_interval.c +++ b/src/maat_interval.c @@ -109,7 +109,7 @@ void *interval_schema_new(cJSON *json, struct table_manager *tbl_mgr, } /* interval_plus has district */ - if (strcmp(table_type, "intval_plus") == 0) { + if (strcmp(table_type, "interval_plus") == 0) { custom_item = cJSON_GetObjectItem(item, "district"); if (custom_item != NULL && custom_item->type == cJSON_Number) { schema->district_column = custom_item->valueint; diff --git a/src/maat_ip.c b/src/maat_ip.c index 01bf5af..55bdd9f 100644 --- a/src/maat_ip.c +++ b/src/maat_ip.c @@ -593,13 +593,13 @@ int ip_runtime_commit(void *ip_runtime, const char *table_name, ip_rt->ipv6_rule_num = 0; struct ip_rule *rules = NULL; - struct interval_rule *intval_rules = NULL; + struct interval_rule *interval_rules = NULL; void **ex_data_array = NULL; size_t rule_cnt = rcu_updating_hash_list(ip_rt->item_hash, &ex_data_array); if (rule_cnt > 0) { rules = ALLOC(struct ip_rule, rule_cnt); - intval_rules = ALLOC(struct interval_rule, rule_cnt); + interval_rules = ALLOC(struct interval_rule, rule_cnt); for (size_t i = 0; i < rule_cnt; i++) { struct ip_item *item = (struct ip_item *)ex_data_array[i]; if (item->addr_type == IPv6) { @@ -607,7 +607,7 @@ int ip_runtime_commit(void *ip_runtime, const char *table_name, } ip_item_to_ip_rule(item, &rules[i]); - ip_item_to_port_rule(item, &intval_rules[i]); + ip_item_to_port_rule(item, &interval_rules[i]); } } @@ -653,8 +653,8 @@ int ip_runtime_commit(void *ip_runtime, const char *table_name, FREE(rules); } - if (intval_rules != NULL) { - FREE(intval_rules); + if (interval_rules != NULL) { + FREE(interval_rules); } if (ex_data_array != NULL) { diff --git a/src/maat_redis_monitor.c b/src/maat_redis_monitor.c index d446707..cdfde6d 100644 --- a/src/maat_redis_monitor.c +++ b/src/maat_redis_monitor.c @@ -477,125 +477,10 @@ void maat_set_serial_rule(struct serial_rule *rule, enum maat_operation op, } } -static void serial_rule_free(struct serial_rule *s_rule) -{ - if (NULL == s_rule) { - return; - } - - if (s_rule->table_line != NULL) { - FREE(s_rule->table_line); - } - - if (s_rule->n_foreign > 0) { - for (int i = 0; i < s_rule->n_foreign; i++) { - if (s_rule->f_keys[i].filename != NULL) { - FREE(s_rule->f_keys[i].filename); - } - - if (s_rule->f_keys[i].key != NULL) { - FREE(s_rule->f_keys[i].key); - } - } - - if (s_rule->f_keys != NULL) { - FREE(s_rule->f_keys); - } - } - - FREE(s_rule); -} - -static struct serial_rule *serial_rule_clone(const struct serial_rule *s_rule) -{ - struct serial_rule *new_rule = ALLOC(struct serial_rule, 1); - - new_rule->op = s_rule->op; - new_rule->rule_id = s_rule->rule_id; - new_rule->timeout = s_rule->timeout; - memcpy(new_rule->table_name, s_rule->table_name, strlen(s_rule->table_name)); - new_rule->n_foreign = s_rule->n_foreign; - new_rule->table_line = ALLOC(char, strlen(s_rule->table_line) + 1); - memcpy(new_rule->table_line, s_rule->table_line, strlen(s_rule->table_line)); - - new_rule->f_keys = ALLOC(struct foreign_key, new_rule->n_foreign); - for (int j = 0; j < new_rule->n_foreign; j++) { - new_rule->f_keys[j].key = ALLOC(char, s_rule->f_keys[j].key_len + 1); - memcpy(new_rule->f_keys[j].key, s_rule->f_keys[j].key, s_rule->f_keys[j].key_len); - new_rule->f_keys[j].filename = ALLOC(char, strlen(s_rule->f_keys[j].filename) + 1); - memcpy(new_rule->f_keys[j].filename, s_rule->f_keys[j].filename, - strlen(s_rule->f_keys[j].filename)); - } - - return new_rule; -} - -static int recovery_history_version(const struct serial_rule *current, int current_num, - const struct serial_rule *changed, int changed_num, - struct serial_rule **history_result) -{ - int i = 0; - int ret = 0; - unsigned int history_num = 0; - int hash_slot_size = 1; - char hkey[256+20] = {0}; - int tmp = current_num + changed_num; - for (; tmp > 0; tmp = tmp/2) { - hash_slot_size *= 2; - } - - struct serial_rule *s_rule_map = NULL; - struct serial_rule *rule_node = NULL; - for (i = 0; i < current_num; i++) { - snprintf(hkey, sizeof(hkey), "%lld,%s", current[i].rule_id, current[i].table_name); - rule_node = serial_rule_clone(current + i); - HASH_ADD_KEYPTR(hh, s_rule_map, hkey, strlen(hkey), rule_node); - } - - for (i = changed_num - 1; i >= 0; i--) { - snprintf(hkey, sizeof(hkey), "%lld,%s", changed[i].rule_id, changed[i].table_name); - //newly added rule is need to delete from current, so that history version can be recovered. - if (changed[i].op == MAAT_OP_ADD) { - rule_node = NULL; - HASH_FIND(hh, s_rule_map, hkey, strlen(hkey), rule_node); - if (rule_node != NULL) { - HASH_DELETE(hh, s_rule_map, rule_node); - } - serial_rule_free(rule_node); - } else { - rule_node = serial_rule_clone(changed + i); - HASH_ADD_KEYPTR(hh, s_rule_map, hkey, strlen(hkey), rule_node); - } - } - - history_num = HASH_CNT(hh, s_rule_map); - struct serial_rule *array = ALLOC(struct serial_rule, history_num); - struct serial_rule *elem_node = NULL; - struct serial_rule *tmp_node = NULL; - i = 0; - HASH_ITER(hh, s_rule_map, elem_node, tmp_node) { - memcpy(&array[i], elem_node, sizeof(struct serial_rule)); - array[i].op = MAAT_OP_ADD; - i++; - } - elem_node = NULL; - tmp_node = NULL; - - *history_result = array; - ret = history_num; - - HASH_ITER(hh, s_rule_map, elem_node, tmp_node) { - HASH_DELETE(hh, s_rule_map, elem_node); - serial_rule_free(elem_node); - } - - return ret; -} - int maat_get_rm_key_list(redisContext *c, long long instance_version, - long long desired_version, long long *new_version, - struct table_manager *tbl_mgr, struct serial_rule **list, - int *update_type, int cumulative_off, struct log_handle *logger) + long long *new_version, struct table_manager *tbl_mgr, + struct serial_rule **list, int *update_type, + int cumulative_off, struct log_handle *logger) { int rule_num = 0; long long target_version = 0; @@ -635,7 +520,7 @@ int maat_get_rm_key_list(redisContext *c, long long instance_version, return 0; } - if (0 == instance_version || desired_version != 0) { + if (0 == instance_version) { goto FULL_UPDATE; } @@ -668,9 +553,8 @@ int maat_get_rm_key_list(redisContext *c, long long instance_version, if (0 == rule_num) { log_info(logger, MODULE_REDIS_MONITOR, - "Got nothing after ZRANGEBYSCORE %s (%lld %lld, cumulative %s", - mr_status_sset, instance_version, target_version-1, - cumulative_off == 1 ? "OFF" : "ON"); + "Got nothing after ZRANGEBYSCORE %s (%lld %lld", + mr_status_sset, instance_version, target_version - 1); return 0; } @@ -686,7 +570,7 @@ int maat_get_rm_key_list(redisContext *c, long long instance_version, FULL_UPDATE: log_info(logger, MODULE_REDIS_MONITOR, "Initiate full update from instance_version %lld to %lld", - instance_version, desired_version == 0 ? redis_version : desired_version); + instance_version, redis_version); size_t append_cmd_cnt = 0; int ret = redisAppendCommand(c, "MULTI"); append_cmd_cnt++; @@ -770,35 +654,6 @@ FULL_UPDATE: freeReplyObject(reply); reply = NULL; - if (desired_version != 0) { - struct serial_rule *changed_rule_array = NULL; - int changed_rule_num = get_inc_key_list(desired_version, redis_version, - c, &changed_rule_array, logger); - if (changed_rule_num < 0) { - log_error(logger, MODULE_REDIS_MONITOR, - "[%s:%d] Recover history version %lld faild where as redis version is %lld", - __FUNCTION__, __LINE__, desired_version, redis_version); - } else if(0 == changed_rule_num) { - log_error(logger, MODULE_REDIS_MONITOR, - "[%s:%d] Nothing to recover from history version %lld to redis version is %lld", - __FUNCTION__, __LINE__, desired_version, redis_version); - } else { - struct serial_rule *history_rule_array = NULL; - ret = recovery_history_version(s_rule_array, full_idx, changed_rule_array, - changed_rule_num, &history_rule_array); - if (ret > 0) { - FREE(s_rule_array); - s_rule_array = history_rule_array; - rule_num = ret; - *new_version = desired_version; - log_info(logger, MODULE_REDIS_MONITOR, - "Successfully recovered from history version %lld to redis version is %lld", - desired_version, redis_version); - } - } - FREE(changed_rule_array); - } - *list = s_rule_array; *update_type = MAAT_UPDATE_TYPE_FULL; log_info(logger, MODULE_REDIS_MONITOR, @@ -1491,10 +1346,9 @@ void redis_monitor_traverse(long long version, struct source_redis_ctx *mr_ctx, int update_type = MAAT_UPDATE_TYPE_INC; int rule_num = maat_get_rm_key_list(mr_ctx->read_ctx, version, - maat_inst->load_specific_version, &new_version, maat_inst->tbl_mgr, &rule_list, &update_type, - maat_inst->opts.cumulative_update_off, + maat_inst->opts.cumulative_update_off, maat_inst->logger); //redis communication error if (rule_num < 0) { @@ -1503,7 +1357,6 @@ void redis_monitor_traverse(long long version, struct source_redis_ctx *mr_ctx, return; } - maat_inst->load_specific_version = 0;//only valid for one time. //error or nothing changed if (0 == rule_num && update_type == MAAT_UPDATE_TYPE_INC) { return; diff --git a/src/maat_table.c b/src/maat_table.c index 0b3b305..213ced0 100644 --- a/src/maat_table.c +++ b/src/maat_table.c @@ -485,8 +485,8 @@ static void register_reserved_word(struct maat_kv_store *reserved_word_map) maat_kv_register(reserved_word_map, "flag_plus", TABLE_TYPE_FLAG_PLUS); maat_kv_register(reserved_word_map, "expr", TABLE_TYPE_EXPR); maat_kv_register(reserved_word_map, "expr_plus", TABLE_TYPE_EXPR_PLUS); - maat_kv_register(reserved_word_map, "intval", TABLE_TYPE_INTERVAL); - maat_kv_register(reserved_word_map, "intval_plus", TABLE_TYPE_INTERVAL_PLUS); + maat_kv_register(reserved_word_map, "interval", TABLE_TYPE_INTERVAL); + maat_kv_register(reserved_word_map, "interval_plus", TABLE_TYPE_INTERVAL_PLUS); maat_kv_register(reserved_word_map, "ip_plus", TABLE_TYPE_IP_PLUS); maat_kv_register(reserved_word_map, "plugin", TABLE_TYPE_PLUGIN); maat_kv_register(reserved_word_map, "ip_plugin", TABLE_TYPE_IP_PLUGIN); diff --git a/test/benchmark/benchmark_table_info.conf b/test/benchmark/benchmark_table_info.conf index 16630fa..c2f1d31 100644 --- a/test/benchmark/benchmark_table_info.conf +++ b/test/benchmark/benchmark_table_info.conf @@ -308,7 +308,7 @@ { "table_id":20, "table_name":"INTEGER_1K", - "table_type":"intval", + "table_type":"interval", "valid_column":5, "custom": { "item_id":1, @@ -320,7 +320,7 @@ { "table_id":21, "table_name":"INTEGER_5K", - "table_type":"intval", + "table_type":"interval", "valid_column":5, "custom": { "item_id":1, @@ -332,7 +332,7 @@ { "table_id":22, "table_name":"INTEGER_10K", - "table_type":"intval", + "table_type":"interval", "valid_column":5, "custom": { "item_id":1, @@ -344,7 +344,7 @@ { "table_id":23, "table_name":"INTEGER_50K", - "table_type":"intval", + "table_type":"interval", "valid_column":5, "custom": { "item_id":1, @@ -356,7 +356,7 @@ { "table_id":24, "table_name":"INTEGER_100K", - "table_type":"intval", + "table_type":"interval", "valid_column":5, "custom": { "item_id":1, diff --git a/test/file_test_tableinfo.conf b/test/file_test_tableinfo.conf index 541a8fa..a6fca94 100644 --- a/test/file_test_tableinfo.conf +++ b/test/file_test_tableinfo.conf @@ -80,7 +80,7 @@ { "table_id":6, "table_name":"NTC_UNIVERSAL_PROTO_TYPE", - "table_type":"intval", + "table_type":"interval", "valid_column":5, "custom": { "item_id":1, diff --git a/test/maat_framework_gtest.cpp b/test/maat_framework_gtest.cpp index 13cae8c..8accf7d 100644 --- a/test/maat_framework_gtest.cpp +++ b/test/maat_framework_gtest.cpp @@ -239,11 +239,11 @@ int expr_table_set_line(struct maat *maat_inst, const char *table_name, return maat_cmd_set_line(maat_inst, &line_rule); } -int intval_table_set_line(struct maat *maat_inst, const char *table_name, - enum maat_operation op, long long item_id, - long long group_id, unsigned int low_boundary, - unsigned int up_boundary, const char *district, - int expire_after) +int interval_table_set_line(struct maat *maat_inst, const char *table_name, + enum maat_operation op, long long item_id, + long long group_id, unsigned int low_boundary, + unsigned int up_boundary, const char *district, + int expire_after) { char table_line[1024] = {0}; int table_id = maat_get_table_id(maat_inst, table_name); @@ -6944,8 +6944,8 @@ TEST_F(MaatCmdTest, GroupInMassCompiles) { //item_appid -> group3 long long group3_id = maat_cmd_incrby(maat_inst, "SEQUENCE_GROUP", 1); long long item3_id = maat_cmd_incrby(maat_inst, "SEQUENCE_REGION", 1); - ret = intval_table_set_line(maat_inst, table_appid, MAAT_OP_ADD, item3_id, - group3_id, 100, 100, NULL, 0); + ret = interval_table_set_line(maat_inst, table_appid, MAAT_OP_ADD, item3_id, + group3_id, 100, 100, NULL, 0); EXPECT_EQ(ret, 1); /* item_url1 -> group1 -> compile[0 ~ COMPILE_ID_NUMS] @@ -7930,8 +7930,8 @@ TEST_F(MaatCmdTest, SameScanStatusWhenClauseUpdate_TSG6419) { EXPECT_EQ(ret, 1); long long item21_id = maat_cmd_incrby(maat_inst, "SEQUENCE_REGION", 1); - ret = intval_table_set_line(maat_inst, app_id_table_name, MAAT_OP_ADD, - item21_id, group21_id, 31, 31, NULL, 0); + ret = interval_table_set_line(maat_inst, app_id_table_name, MAAT_OP_ADD, + item21_id, group21_id, 31, 31, NULL, 0); EXPECT_EQ(ret, 1); sleep(WAIT_FOR_EFFECTIVE_S * 2); @@ -7970,8 +7970,8 @@ TEST_F(MaatCmdTest, SameScanStatusWhenClauseUpdate_TSG6419) { EXPECT_EQ(ret, 1); long long item22_id = maat_cmd_incrby(maat_inst, "SEQUENCE_REGION", 1); - ret = intval_table_set_line(maat_inst, app_id_table_name, MAAT_OP_ADD, - item22_id, group22_id, 32, 32, NULL, 0); + ret = interval_table_set_line(maat_inst, app_id_table_name, MAAT_OP_ADD, + item22_id, group22_id, 32, 32, NULL, 0); EXPECT_EQ(ret, 1); sleep(WAIT_FOR_EFFECTIVE_S * 2); @@ -8025,8 +8025,8 @@ TEST_F(MaatCmdTest, GroupEdit) { EXPECT_EQ(ret, 1); long long item21_id = maat_cmd_incrby(maat_inst, "SEQUENCE_REGION", 1); - ret = intval_table_set_line(maat_inst, app_id_table_name, MAAT_OP_ADD, - item21_id, group21_id, 41, 41, NULL, 0); + ret = interval_table_set_line(maat_inst, app_id_table_name, MAAT_OP_ADD, + item21_id, group21_id, 41, 41, NULL, 0); EXPECT_EQ(ret, 1); sleep(WAIT_FOR_EFFECTIVE_S * 2); @@ -8059,9 +8059,9 @@ TEST_F(MaatCmdTest, GroupEdit) { item22 -> / */ long long item22_id = maat_cmd_incrby(maat_inst, "SEQUENCE_REGION", 1); - ret = intval_table_set_line(maat_inst, app_id_table_name, MAAT_OP_ADD, - item22_id, group21_id, scan_app_id, - scan_app_id, NULL, 0); + ret = interval_table_set_line(maat_inst, app_id_table_name, MAAT_OP_ADD, + item22_id, group21_id, scan_app_id, + scan_app_id, NULL, 0); EXPECT_EQ(ret, 1); sleep(WAIT_FOR_EFFECTIVE_S); @@ -8092,7 +8092,7 @@ TEST_F(MaatCmdTest, GroupEdit) { /* item11 -> group11 -> clause1 -> compile1 item21 -> group21 -> clause2 _/ */ - ret = intval_table_set_line(maat_inst, app_id_table_name, MAAT_OP_DEL, + ret = interval_table_set_line(maat_inst, app_id_table_name, MAAT_OP_DEL, item22_id, group21_id, scan_app_id, scan_app_id, NULL, 0); EXPECT_EQ(ret, 1); diff --git a/test/table_info.conf b/test/table_info.conf index f376982..0bb98e4 100644 --- a/test/table_info.conf +++ b/test/table_info.conf @@ -173,7 +173,7 @@ { "table_id":13, "table_name":"CONTENT_SIZE", - "table_type":"intval", + "table_type":"interval", "valid_column":5, "custom": { "item_id":1, @@ -422,7 +422,7 @@ { "table_id":35, "table_name":"INTERGER_PLUS", - "table_type":"intval_plus", + "table_type":"interval_plus", "valid_column":6, "custom": { "item_id":1, @@ -447,7 +447,7 @@ { "table_id":37, "table_name":"APP_ID", - "table_type":"intval", + "table_type":"interval", "valid_column":5, "custom": { "item_id":1, @@ -473,7 +473,7 @@ { "table_id":39, "table_name":"EMPTY_INTERGER", - "table_type":"intval", + "table_type":"interval", "valid_column":5, "custom": { "item_id":1, @@ -583,7 +583,7 @@ { "table_id":48, "table_name":"INTEGER_PERF_CONFIG", - "table_type":"intval", + "table_type":"interval", "valid_column":5, "custom": { "item_id":1, diff --git a/tools/maat_redis_tool.cpp b/tools/maat_redis_tool.cpp index d9aa0ae..15a2bdf 100644 --- a/tools/maat_redis_tool.cpp +++ b/tools/maat_redis_tool.cpp @@ -68,7 +68,7 @@ int set_file_rulenum(const char *path, int rule_num) return 0; } -void read_rule_from_redis(redisContext *c, long long desire_version, const char *output_path, struct log_handle *logger) +void read_rule_from_redis(redisContext *c, const char *output_path, struct log_handle *logger) { int i = 0; int ret = 0; @@ -83,13 +83,9 @@ void read_rule_from_redis(redisContext *c, long long desire_version, const char FILE *index_fp = NULL; struct serial_rule *rule_list = NULL; - int rule_num = maat_get_rm_key_list(c, 0, desire_version, &version, NULL, &rule_list, &update_type, 0, logger); + int rule_num = maat_get_rm_key_list(c, 0, &version, NULL, &rule_list, &update_type, 0, logger); if (0 == rule_num) { - if (desire_version != 0) { - printf("Read desired version %lld failed.\n", desire_version); - } else { - printf("No Effective Rules.\n"); - } + printf("No Effective Rules.\n"); return; } @@ -396,12 +392,12 @@ int main(int argc, char * argv[]) char upload_file[128] = {0}; char log_path[128] = "./maat_redis_tool.log"; int timeout = 0; - long long desired_version = 0; + strncpy(redis_ip, "127.0.0.1", sizeof(redis_ip)); strncpy(dump_dir, redis_dump_dir, sizeof(dump_dir)); struct log_handle *logger = log_handle_create(log_path, 0); - while ((oc = getopt(argc,argv,"h:p:n:d:v:f:j:t:u:")) != -1) { + while ((oc = getopt(argc,argv,"h:p:n:d:f:j:t:u:")) != -1) { switch (oc) { case 'h': strncpy(redis_ip, optarg, sizeof(redis_ip)); @@ -419,9 +415,6 @@ int main(int argc, char * argv[]) dump_dir[strlen(dump_dir)-1] = '\0'; } break; - case 'v': - sscanf(optarg, "%lld", &desired_version); - break; case 'j': strncpy(json_file, optarg, sizeof(json_file)); mode = WORK_MODE_JSON; @@ -450,7 +443,7 @@ int main(int argc, char * argv[]) if (mode == WORK_MODE_DUMP) { log_info(logger, MODULE_REDIS_TOOL, "Reading key list from %s:%d db%d.", redis_ip, redis_port, redis_db); - read_rule_from_redis(c, desired_version, dump_dir, logger); + read_rule_from_redis(c, dump_dir, logger); } else if(mode == WORK_MODE_JSON) { char *json_buff = NULL; size_t json_buff_sz = 0;