-
-
Notifications
You must be signed in to change notification settings - Fork 29
Open
Description
Calling Process::start() can sometimes lead to AMPHP triggering the following uncaught error in Revolt.
Uncaught FiberError: Cannot suspend in a force-closed fiber in /vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php:625
Stack trace:
#0 /vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(625): Fiber::suspend()
#1 [internal function]: Revolt\EventLoop\Internal\AbstractDriver->Revolt\EventLoop\Internal\{closure}()
#2 {main}
thrown in /vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php on line 625
Wrapping the start() call in a try-catch does catch the error in the main thread, but this appears to be uncaught in a child thread and leads to the uncaught error still being printed to the php error log.
I have not been able to reliably trigger this error. I see it happen sometimes when doing load testing and starting lots of processes at the same time. But this error sometimes does happen with < 100 processes launched.
I also have the uv and ev PHP modules enabled.
Metadata
Metadata
Assignees
Labels
No labels