Bug 16505 - mod_perl 2.0.10 is required to work with Apache 2.4 and perl 5.22
Summary: mod_perl 2.0.10 is required to work with Apache 2.4 and perl 5.22
Status: RESOLVED FIXED
Alias: None
Product: Mageia
Classification: Unclassified
Component: RPM Packages (show other bugs)
Version: 6
Hardware: i586 Linux
Priority: Normal major
Target Milestone: ---
Assignee: QA Team
QA Contact:
URL:
Whiteboard: MGA6-32-OK MGA6-64-OK
Keywords: FOR_ERRATA6, advisory, validated_update
Depends on:
Blocks:
 
Reported: 2015-07-31 02:17 CEST by Frédéric "LpSolit" Buclin
Modified: 2017-11-02 22:47 CET (History)
7 users (show)

See Also:
Source RPM: apache-mod_perl-2.0.7-17.20130221svn1448245.mga5
CVE:
Status comment:


Attachments
patch for the mod_perl RPM (2.49 KB, patch)
2017-08-20 03:52 CEST, Frédéric "LpSolit" Buclin
Details | Diff

Description Frédéric "LpSolit" Buclin 2015-07-31 02:17:35 CEST
The mod_perl 2.0.9 documentation mentions that:

  http://search.cpan.org/~shay/mod_perl-2.0.9/Changes

  "Add support for Apache httpd-2.4.x."


Testing mod_perl with Bugzilla indeed shows that 2.0.8 and older do not work with Apache 2.4.x. But Mageia 5 released Apache 2.4.10 and mod_perl 2.0.7-17.20130221svn... i.e a snapshot which looks like to be 2.5 years old. It really needs to be updated to be usable.
Comment 1 David Walser 2015-07-31 16:42:45 CEST
This was discussed on IRC when 2.0.9 was released.  I was told that 2.0.9 still doesn't support perl 5.22, which is what we have in Cauldron.  It may have been that it doesn't support perl 5.20 either (Mageia 5), but I can't remember for sure.

CC: (none) => mageia, pterjan
Version: 5 => Cauldron
Whiteboard: (none) => MGA5TOO

Comment 2 Frédéric "LpSolit" Buclin 2015-07-31 17:14:30 CEST
Perl 5.20 is supported, per their changelog.
Comment 3 Frédéric "LpSolit" Buclin 2016-10-02 17:48:21 CEST
mod_perl 2.0.10 RC1 is just around the corner:

https://github.com/apache/mod_perl/commit/c9bd1e45

Its changelog mentions support for perl 5.22:

2.0.10-rc1

Automatically select the appropriate c89 option when modperl is being
built with either gcc 5 or clang.

Fix non-threaded Perl 5.22.x build and tests.

Add support for Perl 5.22.x.

Target Milestone: --- => Mageia 6
Summary: mod_perl 2.0.9 is required to work with Apache 2.4.x => mod_perl 2.0.10 is required to work with Apache 2.4 and perl 5.22

Comment 4 Samuel Verschelde 2016-10-10 22:38:44 CEST
Assigning to apache-mod_perl maintainer, Shlomi Fish

Assignee: bugsquad => shlomif

Comment 5 Frédéric "LpSolit" Buclin 2016-10-29 17:45:48 CEST
mod_perl 2.0.10 final has been released two days ago:

http://www.apache.org/dyn/closer.cgi/perl/mod_perl-2.0.10.tar.gz
Comment 6 Frédéric "LpSolit" Buclin 2017-03-21 20:13:05 CET
@Shlomi: ping?
Comment 7 Samuel Verschelde 2017-07-10 16:17:10 CEST
It would be good to add a note about this in the Errata, thus I'm adding the
FOR_ERRATA6 keyword.

Once added to https://wiki.mageia.org/en/Mageia_6_Errata please replace
FOR_ERRATA6 with IN_ERRATA6.

Keywords: (none) => FOR_ERRATA6

Comment 8 Frédéric "LpSolit" Buclin 2017-08-20 03:52:38 CEST
Created attachment 9614 [details]
patch for the mod_perl RPM

I tested mod_perl 2.0.10 locally using Bugzilla 5.0.3 on Mageia 6, and it's working fine.

