Activity log for bug #1969629

Date Who What changed Old value New value Message
2022-04-20 14:31:29 Antonios Tsianakas bug added bug
2022-04-20 15:40:30 Antonios Tsianakas summary mod_http2: fixes 2 regressions in server limit handling. Apache 2.4.x: mod_http2 sends empty response after MaxRequestsPerChild
2022-04-20 15:43:15 Launchpad Janitor apache2 (Ubuntu): status New Confirmed
2022-04-21 09:46:13 Paride Legovini apache2 (Ubuntu): status Confirmed Fix Released
2022-04-21 09:46:24 Paride Legovini nominated for series Ubuntu Focal
2022-04-21 09:46:24 Paride Legovini bug task added apache2 (Ubuntu Focal)
2022-04-21 09:46:24 Paride Legovini nominated for series Ubuntu Impish
2022-04-21 09:46:24 Paride Legovini bug task added apache2 (Ubuntu Impish)
2022-04-21 09:46:24 Paride Legovini nominated for series Ubuntu Bionic
2022-04-21 09:46:24 Paride Legovini bug task added apache2 (Ubuntu Bionic)
2022-04-21 09:46:31 Paride Legovini apache2 (Ubuntu Bionic): status New Triaged
2022-04-21 09:46:38 Paride Legovini apache2 (Ubuntu Focal): status New Triaged
2022-04-21 09:46:41 Paride Legovini apache2 (Ubuntu Impish): status New Triaged
2022-04-21 09:50:50 Paride Legovini tags server-todo
2022-04-26 21:11:02 Sergio Durigan Junior description We run into a bug in mod_http2 for Apache 2.4.x. Every time MaxRequestsPerChild is reached, an empty response is sent to the client: https://bz.apache.org/bugzilla/show_bug.cgi?id=65731 This bug was fixed and backported to v2.4.52: https://github.com/apache/httpd/pull/281 Any chance that this fix get backported to the Bionic and Focal Package? [ Impact ] Apache2 users with mod_http2 enabled can face problems when the MaxRequestsPerChild limit is reached. In this scenario, apache2 will send a GOAWAY packet too early in the connection, which will cause no data to be transferred to the client (i.e., an empty HTTP response from the server). [ Test Plan ] This problem reproduces on Bionic, Focal and Impish. The instructions are almost the same for all 3, but on Bionic an extra step is necessary to make sure apache2 will use HTTP2. $ lxc launch ubuntu-daily:focal bug1969629-focal $ lxc shell bug1969629-focal # apt update # apt install -y apache2 # a2enmod http2 # [ $(lsb_release -sc) = "bionic" ] && (echo -e "\nProtocols h2 h2c http/1.1" >> /etc/apache2/apache2.conf) # cat > /etc/apache2/mods-available/mpm_event.conf << __EOF__ <IfModule mpm_event_module> StartServers 2 MaxRequestsPerChild 3 </IfModule> __EOF__ # systemctl restart apache2.service # while true; do if [[ $(curl -o /dev/null -s -k --http2 http://localhost/ -w '%{size_download}') == 0 ]]; then echo "BUG DETECTED"; break; fi; done BUG DETECTED The "while" command above should never stop, but as can be seen, it does stop because the size of the downloaded file (index.html, in this case) is zero. This can also be confirmed by looking at the server logs: 127.0.0.1 - - [26/Apr/2022:20:13:46 +0000] "GET / HTTP/1.1" 101 125 "-" "curl/7.58.0" 127.0.0.1 - - "GET / HTTP/2.0" 200 0 "-" "curl/7.58.0" [ Where problems could occur ] Even though the patch is relatively simple, it touches an area that can be a bit complex: session processing of an HTTP request. There are upstream tests that exercise this area and I believe we can be reasonably confident that this change does the right thing. If a regression is to occur, it would likely manifest in the form of a bug in the HTTP2 session handling, and the quicker solution here would be to revert the change while revisiting the patch to determine what went wrong (possibly with upstream help). [ Original Description ] We run into a bug in mod_http2 for Apache 2.4.x. Every time MaxRequestsPerChild is reached, an empty response is sent to the client: https://bz.apache.org/bugzilla/show_bug.cgi?id=65731 This bug was fixed and backported to v2.4.52: https://github.com/apache/httpd/pull/281 Any chance that this fix get backported to the Bionic and Focal Package?
2022-04-26 21:11:07 Sergio Durigan Junior apache2 (Ubuntu Bionic): assignee Sergio Durigan Junior (sergiodj)
2022-04-26 21:11:09 Sergio Durigan Junior apache2 (Ubuntu Focal): assignee Sergio Durigan Junior (sergiodj)
2022-04-26 21:11:10 Sergio Durigan Junior apache2 (Ubuntu Impish): assignee Sergio Durigan Junior (sergiodj)
2022-04-26 21:11:12 Sergio Durigan Junior apache2 (Ubuntu Bionic): status Triaged In Progress
2022-04-26 21:11:13 Sergio Durigan Junior apache2 (Ubuntu Focal): status Triaged In Progress
2022-04-26 21:11:14 Sergio Durigan Junior apache2 (Ubuntu Impish): status Triaged In Progress
2022-04-26 21:11:36 Sergio Durigan Junior bug watch added https://bz.apache.org/bugzilla/show_bug.cgi?id=65731
2022-04-26 21:11:36 Sergio Durigan Junior bug task added apache2
2022-04-26 21:12:43 Launchpad Janitor merge proposal linked https://code.launchpad.net/~sergiodj/ubuntu/+source/apache2/+git/apache2/+merge/420581
2022-04-26 21:16:56 Launchpad Janitor merge proposal linked https://code.launchpad.net/~sergiodj/ubuntu/+source/apache2/+git/apache2/+merge/420582
2022-04-26 21:18:11 Launchpad Janitor merge proposal linked https://code.launchpad.net/~sergiodj/ubuntu/+source/apache2/+git/apache2/+merge/420583
2022-04-26 21:36:32 Bug Watch Updater apache2: status Unknown Fix Released
2022-04-26 21:36:32 Bug Watch Updater apache2: importance Unknown Medium
2022-04-26 21:36:35 Bug Watch Updater bug watch added https://github.com/icing/mod_h2/issues/212
2022-05-02 23:43:26 Brian Murray apache2 (Ubuntu Impish): status In Progress Fix Committed
2022-05-02 23:43:27 Brian Murray bug added subscriber Ubuntu Stable Release Updates Team
2022-05-02 23:43:29 Brian Murray bug added subscriber SRU Verification
2022-05-02 23:43:33 Brian Murray tags server-todo server-todo verification-needed verification-needed-impish
2022-05-02 23:47:44 Brian Murray apache2 (Ubuntu Focal): status In Progress Fix Committed
2022-05-02 23:47:49 Brian Murray tags server-todo verification-needed verification-needed-impish server-todo verification-needed verification-needed-focal verification-needed-impish
2022-05-02 23:49:41 Brian Murray apache2 (Ubuntu Bionic): status In Progress Fix Committed
2022-05-02 23:49:48 Brian Murray tags server-todo verification-needed verification-needed-focal verification-needed-impish server-todo verification-needed verification-needed-bionic verification-needed-focal verification-needed-impish
2022-05-27 20:42:04 Sergio Durigan Junior tags server-todo verification-needed verification-needed-bionic verification-needed-focal verification-needed-impish verification-done-bionic verification-done-focal verification-done-impish
2022-05-30 09:30:08 Ɓukasz Zemczak removed subscriber Ubuntu Stable Release Updates Team
2022-05-30 09:30:07 Launchpad Janitor apache2 (Ubuntu Impish): status Fix Committed Fix Released
2022-05-30 09:35:43 Launchpad Janitor apache2 (Ubuntu Focal): status Fix Committed Fix Released
2022-05-30 09:37:16 Launchpad Janitor apache2 (Ubuntu Bionic): status Fix Committed Fix Released