Skip to content

Fixes #6703:修复 Admin 关闭时未释放上游健康检查线程池 - #6921

Open
BobSong-dev wants to merge 2 commits into
apache:masterfrom
BobSong-dev:fix/6703-close-upstream-check-executor
Open

Fixes #6703:修复 Admin 关闭时未释放上游健康检查线程池#6921
BobSong-dev wants to merge 2 commits into
apache:masterfrom
BobSong-dev:fix/6703-close-upstream-check-executor

Conversation

@BobSong-dev

Copy link
Copy Markdown
Contributor

Fixes #6703

背景

UpstreamCheckService 在启动健康检查任务时会创建两个线程池:

  • executor:负责定时调度
  • invokeExecutor:负责执行实际的健康检查请求

原来的关闭逻辑只停止了 executorinvokeExecutor 没有被关闭。这样在 Admin 容器退出后,健康检查相关的后台任务仍可能继续运行。

修改内容

close() 中补充关闭 invokeExecutor,并保留空值判断,避免未初始化时出现异常。

同时补充单测,确认关闭流程会停止两个线程池。

验证

验证已通过:
UpstreamCheckServiceTest: 10 tests run Failures: 0 Errors: 0 Skipped: 1(原有禁用用例) BUILD SUCCESS

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[BUG] UpstreamCheckService.close() leaks invokeExecutor (only shuts down executor)

1 participant