perl-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Steve Hay <steve.m....@googlemail.com>
Subject Re: httpd24 on Windows?
Date Mon, 04 Nov 2013 16:02:46 GMT
On 4 November 2013 15:38, Jeff Trawick <trawick@gmail.com> wrote:
> On Mon, Nov 4, 2013 at 8:43 AM, Jeff Trawick <trawick@gmail.com> wrote:
>>
>> On Mon, Nov 4, 2013 at 4:22 AM, Steve Hay <steve.m.hay@googlemail.com>
>> wrote:
>>>
>>> On 30 October 2013 18:24, Steve Hay <steve.m.hay@googlemail.com> wrote:
>>> > I've now tried other perls (5.16.0, 5.18.0 and 5.19.4) in other build
>>> > configurations (with/without PERL_IMPLICIT_SYS) and can confirm that
>>> > the crash only occurs with perls built with PERL_IMPLICIT_SYS enabled.
>>> > I generally use perl with that disabled (although that isn't the
>>> > default configuration), so that's probably what I was doing when I had
>>> > this working back in July.
>>> >
>>> > That is indeed a Windows-specific thing, unfortunately :-/
>>> >
>>> > I will see what I can do to fix it since most users will indeed have
>>> > the default configuration (certainly ActivePerl and Strawberry Perl
>>> > both do) and hence experience the crash.
>>>
>>> As per your suggestion on the other thread, I've now merged the
>>> httpd24 and threading branches togther into a new branch called
>>> httpd24threading and I'm delighted to see that it does indeed fix the
>>> add_config.t crash when PERL_IMPLICIT_SYS is defined :-)
>>>
>>> There is one oddity when starting up the server: it complains that
>>> "KeepAliveTimeout 300" has the wrong format! I don't understand this.
>>> The directive is not new and that syntax (number of seconds) has long
>>> been valid. httpd-2.3.2 added a new millisecond format (append "ms"),
>>> but that shouldn't affect this:
>>> http://httpd.apache.org/docs/2.4/mod/core.html#keepalivetimeout
>>
>>
>> The most likely cause would seem to be some stray character after the 300
>> (e.g., maybe a ^M on Unix)???  The next most likely (also unlikely) cause
>> would seem to be that per-thread errno is hosed in your httpd build for some
>> reason???  (yeah, I know how bogus this sounds :) )
>>
>> 2.2 parses the number via the very forgiving atoi().
>> 2.4 parses the number with apr_strtoi64() which manipulates errno and also
>> by checking what comes after the number, which also manipulates errno and is
>> sensitive to the first character that apr_strtoi64() can't parse
>>
>> Maybe the quickest way to get to the bottom of it is to add some tracing
>> to the three "return some-error" paths in
>> server/util.c::ap_timeout_parameter_parse().
>
>
> I should be able to try that out...
>
> What do I need to grab from svn and run, and does this particular error
> reproduce on Linux?
>>

I haven't heard from others yet whether this reproduces on Linux.

The only thing you need from svn is modperl's 'httpd24threading'
branch and httpd-2.4 (I'm using 2.4.4) -- it works fine with 2.2. I
doubt that the perl version is relevant, but I'm using 5.19.4. I've
built everything in debug mode. I will have a look later; thanks for
the tip where to look. There are definitely no stray characters after
the 300 -- only a \n.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org


Mime
View raw message