jif
d28be12577
Honor per-thread unload delays in app-server ( #55270 )
...
## Why
Thread unload timing used the server-wide delay, ignoring per-thread configuration overrides. Clients need to control how long individual idle, unsubscribed threads remain loaded.
## What changed
- Resolve unload timing from each loaded thread's `thread_unload_delay_secs` configuration. Setting it to `0` allows immediate unloading once the thread has no subscribers or activity.
- Allow this runtime retention override in `experimentalPredictionMode` forks while continuing to reject other configuration overrides. Reject negative values and delays too large to schedule.
- Replace the source-specific immediate-unload behavior with explicit configuration.
## Testing
Extend integration coverage for per-thread delays, unloading after active turns finish, fork overrides, and invalid prediction-fork delays. Verify that immediate unloading preserves persistent history and that cold resumes and ordinary nested forks use their default delay instead of retaining the previous runtime's override.
GitOrigin-RevId: fcb82bd73a101260c51e2a8476f94320c23ac929
2026-10-19 12:30:33 +00:00
..
2026-10-07 06:07:47 +00:00
2026-10-19 12:30:33 +00:00
2026-09-22 16:16:15 +00:00
2026-10-16 19:13:40 +00:00
2026-10-01 05:16:40 +00:00
2026-10-18 22:43:56 +00:00
2026-10-17 04:02:21 +00:00
2026-10-12 19:02:36 +00:00
2026-10-10 19:22:11 +00:00
2026-10-13 19:45:14 +00:00
2026-09-11 17:43:36 +00:00
2026-09-29 23:09:32 +00:00
2026-10-15 22:31:50 +00:00
2026-10-04 06:46:50 +00:00
2026-10-16 19:26:46 +00:00
2026-10-17 04:02:21 +00:00
2026-10-15 19:02:34 +00:00
2026-10-15 19:02:34 +00:00
2026-10-03 00:02:11 +00:00
2026-10-15 15:08:28 +00:00
2026-10-08 17:10:20 +00:00
2026-10-14 17:25:26 +00:00
2026-10-15 07:00:34 +00:00
2026-09-03 01:46:37 +00:00
2026-09-19 19:14:11 +00:00
2026-10-16 19:13:40 +00:00
2026-10-15 19:02:34 +00:00
2026-10-16 19:13:40 +00:00
2026-09-20 16:16:46 +00:00
2026-10-15 21:29:41 +00:00
2026-09-19 17:46:43 +00:00
2026-10-06 19:51:39 +00:00
2026-10-01 18:05:05 +00:00
2026-10-15 21:30:56 +00:00
2026-10-15 19:11:06 +00:00
2026-10-15 07:00:34 +00:00
2026-10-15 07:00:34 +00:00
2026-10-10 22:28:01 +00:00
2026-10-10 22:28:01 +00:00
2026-09-03 16:21:10 +00:00
2026-09-20 18:26:14 +00:00
2026-09-22 16:23:59 +00:00
2026-10-10 22:28:01 +00:00
2026-09-07 20:25:30 +00:00
2026-10-07 19:28:14 +00:00
2026-10-14 17:36:18 +00:00
2026-10-15 19:09:34 +00:00
2026-09-19 20:24:41 +00:00
2026-09-17 04:53:51 +00:00
2026-10-16 19:13:40 +00:00
2026-10-15 19:02:09 +00:00
2026-09-28 22:20:29 +00:00
2026-09-28 22:20:29 +00:00
2026-09-18 22:40:37 +00:00
2026-09-18 22:40:37 +00:00
2026-09-14 15:30:22 +00:00
2026-09-22 16:23:59 +00:00
2026-10-16 19:13:40 +00:00
2026-10-14 17:36:18 +00:00
2026-10-15 19:11:32 +00:00
2026-10-11 17:43:08 +00:00
2026-10-12 19:02:36 +00:00
2026-09-21 03:38:46 +00:00
2026-09-04 20:38:08 +00:00
2026-10-11 23:44:43 +00:00
2026-09-20 16:52:02 +00:00
2026-09-22 16:23:59 +00:00
2026-09-03 00:45:48 +00:00
2026-09-29 04:13:14 +00:00
2026-10-06 21:29:35 +00:00
2026-10-02 21:42:23 +00:00
2026-09-08 19:06:42 +00:00
2026-10-15 07:00:34 +00:00
2026-09-20 00:04:04 +00:00
2026-09-22 16:07:38 +00:00
2026-10-09 17:15:58 +00:00
2026-10-17 23:34:04 +00:00
2026-10-17 23:34:04 +00:00
2026-10-14 03:52:30 +00:00
2026-10-13 16:57:54 +00:00
2026-10-13 16:57:54 +00:00
2026-10-18 22:43:56 +00:00
2026-09-19 20:24:20 +00:00
2026-10-10 19:43:24 +00:00
2026-09-21 19:55:40 +00:00
2026-09-21 19:55:40 +00:00
2026-10-15 19:51:22 +00:00
2026-10-15 19:51:22 +00:00
2026-09-26 21:57:55 +00:00
2026-09-29 23:09:32 +00:00
2026-09-19 00:14:40 +00:00
2026-10-13 16:57:54 +00:00
2026-09-03 16:21:10 +00:00
2026-10-01 15:57:03 +00:00
2026-09-10 00:57:33 +00:00
2026-09-20 00:06:25 +00:00
2026-10-08 20:49:14 +00:00
2026-10-14 17:36:18 +00:00
2026-09-26 21:58:39 +00:00
2026-09-24 17:21:45 +00:00
2026-10-15 15:08:28 +00:00
2026-09-24 17:55:29 +00:00
2026-10-13 04:42:04 +00:00
2026-10-14 22:58:37 +00:00
2026-10-13 19:55:22 +00:00
2026-10-13 19:55:22 +00:00
2026-10-15 19:02:34 +00:00
2026-10-15 19:02:34 +00:00
2026-10-16 19:13:40 +00:00
2026-10-10 22:28:01 +00:00
2026-10-15 19:01:43 +00:00
2026-10-07 22:10:23 +00:00
2026-09-24 17:43:15 +00:00
2026-09-11 00:59:27 +00:00
2026-10-11 06:08:41 +00:00
2026-10-02 02:27:25 +00:00
2026-10-15 03:48:33 +00:00
2026-10-02 02:27:25 +00:00
2026-09-24 17:55:29 +00:00
2026-10-03 00:02:11 +00:00
2026-10-15 15:08:28 +00:00
2026-10-15 15:08:28 +00:00
2026-10-15 15:08:28 +00:00
2026-10-02 21:42:23 +00:00
2026-09-22 18:17:39 +00:00
2026-10-04 06:46:50 +00:00
2026-10-01 22:17:51 +00:00
2026-10-06 19:29:40 +00:00
2026-10-16 19:13:40 +00:00
2026-10-07 06:07:47 +00:00
2026-09-19 19:14:11 +00:00
2026-09-19 19:14:11 +00:00
2026-10-10 22:28:01 +00:00
2026-10-16 19:13:40 +00:00
2026-10-02 01:34:23 +00:00
2026-09-29 04:13:14 +00:00
2026-10-08 20:49:14 +00:00
2026-09-29 04:13:14 +00:00
2026-09-29 04:13:14 +00:00
2026-10-16 19:13:40 +00:00
2026-10-16 19:13:40 +00:00
2026-09-22 16:35:30 +00:00
2026-09-02 22:45:19 +00:00
2026-10-16 19:13:40 +00:00
2026-09-20 16:16:46 +00:00
2026-09-16 22:14:53 +00:00
2026-10-01 18:05:05 +00:00
2026-09-30 19:22:34 +00:00
2026-09-30 19:22:34 +00:00
2026-10-06 03:35:55 +00:00
2026-10-16 19:13:40 +00:00
2026-10-16 19:13:40 +00:00
2026-09-04 20:38:08 +00:00
2026-09-17 02:46:49 +00:00
2026-10-14 01:07:57 +00:00
2026-10-16 19:13:40 +00:00
2026-10-16 19:13:40 +00:00
2026-10-01 05:25:31 +00:00
2026-09-20 20:20:00 +00:00
2026-10-15 19:11:32 +00:00
2026-10-13 19:55:22 +00:00
2026-10-01 05:18:04 +00:00
2026-09-26 22:50:16 +00:00
2026-10-16 19:13:40 +00:00
2026-10-13 19:55:22 +00:00
2026-10-01 05:18:04 +00:00
2026-09-30 19:00:00 +00:00
2026-10-08 21:01:06 +00:00
2026-10-15 21:35:40 +00:00
2026-09-29 20:46:44 +00:00
2026-10-01 05:18:04 +00:00
2026-10-01 05:18:04 +00:00
2026-10-11 15:38:44 +00:00
2026-09-20 03:02:02 +00:00
2026-10-12 17:14:59 +00:00
2026-09-20 03:02:25 +00:00
2026-09-28 20:59:25 +00:00
2026-09-27 17:59:57 +00:00
2026-09-27 17:59:57 +00:00
2026-10-01 18:05:05 +00:00
2026-10-07 06:07:47 +00:00
2026-10-06 16:56:39 +00:00
2026-10-01 07:08:19 +00:00
2026-10-09 00:04:15 +00:00
2026-10-09 00:04:15 +00:00
2026-10-13 04:42:04 +00:00
2026-09-23 01:20:29 +00:00
2026-10-14 22:58:37 +00:00
2026-10-14 03:52:30 +00:00
2026-10-08 18:56:04 +00:00
2026-10-10 18:50:34 +00:00
2026-09-18 22:51:10 +00:00
2026-10-02 07:21:07 +00:00
2026-09-19 19:11:54 +00:00
2026-10-10 22:28:01 +00:00
2026-09-11 16:20:50 +00:00
2026-09-11 16:20:50 +00:00
2026-09-20 00:04:04 +00:00
2026-10-01 01:35:40 +00:00
2026-10-01 01:35:40 +00:00
2026-10-15 03:48:33 +00:00
2026-10-15 07:00:34 +00:00
2026-09-20 00:04:04 +00:00
2026-10-04 06:46:50 +00:00
2026-10-15 07:00:34 +00:00
2026-09-11 17:43:36 +00:00
2026-10-13 19:55:22 +00:00
2026-10-15 07:00:34 +00:00
2026-10-11 15:50:16 +00:00
2026-10-01 01:35:40 +00:00
2026-09-29 04:13:14 +00:00
2026-09-20 00:04:04 +00:00
2026-09-16 03:43:59 +00:00
2026-09-20 00:04:04 +00:00
2026-09-19 17:03:26 +00:00
2026-09-16 03:43:59 +00:00
2026-09-17 18:20:28 +00:00
2026-09-17 18:20:28 +00:00
2026-10-14 17:36:18 +00:00
2026-09-08 23:37:26 +00:00
2026-09-05 18:06:26 +00:00
2026-10-16 19:13:40 +00:00
2026-09-19 20:22:48 +00:00
2026-09-19 20:24:20 +00:00