From 47a71011dbba9210e84abefd1fabb67a28a53be5 Mon Sep 17 00:00:00 2001 From: zhengchao Date: Wed, 13 Jul 2022 14:59:28 +0800 Subject: [PATCH] =?UTF-8?q?=E5=92=8Credis=E9=80=9A=E4=BF=A1=E5=8F=91?= =?UTF-8?q?=E7=94=9F=E9=94=99=E8=AF=AF=E5=90=8E=EF=BC=8C=E7=AB=8B=E5=8D=B3?= =?UTF-8?q?=E5=85=B3=E9=97=AD=E9=93=BE=E6=8E=A5=EF=BC=8C=E5=BE=85=E4=B8=8B?= =?UTF-8?q?=E6=AC=A1=E9=81=8D=E5=8E=86=E9=87=8D=E8=BF=9E=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/entry/Maat_command.cpp | 10 +++++++--- src/entry/Maat_rule.cpp | 2 +- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/entry/Maat_command.cpp b/src/entry/Maat_command.cpp index 2b51850..10ec908 100644 --- a/src/entry/Maat_command.cpp +++ b/src/entry/Maat_command.cpp @@ -1761,7 +1761,9 @@ void redis_monitor_traverse(long long version, struct source_redis_ctx* m rule_num=get_rm_key_list(mr_ctx->read_ctx, version, feather->load_version_from, &new_version, feather->table_mgr, &rule_list, &update_type, logger, feather->cumulative_update_off); if(rule_num<0)//redis communication error - { + { + redisFree(mr_ctx->read_ctx); + mr_ctx->read_ctx=NULL; return; } feather->load_version_from=0;//only valid for one time. @@ -1772,9 +1774,11 @@ void redis_monitor_traverse(long long version, struct source_redis_ctx* m if(rule_num>0) { ret=get_maat_redis_value(mr_ctx->read_ctx, rule_list, rule_num, logger, 0); - if(ret<0) + if(ret<0)//redis communication error { - MESA_handle_runtime_log(logger, RLOG_LV_INFO,maat_redis_monitor, "Get Redis value failed, abandon update."); + redisFree(mr_ctx->read_ctx); + mr_ctx->read_ctx=NULL; + MESA_handle_runtime_log(logger, RLOG_LV_INFO, maat_redis_monitor, "Get Redis value failed, abandon update and close connection."); goto clean_up; } for(i=0;i