bool Matcher对输入的item id(clause id)排序和去重,会改变外部ut_array内容,可能造成风险, 去除bool matcher 中的这部分代码。

This commit is contained in:
zhengchao
2021-06-29 21:18:18 +08:00
parent 00f782b0cf
commit 1c08363dc4
5 changed files with 14 additions and 11 deletions

View File

@@ -331,7 +331,7 @@ static void Maat_hierarchy_region_free(struct Maat_hierarchy* hier, struct Maat_
struct Maat_hierarchy* Maat_hierarchy_new(int thread_num, void* mesa_handle_logger, struct Maat_garbage_bin* bin)
{
struct Maat_hierarchy* hier=ALLOC(struct Maat_hierarchy, 1);
int ret=0;
UNUSED int ret=0;
hier->logger=mesa_handle_logger;
hier->thread_num=thread_num;
hier->version=time(NULL);

View File

@@ -57,7 +57,7 @@ extern "C"
}
#endif
int MAAT_FRAME_VERSION_3_2_1_20210613=1;
int MAAT_FRAME_VERSION_3_2_2_20210629=1;
int is_valid_table_name(const char* str)
{
@@ -1425,7 +1425,7 @@ int del_region_rule(struct Maat_table_schema* table, int region_id, int group_id
struct Maat_table_runtime* table_rt=NULL;
struct op_expr_t* op_expr=NULL;
int ret=0;
UNUSED int ret=0;
struct Maat_region_inner* region=NULL;
region=(struct Maat_region_inner*)Maat_hierarchy_region_dettach_user_data(maat_scanner->hier, region_id);
if(region==NULL)

View File

@@ -150,13 +150,13 @@ int bool_matcher_match(struct bool_matcher * matcher, unsigned int thread_id, un
if(matcher==NULL) return -1;
if(item_num==0) return 0;
sort(item_ids, item_ids+item_num);
size_t J=0;
for(unsigned int i=1; i<item_num; i++)
{
if(item_ids[i]!=item_ids[J]) item_ids[++J]=item_ids[i];
}
item_num=J+1;
// sort(item_ids, item_ids+item_num);
// size_t J=0;
// for(unsigned int i=1; i<item_num; i++)
// {
// if(item_ids[i]!=item_ids[J]) item_ids[++J]=item_ids[i];
// }
// item_num=J+1;
unsigned int r=0;