jif
8751fd3fcb
Shut down superseded MCP managers on refresh ( #29608 )
...
## Summary
MCP refresh replaced the published connection manager without shutting
down the manager it superseded. If another task retained that old
manager, its stdio MCP processes stayed alive and accumulated across
refreshes.
Atomically swap in the refreshed manager, then explicitly shut down the
exact manager returned by the swap. Add a process-level regression test
that retains the old manager during refresh and verifies its stdio
process exits while the replacement remains available.
## Context
Explicit cleanup was lost when manager publication moved to `ArcSwap`.
Dropping the old manager is not a reliable shutdown boundary because
active callers can retain its `Arc` and underlying client process
handles.
History
..
2026-06-08 11:39:08 +02:00
2026-06-09 12:48:04 -07:00
2026-05-26 20:59:47 -07:00
2026-06-11 18:16:39 -07:00
2026-06-22 13:19:40 -07:00
2026-06-22 10:27:23 -07:00
2026-05-07 15:44:17 -07:00
2026-06-23 10:13:27 -07:00
2026-06-18 11:54:49 -07:00
2026-06-11 21:28:52 -07:00
2026-06-22 19:51:03 -07:00
2026-06-22 13:55:32 -07:00
2026-06-22 13:03:11 -07:00
2026-06-23 00:02:33 +00:00
2026-06-18 19:31:19 +00:00
2026-06-11 18:16:39 -07:00
2026-05-08 04:07:59 +00:00
2026-06-22 04:25:07 -07:00
2026-06-13 21:43:39 -07:00
2026-06-18 20:29:01 +00:00
2026-06-23 10:17:52 +02:00
2026-06-22 13:19:40 -07:00
2026-06-22 13:03:11 -07:00
2026-06-11 18:16:39 -07:00
2026-06-11 18:16:39 -07:00
2026-06-21 15:35:01 -07:00
2026-06-11 22:37:26 -07:00
2026-06-12 02:49:17 -07:00
2026-06-22 23:56:16 -07:00
2026-06-01 21:25:42 -07:00
2026-06-22 17:56:04 -07:00
2026-05-07 15:44:17 -07:00
2026-06-15 20:10:53 -07:00
2026-06-23 18:29:27 +01:00
2026-06-21 13:35:25 -07:00
2026-06-23 01:33:51 +00:00
2026-06-18 20:29:01 +00:00
2026-06-22 11:11:25 -07:00
2026-06-23 18:29:27 +01:00
2026-06-17 17:20:53 -07:00
2026-06-22 16:01:27 -07:00
2026-06-21 14:04:18 +02:00
2026-06-05 15:41:13 -07:00
2026-06-22 13:03:11 -07:00
2026-06-23 00:02:33 +00:00
2026-06-15 21:53:47 -07:00
2026-06-13 21:43:39 -07:00
2026-06-22 23:56:16 -07:00
2026-06-19 12:47:53 -07:00
2026-06-22 11:11:25 -07:00
2026-06-23 10:13:27 -07:00
2026-05-26 15:59:25 -07:00
2026-05-07 15:44:17 -07:00
2026-06-17 10:00:42 -07:00
2026-05-28 23:09:55 -07:00
2026-06-12 16:58:42 -07:00
2026-06-15 15:12:26 -07:00
2026-06-03 19:08:19 -07:00
2026-06-12 19:52:49 +00:00
2026-06-18 14:09:38 +02:00
2026-05-07 15:44:17 -07:00
2026-06-22 13:19:40 -07:00
2026-06-22 03:39:14 +00:00
2026-06-22 11:11:25 -07:00
2026-06-04 09:53:08 -04:00
2026-06-23 00:53:09 +00:00
2026-06-05 17:36:18 -07:00
2026-06-22 13:03:11 -07:00
2026-06-22 14:16:48 -07:00
2026-06-04 09:53:08 -04:00
2026-06-22 23:56:16 -07:00
2026-06-22 16:01:27 -07:00
2026-05-25 17:26:10 -03:00
2026-06-18 16:13:07 -07:00
2026-06-23 10:23:25 -04:00
2026-05-07 15:44:17 -07:00
2026-04-22 22:24:12 -07:00
2026-05-07 15:44:17 -07:00
2026-06-23 15:25:28 +01:00
2026-06-23 09:26:30 -07:00
2026-06-22 23:56:16 -07:00
2026-06-22 19:33:28 +02:00
2026-05-26 20:59:47 -07:00
2026-06-12 19:52:49 +00:00
2026-06-23 03:09:20 +00:00
2026-06-11 18:16:39 -07:00
2026-06-22 16:01:27 -07:00
2026-06-23 12:18:25 +02:00
2026-05-07 15:44:17 -07:00
2026-05-13 21:23:19 +00:00
2026-05-07 15:44:17 -07:00
2026-06-20 19:13:42 -07:00
2026-06-23 09:26:30 -07:00
2026-06-22 11:11:25 -07:00
2026-06-23 01:33:51 +00:00
2026-05-07 15:44:17 -07:00
2026-06-23 14:59:39 +01:00
2026-06-13 21:43:39 -07:00
2026-06-13 21:43:39 -07:00
2026-06-18 11:04:30 -07:00
2025-10-19 20:41:55 -04:00
2026-04-24 17:49:29 -07:00
2026-06-23 09:26:30 -07:00
2026-06-23 15:25:28 +01:00
2026-04-20 22:41:54 -07:00
2025-10-17 14:58:27 -07:00
2026-02-20 19:32:15 -08:00
2026-06-11 18:16:39 -07:00
2026-06-04 09:16:03 -07:00
2026-05-26 20:59:47 -07:00
2025-05-07 08:37:48 -07:00