]> gitweb.factorcode.org Git - factor.git/commitdiff
io.backend.unix: Try again when we get ENOBUFS
authorDoug Coleman <doug.coleman@gmail.com>
Sat, 22 Jul 2023 16:32:57 +0000 (11:32 -0500)
committerDoug Coleman <doug.coleman@gmail.com>
Sat, 22 Jul 2023 17:16:49 +0000 (12:16 -0500)
My understanding is the tcp buffers can fill up and we get notified
with ENOBUFS. After some time they should be free again.

This makes the parallel-map read more reliable

related to #2771

basis/io/backend/unix/unix.factor

index 1b2cbc4455df4d28353631dd4d2e4761635c2260..f58e2d942119f945546af85a780bf1df76bb7671 100644 (file)
@@ -109,6 +109,7 @@ M: fd drain
         errno {
             { EINTR [ 2drop +retry+ ] }
             { EAGAIN [ 2drop +output+ ] }
+            { ENOBUFS [ 2drop +output+ ] }
             [ (throw-errno) ]
         } case
     ] if ;