optimize rcu compile runtime

This commit is contained in:
liuwentan
2023-04-14 11:32:59 +08:00
parent ffc1740a00
commit 923b4c4168
8 changed files with 637 additions and 472 deletions

View File

@@ -75,10 +75,11 @@ struct maat_item {
struct compile_rule {
long long magic_num;
long long compile_id;
char table_name[NAME_MAX];
char *table_line;
size_t table_line_len;
int declared_clause_num;
struct compile_schema *ref_table;
struct compile_schema *ref_schema;
void **ex_data;
};
@@ -272,7 +273,7 @@ void *rule_monitor_loop(void *arg);
long long maat_runtime_get_sequence(struct maat_runtime *maat_rt, const char *key);
int maat_read_full_config(struct maat *maat_instance);
void maat_read_full_config(struct maat *maat_instance);
/* maat command API for internal */
redisContext *maat_cmd_connect_redis(const char *redis_ip, int redis_port,

View File

@@ -50,6 +50,8 @@ int rcu_hash_del(struct rcu_hash_table *htable, const char *key, size_t key_len)
*/
void *rcu_hash_find(struct rcu_hash_table *htable, const char *key, size_t key_len);
void *rcu_updating_hash_find(struct rcu_hash_table *htable, const char *key, size_t key_len);
/**
* @brief list all effective nodes
*
@@ -57,6 +59,8 @@ void *rcu_hash_find(struct rcu_hash_table *htable, const char *key, size_t key_l
*/
size_t rcu_hash_list(struct rcu_hash_table *htable, void ***data_array);
size_t rcu_updating_hash_list(struct rcu_hash_table *htable, void ***data_array);
size_t rcu_hash_count(struct rcu_hash_table *htable);
/**