diff --git a/src/entry/Maat_api.cpp b/src/entry/Maat_api.cpp index d6c0132..20fd134 100644 --- a/src/entry/Maat_api.cpp +++ b/src/entry/Maat_api.cpp @@ -197,7 +197,6 @@ int region_compile(_Maat_feather_t*feather,struct _INNER_scan_status_t *_mid,int //region_hit_num==1 : for current scan hitted rules, one and each other group may statisfy a compile rule. //_mid->hit_group_cnt==1: With pre scan hitted group rules, one group may staisfy a compile rule scan_ret=0; - alignment_int64_array_add(feather->last_region_saving, thread_num, 1); } else { @@ -226,8 +225,8 @@ int region_compile(_Maat_feather_t*feather,struct _INNER_scan_status_t *_mid,int make_group_set(_mi_rule, &(rs_result[result_cnt].group_set), &has_not_flag); r_in_c_cnt=pickup_hit_region_from_compile(&(rs_result[result_cnt].group_set), _mid->cur_hit_id, _mid->cur_hit_cnt, region_pos, MAX_SCANNER_HIT_NUM); - if(r_in_c_cnt>0 || //compile config hitted becasue of new reigon - _mid->cur_hit_cnt==0) //or ever hit compile has not group + if(r_in_c_cnt>0 || //compile config hitted becasue of new reigon + _mid->cur_hit_cnt==0) //or ever hit a compile that refer a NOT-logic group { fill_maat_rule(&(result[result_cnt]), &(_mi_rule->db_c_rule->m_rule_head), _mi_rule->db_c_rule->service_defined ,_mi_rule->db_c_rule->m_rule_head.serv_def_len); @@ -245,6 +244,11 @@ int region_compile(_Maat_feather_t*feather,struct _INNER_scan_status_t *_mid,int compare_compile_id); alignment_int64_array_add(feather->hit_cnt,thread_num,1); } + if(region_hit_num==0&&result_cnt>0) + { + alignment_int64_array_add(feather->not_grp_hit_cnt, thread_num, 1); + + } return result_cnt; } @@ -540,7 +544,7 @@ Maat_feather_t Maat_feather(int max_thread_num,const char* table_info_path,void* feather->inner_mid_cnt=alignment_int64_array_alloc(max_thread_num); feather->hit_cnt=alignment_int64_array_alloc(max_thread_num); feather->orphan_group_saving=alignment_int64_array_alloc(max_thread_num); - feather->last_region_saving=alignment_int64_array_alloc(max_thread_num); + feather->not_grp_hit_cnt=alignment_int64_array_alloc(max_thread_num); feather->maat_version=0; feather->last_full_version=0; feather->base_grp_seq=0; diff --git a/src/entry/Maat_rule.cpp b/src/entry/Maat_rule.cpp index 3889ab0..62ba330 100644 --- a/src/entry/Maat_rule.cpp +++ b/src/entry/Maat_rule.cpp @@ -3773,7 +3773,7 @@ void *thread_rule_monitor(void *arg) alignment_int64_array_free(feather->outer_mid_cnt); alignment_int64_array_free(feather->hit_cnt); alignment_int64_array_free(feather->orphan_group_saving); - alignment_int64_array_free(feather->last_region_saving); + alignment_int64_array_free(feather->not_grp_hit_cnt); if(feather->input_mode==SOURCE_REDIS) { if(feather->mr_ctx.read_ctx) diff --git a/src/entry/Maat_stat.cpp b/src/entry/Maat_stat.cpp index 4d8b04a..61bf6d8 100644 --- a/src/entry/Maat_stat.cpp +++ b/src/entry/Maat_stat.cpp @@ -22,7 +22,7 @@ enum MAAT_FS_STATUS{ STATUS_SCAN_ERR_CNT, STATUS_ZOMBIE_RS_STREAM, STATUS_ORPHAN_GROUP_SAVING, - STATUS_LAST_REGION_SAVING, + STATUS_NOT_GROUP_HIT, STATUS_CMD_NUM, STATUS_CMD_Q_SIZE, STATUS_CMD_LINE_NUM @@ -62,9 +62,9 @@ void maat_stat_init(struct _Maat_feather_t* feather) feather->fs_status_id[STATUS_PLUGIN_CACHE_NUM]=FS_register(feather->stat_handle, FS_STYLE_STATUS, FS_CALC_CURRENT,"plug_cached"); feather->fs_status_id[STATUS_PLUGIN_ACC_NUM]=FS_register(feather->stat_handle, FS_STYLE_STATUS, FS_CALC_CURRENT,"plug_acc"); - feather->fs_status_id[STATUS_GROUP_REF_NUM]=FS_register(feather->stat_handle, FS_STYLE_STATUS, FS_CALC_CURRENT,"grp_num"); + feather->fs_status_id[STATUS_GROUP_REF_NUM]=FS_register(feather->stat_handle, FS_STYLE_STATUS, FS_CALC_CURRENT,"group"); feather->fs_status_id[STATUS_GROUP_REF_NOT_NUM]=FS_register(feather->stat_handle, FS_STYLE_STATUS, FS_CALC_CURRENT,"not_grp"); - feather->fs_status_id[STATUS_COMPILE_RULE_NUM]=FS_register(feather->stat_handle, FS_STYLE_STATUS, FS_CALC_CURRENT,"compile_num"); + feather->fs_status_id[STATUS_COMPILE_RULE_NUM]=FS_register(feather->stat_handle, FS_STYLE_STATUS, FS_CALC_CURRENT,"compile"); feather->fs_status_id[STATUS_POSTPONE_QSIZE]=FS_register(feather->stat_handle, FS_STYLE_STATUS, FS_CALC_CURRENT,"postponed"); feather->fs_status_id[STATUS_GARBAGE_QSIZE]=FS_register(feather->stat_handle, FS_STYLE_STATUS, FS_CALC_CURRENT,"garbage_num"); @@ -73,8 +73,8 @@ void maat_stat_init(struct _Maat_feather_t* feather) feather->fs_status_id[STATUS_INNER_MID_NUM]=FS_register(feather->stat_handle, FS_STYLE_STATUS, FS_CALC_CURRENT,"inner_mid"); feather->fs_status_id[STATUS_ZOMBIE_RS_STREAM]=FS_register(feather->stat_handle, FS_STYLE_STATUS, FS_CALC_CURRENT,"z_stream"); - feather->fs_status_id[STATUS_ORPHAN_GROUP_SAVING]=FS_register(feather->stat_handle, FS_STYLE_STATUS, FS_CALC_CURRENT,"orphan_grp_sv"); - feather->fs_status_id[STATUS_LAST_REGION_SAVING]=FS_register(feather->stat_handle, FS_STYLE_STATUS, FS_CALC_CURRENT,"last_rgn_sv"); + feather->fs_status_id[STATUS_ORPHAN_GROUP_SAVING]=FS_register(feather->stat_handle, FS_STYLE_STATUS, FS_CALC_CURRENT,"shutcut_sv"); + feather->fs_status_id[STATUS_NOT_GROUP_HIT]=FS_register(feather->stat_handle, FS_STYLE_STATUS, FS_CALC_CURRENT,"nt_grp_hit"); feather->fs_status_id[STATUS_TOTAL_SCAN_LEN]=FS_register(feather->stat_handle, FS_STYLE_STATUS, FS_CALC_CURRENT,"scan_bytes"); feather->fs_status_id[STATUS_TOTAL_SCAN_CNT]=FS_register(feather->stat_handle, FS_STYLE_STATUS, FS_CALC_CURRENT,"scan_times"); @@ -168,7 +168,7 @@ void maat_stat_output(struct _Maat_feather_t* feather) long long total_scan_cnt=0, total_cpu_time=0,total_stream_cnt=0,active_thread_num=0; long long table_stream_num=0,table_scan_cnt=0,table_input_bytes=0,table_scan_cpu_time=0,table_hit_cnt=0; long long outer_mid_cnt=0,inner_mid_cnt=0; - long long orphan_group_saving=0, last_region_saving=0; + long long orphan_group_saving=0, not_grp_hit_cnt=0; long long total_update_error=0,total_iconv_error=0; long long compile_rule_num=0, group_rule_num=0, not_group_rule_num=0, plugin_cache_num=0, plugin_acc_num=0; int i=0; @@ -184,7 +184,7 @@ void maat_stat_output(struct _Maat_feather_t* feather) outer_mid_cnt=alignment_int64_array_sum(feather->outer_mid_cnt,feather->scan_thread_num); inner_mid_cnt=alignment_int64_array_sum(feather->inner_mid_cnt,feather->scan_thread_num); orphan_group_saving=alignment_int64_array_sum(feather->orphan_group_saving,feather->scan_thread_num); - last_region_saving=alignment_int64_array_sum(feather->last_region_saving,feather->scan_thread_num); + not_grp_hit_cnt=alignment_int64_array_sum(feather->not_grp_hit_cnt,feather->scan_thread_num); FS_operate(feather->stat_handle, feather->fs_status_id[STATUS_VERSION], 0,FS_OP_SET,feather->maat_version); FS_operate(feather->stat_handle, feather->fs_status_id[STATUS_THRED_NUM], 0,FS_OP_SET,active_thread_num); @@ -192,7 +192,7 @@ void maat_stat_output(struct _Maat_feather_t* feather) FS_operate(feather->stat_handle, feather->fs_status_id[STATUS_OUTER_MID_NUM], 0,FS_OP_SET,outer_mid_cnt); FS_operate(feather->stat_handle, feather->fs_status_id[STATUS_INNER_MID_NUM], 0,FS_OP_SET,inner_mid_cnt); FS_operate(feather->stat_handle, feather->fs_status_id[STATUS_ORPHAN_GROUP_SAVING], 0,FS_OP_SET,orphan_group_saving); - FS_operate(feather->stat_handle, feather->fs_status_id[STATUS_LAST_REGION_SAVING], 0,FS_OP_SET,last_region_saving); + FS_operate(feather->stat_handle, feather->fs_status_id[STATUS_NOT_GROUP_HIT], 0,FS_OP_SET,not_grp_hit_cnt); FS_operate(feather->stat_handle, feather->fs_status_id[STATUS_CMD_NUM], 0,FS_OP_SET,feather->cmd_acc_num); FS_operate(feather->stat_handle, feather->fs_status_id[STATUS_CMD_Q_SIZE], 0,FS_OP_SET,feather->cmd_q_cnt); FS_operate(feather->stat_handle, feather->fs_status_id[STATUS_CMD_LINE_NUM], 0,FS_OP_SET,feather->line_cmd_acc_num); diff --git a/src/inc_internal/Maat_rule_internal.h b/src/inc_internal/Maat_rule_internal.h index 347a634..22ef3fb 100644 --- a/src/inc_internal/Maat_rule_internal.h +++ b/src/inc_internal/Maat_rule_internal.h @@ -391,7 +391,7 @@ struct _Maat_feather_t mcore_long_t hit_cnt; mcore_long_t thread_call_cnt;//size indicate by scan_thread_num, mcore_long_t orphan_group_saving; - mcore_long_t last_region_saving; + mcore_long_t not_grp_hit_cnt; long long total_scan_bytes; long long total_scan_cnt; long long update_err_cnt;//sum of the same name variable in each table