Re: http2 connection keepalive broken
> Am 30.04.2018 um 12:00 schrieb Yann Ylavic <ylavic.dev@xxxxxxxxx>:
> On Mon, Apr 30, 2018 at 9:28 AM, Stefan Eissing <stefan.eissing@xxxxxxxxxxxxx
>> with the change http://svn.apache.org/r1819214 the keepalive handling
>> in HTTP/2 was broken, as reported here
> Oh crap, I thougth that the h2 connection was over at this point (with
> its own keepalive handling regardless of MPM).
> Sorry about that.
>> If the mpm_event connection state handling is not suitable to
>> honoring a keepalive setting, we need to fix this. Keeping idle
>> connections parked in fdqueue without occupying a thread seems to be
>> one of event's advantages. mod_http2 did enable this by keeping the
>> connection in CONN_STATE_WRITE_COMPLETION. The change places it in
>> CONN_STATE_LINGER which means it is closed after 1 second, always.
>> Since you know event's connection state handling much better than me:
>> what can we do to fix this?
> There nothing wrong with returning CONN_STATE_WRITE_COMPLETION here
> like before, CONN_STATE_HANDLER is wrong though.
> So the previous code with s/CONN_STATE_HANDLER/CONN_STATE_LINGER/
> should restore the behaviour I think.
Will give it a try. However, I had already keepalive tests in the http2
test suite, but those do not fail. So, mpm_event's behaviour on when
it ditches idle connections is not really clear to me and other tests I
do not know of.
Basically, I am a bit frustrated by mpm_event and its non-documentation.
Maybe I missed the documents that explain how its different states actually work?