Subject: Re: t5559 breaks with apache 2.4.55

From: Todd Zullinger <[email-masked]>
Date: Sun, 22 Jan 2023 11:33:07 -0500

Jeff King wrote:
> I noticed that the test suite now fails after upgrading from apache
> 2.4.54 to 2.4.55 (the latter of which just hit debian unstable). The
> problem is with the http2 tests, specifically t5559.30, where we send a
> large fetch negotiation over http2. The output from curl is (including
> some bits of tracing):
> 
>   == Info: Received 101, Switching to HTTP/2
>   == Info: Using HTTP2, server supports multiplexing
>   == Info: Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0
>   == Info: Closing connection 1
>   error: RPC failed; HTTP 101 curl 16 Error in the HTTP2 framing layer
> 
> Bisecting within apache's Git repo, the culprit is their 9767274b88,
> which says:
> 
>   mod_http2: version 2.0.10 of the module, synchronizing changes
>   with the gitgub version. This is a partial rewrite of how connections
>   and streams are handled.
> 
> which seems like a plausible source. But the diff is 8000 lines. It may
> be possible to bisect within the mod_http2 source itself, but I haven't
> tried it yet.
> 
> It's also not 100% clear that it's an apache bug. We could be doing
> something weird with git-http-backend, or curl might be doing something
> wrong. Though I tend to doubt it, given the simplicity of the CGI
> interface on the server side and the fact that curl was working reliably
> with older versions of apache.
> 
> So I haven't reported the bug further yet. But I thought I'd post this
> here before anybody else wastes time digging in the same hole.

FWIW, I think this is the same issue we discussed about 2
months back, in <[email-masked]>¹.

I haven't done much else with it since then.  It's almost
surely either an apache httpd/mod_http2 or curl issue.  If I
had to bet, I'd say mod_http2.  (But then, it could be curl
and just has yet to be exposed widely because not many are
using the current mod_http2 code.)

¹ https://lore.kernel.org/git/[email-masked]/

-- 
Todd