cats-effect
cats-effect copied to clipboard
The pure asynchronous runtime for Scala
It seems like most blocking syscalls will return `-1` and set `errno` to `EINTR` if a signal is sent to the thread while the syscall is executing. So this seems...
https://github.com/typelevel/cats-effect/actions/runs/16459021981/attempts/2?pr=4452 This is on top of @durban's spinlock fix. Not clear if it's transient or not.
Looks like VM slowness to me: ``` [error] ==> X cats.effect.std.SupervisorSuite.concurrent - restart / cancel race 20.056s cats.effect.TestTimeoutException: test timed out after 20 seconds [error] at cats.effect.Runners.$anonfun$timeout$1(Runners.scala:151) [error] at cats.effect.unsafe.WorkStealingThreadPool$$anon$1.apply(WorkStealingThreadPool.scala:695)...
Happened earlier twice in #4377: - https://github.com/typelevel/cats-effect/actions/runs/14451272070/job/40524352592 (logs are already gone) - https://github.com/typelevel/cats-effect/actions/runs/14459016996/job/40548044386?pr=4377#step:22:4843 (logs are already gone) And now it happened #4362 _after_ I've merged `series/3.x` into that branch: -...
## Quick reproduction ```scala val v = Vector.fill(400_000)(0) v.parTraverseN(10) { i => IO.sleep(10.seconds) >> IO.raiseError(new RuntimeException) }.void ``` This will most likely cause 100% CPU consumption after the initial wait...