After some digging in caddy, I determined it's a problem with golang http. The handler is a reduced version of caddy reverse_proxy which forwards 1XX from backend. And the example file is small 25MB, using large files like 134MB will produce the correct output.
What version of Go are you using (
go version
)?Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (
go env
)?go env
OutputWhat did you do?
What did you expect to see?
output
What did you see instead?
The program hangs with the following output
notice response body is not written
CREATED
Additional Info
This problem was first discovered when a caddy user find his webdav server not longer works when he upgraded caddy version. Caddy is using a heavily modified reverse_proxy handler from stdlib and merged 1xx status codes which was backported from 53164.
After some digging in caddy, I determined it's a problem with golang http. The handler is a reduced version of caddy reverse_proxy which forwards 1XX from backend. And the example file is small 25MB, using large files like 134MB will produce the correct output.