> -----Original Message-----
> From: Bert Huijben [mailto:b...@qqmail.nl]
> Sent: vrijdag 27 november 2015 13:56
> To: b...@qqmail.nl
> Subject:
> 
>                 Hi,
> 
> I finally took the time to diagnose that segfault I had, and I think it
> points to a serious bug in httpd.
> 
> To summarize this: I don’t receive window updates.
> 
> In this specific test we set a very huge amount of small requests (bodies
of
> 95 and 113 bytes), until we get out of the 65535 (or 65536) bytes of
window
> space I get from httpd at the connection level.
> (Each stream doesn’t get near its limit. I can try if I can receive window
> updates there… but currently I can’t reproduce ever receiving a window
> update)
> 
> 
> Originally this caused a segfault in my code, but I fixed that one. But
now
> I’m just stuck waiting to receive a window update from httpd…
> 
> 
> My last testing was against 2.4.x (to get the 2.4.18 goodness)

And I think the combination of:

=== h2_session.c around line 707 ===
/* We need to handle window updates ourself, otherwise we
         * get flooded by nghttp2. */
        nghttp2_option_set_no_auto_window_update(options, 1);

====================
And not a single call to nghttp2_submit_window_update() to find, explains
the situation.

I haven't tried what happens when I disable this auto_window call... but
sending window updates is really required by the H2 specs.



And I totally understand that this wasn't high priority... I worked around
not sending updates in my implementation until yesterday :-)


        Bert 

Reply via email to