The patch doesn't include the new binary. Here is the link to download it:

http://www-eu.apache.org/dist/perl/mod_perl-2.0.10.tar.gz


Someone please commit and push. :)
Comment 9 Shlomi Fish 2017-08-20 10:27:58 CEST
Thanks Frederic!

(In reply to Frédéric Buclin from comment #8)
> Created attachment 9614 [details]
> patch for the mod_perl RPM
> 
> I tested mod_perl 2.0.10 locally using Bugzilla 5.0.3 on Mageia 6, and it's
> working fine.
> 
> The patch doesn't include the new binary. Here is the link to download it:
> 
> http://www-eu.apache.org/dist/perl/mod_perl-2.0.10.tar.gz
> 

You can put a similar URL in the .spec. I was able to build the mgarepo checkout, but noticed that it didn't complain about the PGP .asc file being missing. It should have. Anyway, I am going to submit it for now.
> 
> Someone please commit and push. :)
Comment 10 Frédéric "LpSolit" Buclin 2017-08-20 12:57:46 CEST
Thank you for the commit on cauldron. Could you push it to mga6 too, please? :)
Comment 11 Frédéric "LpSolit" Buclin 2017-08-20 14:58:53 CEST
Should it be pushed to mga5 too?

Target Milestone: Mageia 6 => ---
Version: Cauldron => 6

Comment 12 Frédéric "LpSolit" Buclin 2017-09-16 13:27:14 CEST
@shlomif: ping? See comment 11. If not, then please put apache-mod_perl-2.0.10-1.mga6 in QA queue.

I tested apache-mod_perl-2.0.10-1.mga6.x86_64.rpm a bit, and it's working fine.
Frédéric "LpSolit" Buclin 2017-10-08 15:32:24 CEST

Assignee: shlomif => qa-bugs

Comment 13 Len Lawrence 2017-10-11 09:10:09 CEST
Starting to look at this on mga6::x86_64 with very little knowledge of apache and none of perl or CGI.

Before updating I consulted the guide at https://perl.apache.org/docs/1.0/guide/getwet.html.

Wrote the suggested HelloWorld type perl script and attempted to configure apache to run user scripts by adding the following stanza to /etc/httpd/conf/httpd.conf:
-----------------------------------
# Added by lcl for QA testing

Alias /perl/ /home/lcl/modperl/

PerlModule Apache::Registry
<Location /perl/>
    SetHandler perl-script
    PerlHandler Apache::Registry
    Options +ExecCGI
    PerlSendHeader On
    allow from all
</Location>
-----------------------------------

Failed to restart apache but cannot find an explanation for the failure in the status report or the journal.  There is an error log which shows:
[Wed Oct 11 07:35:54.295537 2017] [perl:error] [pid 3635] Can't locate Apache/Registry.pm in @INC (you may need to install the Apache::Registry module) (@INC contains:
..................

Is this module in an RPM somewhere or does it have to be fetched from CPAN?

CC: (none) => tarazed25

Comment 14 Len Lawrence 2017-10-11 10:49:53 CEST
Looking for answers online I found an install command and adapted it:

$ perl -MCPAN -e 'install Apache::Registry'

but that failed badly, throwing up a stack of warnings and errors, attempting to compile some C code and finally wanting to know where the apache source could be found.  ??

Discovered the cpan command and tried that, with similar results.  

$ sudo cpan Apache::Registry

This entered an endless loop, again asking where the apache source code was:
Please tell me where I can find your apache src
 [../apache_x.x/src] ../apache_x.x/src
Can't stat `../apache_x.x/src'
Please tell me where I can fin^CWarning: No success on command[/usr/bin/perl5.22.3 Makefile.PL]
  GOZER/mod_perl-1.31.tar.gz
  /usr/bin/perl5.22.3 Makefile.PL -- NOT OK

Lightbulb! -> installed apache-devel
Nope.
It still wants to know where the source code is.
Comment 15 Pascal Terjan 2017-10-11 10:58:09 CEST
I also don't know much about it but a few points:
- The documentation you use seems to be for mod_perl 1.0, which is why it is not working
- Please do not install anything with cpan when testing, if something is missing from the package or its dependencies it should be fixed not manually installed with cpan
Comment 16 Len Lawrence 2017-10-11 13:13:26 CEST
Thanks Pascal for the sound advice.  There is a big difference.
At least now the server restarts.

