Adam Perry @ OpenAI
d25c114d49
Bound in-flight file opens in exec-server ( #50162 )
...
## Why
The per-connection limit of 128 file read handles was checked only after opening the file, leaving pending opens outside the limit.
## What changed
Reserve a semaphore permit before polling the file-open future, counting pending opens and registered handles against the same limit. Release capacity when an open fails or is cancelled, or when a handle closes, even if a read still retains the file.
Use synchronous handle-table locks that never cross an await, and recheck duplicate IDs after opening to preserve the winning handle during concurrent opens.
## Testing
Add tests for stalled-open progress, pending-open admission limits, permit cleanup after failure or cancellation, capacity reuse while a file remains in use, and concurrent duplicate IDs.
GitOrigin-RevId: caabf38c74dda5951f2fc75234a7149daaa01263
2026-10-02 03:31:52 +00:00
..
2026-09-29 22:50:07 +00:00
2026-09-30 17:33:59 +00:00
2026-09-30 05:29:56 +00:00
2026-09-30 00:51:39 +00:00
2026-10-01 20:47:05 +00:00
2026-09-26 23:17:41 +00:00
2026-10-01 18:05:05 +00:00
2026-10-01 20:47:05 +00:00
2026-09-22 06:36:09 +00:00
2026-09-29 18:26:40 +00:00
2026-10-01 15:57:03 +00:00
2026-09-18 00:25:37 +00:00
2026-09-21 22:58:49 +00:00
2026-09-23 00:47:34 +00:00
2026-09-25 00:20:02 +00:00
2026-09-30 18:49:29 +00:00
2026-10-01 18:05:05 +00:00
2026-10-01 22:32:29 +00:00
2026-09-29 13:58:09 +00:00
2026-09-29 03:32:19 +00:00
2026-09-25 16:57:42 +00:00
2026-10-01 15:57:03 +00:00
2026-09-25 15:42:35 +00:00
2026-09-25 20:34:52 +00:00
2026-09-30 16:57:01 +00:00
2026-09-25 00:20:02 +00:00
2026-09-24 01:50:36 +00:00
2026-10-01 17:10:03 +00:00
2026-10-01 18:05:05 +00:00
2026-09-18 22:40:37 +00:00
2026-10-02 00:45:26 +00:00
2026-10-01 03:31:48 +00:00
2026-09-23 22:20:34 +00:00
2026-10-01 15:57:03 +00:00
2026-10-01 08:57:53 +00:00
2026-10-02 03:31:52 +00:00
2026-10-01 12:41:39 +00:00
2026-10-01 21:05:10 +00:00
2026-09-30 11:59:13 +00:00
2026-10-01 21:05:10 +00:00
2026-10-01 04:04:44 +00:00
2026-10-01 09:52:54 +00:00
2026-10-01 00:43:55 +00:00
2026-10-01 15:57:03 +00:00
2026-10-01 14:48:02 +00:00
2026-10-01 01:13:53 +00:00
2026-10-01 11:01:37 +00:00
2026-10-01 22:32:29 +00:00
2026-09-29 22:24:09 +00:00
2026-10-01 18:05:33 +00:00
2026-10-01 15:57:03 +00:00
2026-09-28 14:46:32 +00:00
2026-09-28 06:30:53 +00:00
2026-10-01 15:57:03 +00:00
2026-09-29 18:50:36 +00:00
2026-10-01 01:38:27 +00:00
2026-10-01 18:05:05 +00:00
2026-10-01 18:05:05 +00:00
2026-09-30 17:45:25 +00:00
2026-09-23 22:20:34 +00:00
2026-09-29 01:14:41 +00:00
2026-10-01 15:57:53 +00:00
2026-10-01 15:57:03 +00:00
2026-09-29 01:14:41 +00:00
2026-10-02 00:45:51 +00:00
2026-10-01 11:09:12 +00:00
2026-10-01 15:57:03 +00:00
2026-09-24 18:08:31 +00:00
2026-09-28 15:58:17 +00:00
2026-09-27 03:26:57 +00:00
2026-10-01 19:55:36 +00:00
2026-10-02 00:46:14 +00:00
2026-10-01 04:16:43 +00:00
2026-10-01 20:47:05 +00:00
2026-10-01 06:29:03 +00:00
2026-10-02 02:27:25 +00:00
2026-10-01 18:05:05 +00:00
2026-10-01 18:05:05 +00:00
2026-10-01 15:57:03 +00:00
2026-09-23 04:25:28 +00:00
2026-09-22 23:37:39 +00:00
2026-10-01 18:05:05 +00:00
2026-10-01 18:05:05 +00:00
2026-09-23 00:47:07 +00:00
2026-10-01 15:57:03 +00:00
2026-10-01 22:32:29 +00:00
2026-10-01 22:32:29 +00:00
2026-09-30 03:33:43 +00:00