Re: [VOTE] Release Apache httpd 2.4.18 as GA

2015-12-10 Thread Steffen
Running on AL for a few days, no issues/regressions seen on all the windows VC/OS flavors. Also no crashes anymore with mod_http2 (discussed off-list with Stefan E) Thanks dev's, Steffen On Tuesday 08/12/2015 at 21:38, Jim Jagielski wrote: The pre-release test tarballs for Apache

mod_http2 memory footprint

2015-12-10 Thread Steffen
Running mod_ssl-only Apache (no external party modules), which is in front (reverse proxy) of a non-ssl Apache. With mod-http2 the memory footprint varies greatly: Without mod_http2 a steady ~40 MB. With mod_http2 it starts with ~50MB and peaks to over ~300 MB with a average of ~130 MB

Re: mod_http2 and rejecting HTTP/1 requests...

2015-12-10 Thread Stefan Eissing
> Am 09.12.2015 um 19:06 schrieb William A Rowe Jr : > > I think I know where this author was misguided... > > On Dec 9, 2015 11:19, "William A Rowe Jr" wrote: > > > > And then I'm reading a really nonsensical comment in this FAQ... > > > >

Re: Upgrade Summary

2015-12-10 Thread Jacob Champion
On 12/10/2015 02:45 AM, Bert Huijben wrote: Websockets are different… and in some ways not really an upgrade of the connection… more like a hostile takeover with a final operation to a target Ha! Yes -- although from the point of view of HTTP/1.1, all successful upgrades are hostile

Re: Upgrade Summary

2015-12-10 Thread Jacob Champion
Okay, I finally have actual code to share. This is the original experimental pre_protocol_switch hook that Stefan and I were talking about a while ago [1], rebased onto 2.4.18. The two patches are available at https://github.com/jchampio/httpd/commits/dev/websocket-protocols It is *not*

Re: Upgrade Summary

2015-12-10 Thread Yann Ylavic
On Thu, Dec 10, 2015 at 11:46 AM, Stefan Eissing wrote: > Given all the input on this thread, I arrive at the following pseudo code: Thanks for _compiling_ this thread, quite exhaustive :) I wonder if we could let each Protocols module hook wherever appropriate in

RE: Upgrade Summary

2015-12-10 Thread Bert Huijben
> -Original Message- > From: Stefan Eissing [mailto:stefan.eiss...@greenbytes.de] > Sent: donderdag 10 december 2015 11:47 > To: dev@httpd.apache.org > Subject: Re: Upgrade Summary > > Given all the input on this thread, I arrive at the following pseudo code: > > 1. Post Read Request

Re: Upgrades

2015-12-10 Thread Stefan Eissing
> Am 10.12.2015 um 02:07 schrieb William A Rowe Jr : > > There is a case to be made for the h2c to also be an 'early' upgrade decision, > AIUI (correct me if I'm wrong Stefan) the mod_http2 module sees a request, > grabs ahold of the network in the main request thread, and

RE: Upgrade Summary

2015-12-10 Thread Bert Huijben
Great to see where this discussion is headed: +1 on the last design ideas. Going with one ‘as early as possible’ upgrade and one ‘upgrade last’ should handle all these cases just fine. I don’t think the h2c and TLS cases really have to be that different as suggested in the earlier parts

Re: Upgrade Summary

2015-12-10 Thread Stefan Eissing
Given all the input on this thread, I arrive at the following pseudo code: 1. Post Read Request Hook: if (Upgrade: request header present) { collect protocol proposals; ps = protocol with highest preference from proposals; if (ps && ps

Re: [VOTE] Release Apache httpd 2.4.18 as GA

2015-12-10 Thread Stefan Eissing
+1: 14.04.1-Ubuntu SMP, gcc 4.8.4 worker, event, prefork

Re: Upgrade Summary

2015-12-10 Thread Yann Ylavic
On Fri, Dec 11, 2015 at 2:22 AM, Yann Ylavic wrote: > > Here I would use ap_add_output_filter(switch_protocol_filter, r); with > switch_protocol_filter() which would flush out the 101 response (or > not) based on r->need_upgrade and r->current_protocol, before any >

Re: Upgrade Summary

2015-12-10 Thread Stefan Eissing
> Am 10.12.2015 um 14:57 schrieb Mike Rumph : > > Question below: > > On 12/10/2015 2:46 AM, Stefan Eissing wrote: >> int xxx_switch(conn_rec *c, request_rec *r, server_rec *s, >> const char *protocol, int phase) >> { >> apr_status_t

Re: Upgrade Summary

2015-12-10 Thread Mike Rumph
Question below: On 12/10/2015 2:46 AM, Stefan Eissing wrote: int xxx_switch(conn_rec *c, request_rec *r, server_rec *s, const char *protocol, int phase) { apr_status_t stats; if (strcmp(my_protocol, protocol)) { Do you mean "if