diff --git a/src/share/ob_alive_server_tracer.cpp b/src/share/ob_alive_server_tracer.cpp index ba364c1cf..7f70b949e 100644 --- a/src/share/ob_alive_server_tracer.cpp +++ b/src/share/ob_alive_server_tracer.cpp @@ -134,9 +134,9 @@ int ObAliveServerMap::refresh(common::ObIArray &active_server_list, LOG_WARN("invalid argument, empty server list", K(ret)); } else { ObLatchWGuard guard(lock_, ObLatchIds::ALIVE_SERVER_TRACER_LOCK); - if (OB_FAIL(refresh_server_list(active_server_list, active_servers_))) { + if (OB_FAIL(refresh_server_list(active_server_list, active_servers_, "active"))) { LOG_WARN("fail to refresh server list", KR(ret), K(active_server_list)); - } else if (OB_FAIL(refresh_server_list(inactive_server_list, inactive_servers_))) { + } else if (OB_FAIL(refresh_server_list(inactive_server_list, inactive_servers_, "inactive"))) { LOG_WARN("fail to refresh server list", KR(ret), K(inactive_server_list)); } if (OB_SUCC(ret)) { @@ -147,12 +147,16 @@ int ObAliveServerMap::refresh(common::ObIArray &active_server_list, } int ObAliveServerMap::refresh_server_list(const ObIArray &server_list, - hash::ObHashSet &servers) + hash::ObHashSet &servers, + const char *server_list_type) { int ret = OB_SUCCESS; if (!is_inited_) { ret = OB_NOT_INIT; LOG_WARN("not init", K(ret)); + } else if (OB_ISNULL(server_list_type)) { + ret = OB_INVALID_ARGUMENT; + LOG_WARN("server_list_type is null", K(ret)); } else { FOREACH_CNT_X(s, server_list, OB_SUCC(ret)) { ret = servers.exist_refactored(*s); @@ -160,12 +164,12 @@ int ObAliveServerMap::refresh_server_list(const ObIArray &server_list, ret = OB_SUCCESS; } else if (OB_HASH_NOT_EXIST == ret) { if (OB_FAIL(servers.set_refactored(*s))) { - LOG_WARN("add server hash set failed", K(ret), "server", *s); + LOG_WARN("add server hash set failed", KCSTRING(server_list_type), K(ret), "server", *s); } else { - LOG_INFO("add server to alive server map", "server", *s); + _LOG_INFO("add server to %s server map: %s", server_list_type, to_cstring(s)); } } else { - LOG_WARN("hash set exist failed", K(ret), "server", *s); + LOG_WARN("hash set exist failed", KCSTRING(server_list_type), K(ret), "server", *s); } } if (OB_SUCC(ret) && servers.size() > server_list.count()) { @@ -173,15 +177,15 @@ int ObAliveServerMap::refresh_server_list(const ObIArray &server_list, FOREACH_X(s, servers, OB_SUCC(ret)) { if (!has_exist_in_array(server_list, s->first)) { if (OB_FAIL(remove_set.push_back(s->first))) { - LOG_WARN("add server to array failed", K(ret), "server", s->first); + LOG_WARN("add server to array failed", KCSTRING(server_list_type), K(ret), "server", s->first); } } } FOREACH_X(s, remove_set, OB_SUCC(ret)) { if (OB_FAIL(servers.erase_refactored(*s))) { - LOG_WARN("erase from hash set failed", K(ret), "server", *s); + LOG_WARN("erase from hash set failed", KCSTRING(server_list_type), K(ret), "server", *s); } else { - LOG_INFO("remove server from alive server map", "server", *s); + _LOG_INFO("remove server from %s server map: %s", server_list_type, to_cstring(*s)); } } } diff --git a/src/share/ob_alive_server_tracer.h b/src/share/ob_alive_server_tracer.h index 11b9faa95..b6b8cd016 100644 --- a/src/share/ob_alive_server_tracer.h +++ b/src/share/ob_alive_server_tracer.h @@ -67,7 +67,8 @@ public: private: virtual int refresh_server_list(const common::ObIArray &server_list, - common::hash::ObHashSet &servers); + common::hash::ObHashSet &servers, + const char *server_list_type); private: bool is_inited_; mutable common::ObLatch lock_; diff --git a/src/storage/tx/ob_trans_part_ctx.cpp b/src/storage/tx/ob_trans_part_ctx.cpp index d13a89c97..26e3b83ad 100644 --- a/src/storage/tx/ob_trans_part_ctx.cpp +++ b/src/storage/tx/ob_trans_part_ctx.cpp @@ -1241,6 +1241,7 @@ int ObPartTransCtx::check_scheduler_status() *this); // scheduler已宕机 } else if (!is_alive) { + TRANS_LOG(WARN, "scheduler server is not alive, tx ctx will do gc"); if (OB_FAIL(gc_ctx_())) { TRANS_LOG(WARN, "force kill part_ctx error", KR(ret), "context", *this); }