Commit d2ef7c6
**Which issue(s) this PR fixes**:
Backport #5327
Fixes #
**What this PR does / why we need it**:
Fix thread and resource leaks in test_supervisor.rb by ensuring proper
shutdown for socket manager.
Before:
```
$ ruby -Ilib:test -e "at_exit { puts '--- Thread count at exit: ' + Thread.list.size.to_s; pp Thread.list }; require './test/test_supervisor.rb'"
...
====================================================================================================================================================================================================
Omission: Only for Windows. [test_files_for_each_process_with_rotate_on_windows(SupervisorTest::init logger)]
/home/watson/src/fluentd/test/test_supervisor.rb:881:in 'SupervisorTest::TEST_U3VwZXJ2aXNvclRlc3Q6OmluaXQgbG9nZ2Vy#test_files_for_each_process_with_rotate_on_windows'
====================================================================================================================================================================================================
Finished in 23.457651502 seconds.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
74 tests, 195 assertions, 0 failures, 0 errors, 0 pendings, 8 omissions, 0 notifications
100% passed
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
3.15 tests/s, 8.31 assertions/s
--- Thread count at exit: 10
[#<Thread:0x00007f34974b7fa8 run>,
#<Thread:0x00007f347932bd88 /home/watson/.rbenv/versions/4.0.2/lib/ruby/gems/4.0.0/gems/serverengine-2.4.0/lib/serverengine/socket_manager_unix.rb:125 sleep>,
#<Thread:0x00007f347947e050 /home/watson/.rbenv/versions/4.0.2/lib/ruby/gems/4.0.0/gems/webrick-1.9.2/lib/webrick/utils.rb:158 sleep_forever>,
#<Thread:0x00007f34794da008 /home/watson/.rbenv/versions/4.0.2/lib/ruby/gems/4.0.0/gems/serverengine-2.4.0/lib/serverengine/socket_manager_unix.rb:125 sleep>,
#<Thread:0x00007f347951d1f0 /home/watson/.rbenv/versions/4.0.2/lib/ruby/gems/4.0.0/gems/serverengine-2.4.0/lib/serverengine/socket_manager_unix.rb:125 sleep>,
#<Thread:0x00007f347954f970 /home/watson/.rbenv/versions/4.0.2/lib/ruby/gems/4.0.0/gems/serverengine-2.4.0/lib/serverengine/socket_manager_unix.rb:125 sleep>,
#<Thread:0x00007f34795799c8 /home/watson/.rbenv/versions/4.0.2/lib/ruby/gems/4.0.0/gems/serverengine-2.4.0/lib/serverengine/socket_manager_unix.rb:125 sleep>,
#<Thread:0x00007f3479580cc8 /home/watson/.rbenv/versions/4.0.2/lib/ruby/gems/4.0.0/gems/serverengine-2.4.0/lib/serverengine/socket_manager_unix.rb:125 sleep>,
#<Thread:0x00007f34795af938 /home/watson/src/fluentd/lib/fluent/supervisor.rb:419 sleep>,
#<Thread:0x00007f34795a23a0 /home/watson/.rbenv/versions/4.0.2/lib/ruby/gems/4.0.0/gems/serverengine-2.4.0/lib/serverengine/socket_manager_unix.rb:125 sleep>]
```
After:
```
$ ruby -Ilib:test -e "at_exit { puts '--- Thread count at exit: ' + Thread.list.size.to_s; pp Thread.list }; require './test/test_supervisor.rb'"
...
====================================================================================================================================================================================================
Omission: Only for Windows. [test_files_for_each_process_with_rotate_on_windows(SupervisorTest::init logger)]
/home/watson/src/fluentd/test/test_supervisor.rb:881:in 'SupervisorTest::TEST_U3VwZXJ2aXNvclRlc3Q6OmluaXQgbG9nZ2Vy#test_files_for_each_process_with_rotate_on_windows'
====================================================================================================================================================================================================
Finished in 23.451976513 seconds.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
74 tests, 195 assertions, 0 failures, 0 errors, 0 pendings, 8 omissions, 0 notifications
100% passed
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
3.16 tests/s, 8.31 assertions/s
--- Thread count at exit: 3
[#<Thread:0x00007fcf1a057fa8 run>,
#<Thread:0x00007fcefcc0d938 /home/watson/.rbenv/versions/4.0.2/lib/ruby/gems/4.0.0/gems/webrick-1.9.2/lib/webrick/utils.rb:158 sleep_forever>,
#<Thread:0x00007fcefcd3ec58 /home/watson/src/fluentd/lib/fluent/supervisor.rb:419 sleep>]
```
**Docs Changes**:
N/A
**Release Note**:
N/a
Signed-off-by: Shizuo Fujita <fujita@clear-code.com>
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Shizuo Fujita <fujita@clear-code.com>
1 parent 4903074 commit d2ef7c6
1 file changed
Lines changed: 5 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
| 6 | + | |
6 | 7 | | |
7 | 8 | | |
8 | 9 | | |
| |||
919 | 920 | | |
920 | 921 | | |
921 | 922 | | |
| 923 | + | |
922 | 924 | | |
923 | 925 | | |
924 | 926 | | |
| |||
1013 | 1015 | | |
1014 | 1016 | | |
1015 | 1017 | | |
| 1018 | + | |
1016 | 1019 | | |
1017 | 1020 | | |
1018 | 1021 | | |
| |||
1043 | 1046 | | |
1044 | 1047 | | |
1045 | 1048 | | |
| 1049 | + | |
| 1050 | + | |
1046 | 1051 | | |
1047 | 1052 | | |
1048 | 1053 | | |
| |||
0 commit comments