On Tuesday, 21 February 2012 13:49:41 Brian Millett wrote: > I guess I'm asking is anyone has made any progress with mod_perl with the > new httpd 2.4 ??
There is quite a lot that has changed in httpd from 2.2 to 2.4. Last summer I have worked on porting modperl a bit. The result is available at http://svn.apache.org/repos/asf/perl/modperl/branches/httpd24/ for everyone who wants to take it further. The current state is as follows (at least with the httpd 2.3.14 or 2.3.15 of last summer): - it compiles - the test suite failures you'll see are expected. They are caused by API changes on the httpd side. It should not segfault (tested only with prefork). - things that have to be ported are mainly * the AAA-related parts of request_rec are gone. * the AAA hooks are replaced by a provider oriented interface * the new logging architecture As for AAA we have to decide if we want to implement a compatibility layer (if possible) or if we want to support only the new way. Support of the new, per-module way of logging is more optional. It would be nice to be able to have per-module loglevels also for httpd modules written in Perl. Although the AAA stuff is far more important the loglevel stuff seems to be easier and a low hanging fruit even for a someone less experienced in modperl coding (with some guidance). So, that's more or less the current state. You are encouraged to participate and submit patches. Unfortunately, last year generated quite a lot of work. There was perl 5.14 with a few incompatible changes and the upcoming httpd 2.4. Not to forget the transition from LWP 5.x to LWP 6.x which our test-suite is based upon. And developer time is a scarce resource since none of us is paid for it (at least I am not). If someone wants to invest money please do. I'd rather work to improve modperl for say 75-80% of my normal rate. As for my personal topic ranking after 2.0.6 release, first thing is the merge of the threading branch into trunk. In combination with that I'd like to make sure the current perl context is set to NULL when modperl is not working at something perl-specific if MP_DEBUG is set. The runtime part of this is done, I think. Then I'd like to launch a raid on pieces of code like if(...) { /* should not happen */ return NULL; } and replace them with MP_ASSERT. Then perhaps comes the PerlInterpInitHandler, PerlInterpExitHandler stuff or the httpd 2.4 port. I also like the "PerlDeclareInterp fritz ... <perl interp="fritz">...</perl> ... PerlUseInterp fritz" idea. If anybody wants to participate don't hesitate. Torsten Förtsch -- Need professional modperl support? Hire me! (http://foertsch.name) Like fantasy? http://kabatinte.net