Anton Panasenko
fcdae21073
Support metadata staging for reserved thread IDs ( #38819 )
...
## Why
Callers need to associate host-owned state with a thread before Core starts it.
## What changed
- Add `ThreadManager::reserve_thread_id` and allow new threads to start with the reserved ID. Reject reserved IDs when resuming an existing thread.
- Let thread stores stage metadata for a reserved ID. The local store merges staged values into the first successful metadata update and then removes them.
- Clear staged metadata when an unmaterialized thread shuts down or is discarded, and require the state database for staging.
## Testing
- Cover reserved ID generation and resume validation.
- Cover metadata persistence, merging, rollout-compatible updates, cleanup, and invalid staging requests.
GitOrigin-RevId: 3f9bc48f0f7764011cc90ea01349e497dda0a9e3
2026-08-16 00:57:28 +00:00
..
2026-08-14 18:26:20 +00:00
2026-07-06 14:29:19 -07:00
2026-04-07 00:32:41 +00:00
2026-08-14 21:17:29 +00:00
2026-08-14 18:26:20 +00:00
2026-08-14 18:26:20 +00:00
2026-08-08 00:59:39 +00:00
2026-08-15 16:58:08 +00:00
2026-06-24 21:08:39 -07:00
2026-08-14 02:54:38 +00:00
2026-07-22 19:43:35 +00:00
2026-08-14 22:28:33 +00:00
2026-08-16 00:57:28 +00:00
2026-08-12 00:41:53 +00:00
2026-08-13 23:38:02 +00:00
2026-08-15 16:58:08 +00:00
2026-08-13 00:39:04 +00:00
2026-03-24 18:10:53 -07:00
2026-07-28 23:49:37 +00:00
2026-07-15 03:27:16 +00:00
2026-08-15 00:43:44 +00:00
2026-08-14 00:22:54 +00:00
2026-06-23 00:02:33 +00:00
2026-08-05 06:38:57 +00:00
2026-05-08 12:36:02 -07:00
2026-07-22 21:00:01 +00:00
2026-08-10 10:50:49 +00:00
2026-08-14 05:49:33 +00:00
2026-08-11 19:35:05 +00:00
2026-08-14 16:28:42 +00:00
2026-08-16 00:57:28 +00:00
2026-08-15 01:39:04 +00:00
2026-03-12 08:16:36 -07:00
2026-04-01 23:06:24 -07:00
2026-07-23 19:32:26 +00:00
2026-08-05 18:19:22 +00:00
2026-08-11 19:30:12 +00:00
2026-08-14 05:49:33 +00:00
2026-08-14 05:49:33 +00:00
2026-08-13 22:21:18 +00:00
2026-08-11 19:30:12 +00:00
2026-08-11 19:30:12 +00:00
2026-07-30 16:44:18 +00:00
2026-08-11 19:30:12 +00:00
2026-08-13 20:20:01 +00:00
2026-08-13 20:20:01 +00:00
2026-03-12 00:35:21 -07:00
2026-06-24 22:17:43 -07:00
2026-07-06 11:20:32 -07:00
2026-07-06 11:20:32 -07:00
2026-08-15 01:39:04 +00:00
2026-08-04 00:51:53 +00:00
2026-08-14 18:26:20 +00:00
2026-08-10 01:44:30 +00:00
2026-08-10 17:02:19 +00:00
2026-08-08 00:59:39 +00:00
2026-07-21 19:17:18 +00:00
2026-08-08 00:59:39 +00:00
2026-08-14 00:18:29 +00:00
2026-08-14 22:28:33 +00:00
2026-05-13 11:31:27 +02:00
2026-08-05 20:23:35 +00:00
2026-08-12 20:05:49 +00:00
2026-08-06 03:15:08 +00:00
2026-08-06 03:15:08 +00:00
2026-04-28 13:03:28 +02:00
2026-08-13 19:25:05 +00:00
2026-08-15 00:43:44 +00:00
2026-08-13 22:42:12 +00:00
2026-05-26 20:59:47 -07:00
2026-08-15 00:43:44 +00:00
2026-08-14 15:24:10 +00:00
2026-08-06 13:37:07 +00:00
2026-08-06 13:37:07 +00:00
2026-08-05 21:45:33 +00:00
2026-08-05 04:07:59 +00:00
2026-03-25 11:05:35 -07:00
2026-07-06 14:51:34 -07:00
2026-04-09 10:53:06 -07:00
2026-04-24 17:49:29 -07:00
2026-07-20 13:45:29 +00:00
2026-08-15 16:58:08 +00:00
2026-07-29 18:37:22 +00:00
2026-08-11 17:58:11 +00:00
2026-07-22 19:43:35 +00:00
2026-08-01 01:17:26 +00:00
2026-06-01 18:45:07 +00:00
2026-08-14 02:32:05 +00:00
2026-07-23 19:32:26 +00:00
2026-08-14 16:23:17 +00:00
2026-08-03 09:46:38 +00:00
2026-07-23 19:19:35 +00:00
2026-08-03 12:03:33 +00:00
2026-08-03 12:03:33 +00:00
2026-07-21 19:17:18 +00:00
2026-05-15 10:58:50 -07:00
2026-06-16 14:34:54 +02:00
2026-06-16 14:34:54 +02:00
2026-07-23 18:22:41 +00:00
2026-08-15 16:58:08 +00:00
2026-07-20 08:29:12 +00:00
2026-08-13 19:35:22 +00:00
2026-06-15 08:18:13 -07:00
2026-06-15 08:18:13 -07:00
2026-08-11 21:09:29 +00:00
2026-08-13 11:11:26 +00:00
2026-05-04 11:46:03 -07:00
2026-07-31 17:24:33 +00:00
2026-07-28 23:49:37 +00:00
2026-08-04 15:23:43 +00:00
2026-08-16 00:57:28 +00:00
2026-08-16 00:57:28 +00:00
2026-08-11 19:30:12 +00:00
2026-08-11 19:30:12 +00:00
2026-07-22 02:19:45 +00:00
2026-07-22 02:19:45 +00:00
2026-08-14 02:32:05 +00:00
2026-08-14 02:32:05 +00:00
2026-07-28 23:49:37 +00:00
2026-07-25 16:06:54 +00:00
2026-04-20 22:39:17 -07:00
2026-06-16 22:17:24 -07:00
2026-05-14 16:54:59 -07:00
2026-07-20 13:45:29 +00:00
2026-07-20 13:45:29 +00:00
2026-05-28 15:26:55 -07:00
2026-05-28 15:26:55 -07:00
2026-07-21 21:06:04 +00:00
2026-07-21 21:06:04 +00:00