-
-
Notifications
You must be signed in to change notification settings - Fork 7k
Description
I did this
the Lix transfer code uses curl with http2 at very high concurrency for transfers. with the curl 8.16 release we've seen transfers fail with CURLE_WRITE_ERROR when using http2 as the transport. we've bisected this to fa9151b: with this patch applied our code sees transfers die with write errors when they try to pause themselves. using the commit prior to fa9151b resolves the issue, not pausing any transfers also resolves the issue. curl 8.15 and earlier work fine.
we haven't managed to extract a reliable reproducer from our code. the only reliable reproducer we have so far is to download many things concurrently under rr chaos mode. since it's related to pausing of transfers we'd guess that it's caused by the refactor returning CURLE_AGAIN internally rather than the previous CURLE_OK when transfers are paused, but we haven't verified that.
I expected the following
transfers to not die with write errors when paused
curl/libcurl version
curl 8.16.0, or anything past fa9151b
operating system
NixOS unstable