The helloworld script fails to execute though.  I tried various places to store it  in the user home directory, editing httpd.conf and restarting the server every time.  0744 permissions should be OK but I am having exactly the same trouble I always have with web programming - Object not found - error 404.

localhost/perl/<perl script name>
If I take advantage of the perl alias in the conf file it returns 
Access forbidden! - error 403
Comment 17 Herman Viaene 2017-10-20 15:07:53 CEST
No package available to test M5.

CC: (none) => herman.viaene

Comment 18 Frédéric "LpSolit" Buclin 2017-10-21 13:47:54 CEST
(In reply to Herman Viaene from comment #17)
> No package available to test M5.

I doubt there will be one so close from Mageia 5 EOL.
Comment 19 Herman Viaene 2017-10-21 14:02:19 CEST
@ Frederic
OK for me, but then it should not be on the update testing list.
Comment 20 Frédéric "LpSolit" Buclin 2017-10-21 14:05:45 CEST
(In reply to Herman Viaene from comment #19)
> OK for me, but then it should not be on the update testing list.

But it has an update for Mageia 6. :)
Comment 21 Herman Viaene 2017-10-21 14:41:39 CEST
But it is in the M5 list as well, and in the whiteboard it has MGATOO.
Frédéric "LpSolit" Buclin 2017-10-21 14:46:44 CEST

Whiteboard: MGA5TOO => (none)

Comment 22 Herman Viaene 2017-10-23 11:24:20 CEST
MGA6-32 on Asus A6000VM MATE
No installation issues
First checked httpd starts after the installation: OK
Followed example in https://perl.apache.org/docs/2.0/user/intro/start_fast.html
Only changed location of the test file rock.pl to /var/www/html and consequently the first line of the added item in the httpd.conf file to:
Alias /perl/ /var/www/html/
stopped httpd, and restarted it and got the "mod_perl 2.0 rocks!" answer in the browser.
OK for this test.

Whiteboard: (none) => MGA6-32-OK

Comment 23 Len Lawrence 2017-10-23 14:53:16 CEST
Re comment 22:
Congratulations Herman.  Maybe I should try that but it is still a puzzle why it did not work from a personal directory.  Later.
Comment 24 Frédéric "LpSolit" Buclin 2017-10-23 16:54:56 CEST
I tested mod_perl with Bugzilla and it's working fine.

Whiteboard: MGA6-32-OK => MGA6-32-OK MGA6-64-OK

Comment 25 Herman Viaene 2017-10-24 10:03:24 CEST
@ Len: access rights???
Comment 26 Len Lawrence 2017-10-24 12:01:16 CEST
@Herman: could be.
Comment 27 Lewis Smith 2017-10-27 10:22:50 CEST
Validated, but it needs an advisory please. The bug history is too fuzzy for me to invent one.

Keywords: (none) => validated_update
CC: (none) => lewyssmith, sysadmin-bugs

Comment 28 Frédéric "LpSolit" Buclin 2017-10-27 13:40:46 CEST
The goal of upgrading to mod_perl 2.0.10 is to support Apache 2.4 together with Perl 5.22 and newer.

mod_perl 2.0.8 and older support neither Apache 2.4 nor Perl 5.22 and newer.
mod_perl 2.0.9 added support for Apache 2.4, but did not support Perl 5.22.
mod_perl 2.0.10 also added support for Perl 5.22 and newer. This is the version we want for Mageia 6 as it has Perl 5.22.3 and Apache 2.4.27.

Is it enough information to write an advisory? :)
Dave Hodgins 2017-11-02 19:30:18 CET

CC: (none) => davidwhodgins
Keywords: (none) => advisory

Comment 29 Mageia Robot 2017-11-02 22:47:55 CET
An update for this issue has been pushed to the Mageia Updates repository.

https://advisories.mageia.org/MGAA-2017-0101.html

Status: NEW => RESOLVED
Resolution: (none) => FIXED


Note You need to log in before you can comment on or make changes to this bug.