FS#45392 - [mod_perl] 2.0.8-5 missing symbol modperl_handler_name if compiled with gcc-5.1

Attached to Project: Community Packages
Opened by Christoph Bayer (chrbayer) - Friday, 19 June 2015, 20:08 GMT
Last edited by Evangelos Foutras (foutrelis) - Sunday, 19 July 2015, 17:34 GMT
Task Type Bug Report
Category Upstream Bugs
Status Closed
Assigned To Florian Pritz (bluewind)
Evangelos Foutras (foutrelis)
Anatol Pomozov (anatolik)
Architecture All
Severity High
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Description: mod_perl does not seem to provide symbol modperl_handler_name if compiled with gcc-5.1,
for a patch see https://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/www-apache/mod_perl/files/mod_perl-2.0.4-inline.patch?view=markup
I have not tested the patch, but this is exactly the problem I observed


Additional info:
* package version(s)
2.0.8-5

* config and/or log files etc.
Jun 19 20:36:14 beta.local systemd[1]: Starting Apache Web Server...
Jun 19 20:36:14 beta.local apachectl[1480]: httpd: Syntax error on line 179 of /etc/httpd/conf/httpd.conf: Cannot load modules/mod_perl.so into server: /etc/httpd/modules/mod_perl.so: undefined symbol: modperl_handler_name
Jun 19 20:36:14 beta.local systemd[1]: httpd.service: Control process exited, code=exited status=1
Jun 19 20:36:14 beta.local systemd[1]: Failed to start Apache Web Server.
Jun 19 20:36:14 beta.local systemd[1]: httpd.service: Unit entered failed state.
Jun 19 20:36:14 beta.local systemd[1]: httpd.service: Failed with result 'exit-code'.

Steps to reproduce:
Just configure apache to include mod_perl and try to start httpd
This task depends upon

Closed by  Evangelos Foutras (foutrelis)
Sunday, 19 July 2015, 17:34 GMT
Reason for closing:  Won't fix
Additional comments about closing:  mod_perl was dropped from the repo due to incompatibility with Perl 5.22.
Comment by Anatol Pomozov (anatolik) - Saturday, 20 June 2015, 13:42 GMT
Unfortunately adding that patch does not fix the problem. I still see another crash at

#0 0x00007f0717ddec9e in modperl_env_init () from /etc/httpd/modules/mod_perl.so

There is an upcoming mod_perl release 2.0.9 that (after two and half years of waiting) officially declares apache 2.4 support http://mail-archives.apache.org/mod_mbox/perl-modperl/201505.mbox/%3CCADED%3DK60WOOBnrPH7aSia%3DydHd0EdDmu3e6ocAL4bG-MPLg60Q%40mail.gmail.com%3E

It also mentions that there is a crash with perl 5.22 https://rt.cpan.org/Public/Bug/Display.html?ShowHeaders=1;id=101962 and it looks the same as I see. Upstream promised to add perl 5.22 support in its mod_perl 2.0.10 release.

So for now no mod_perl with 5.22, unfortunately. I encourage to ping upstream on getting a fix for the problem.
Comment by Florian Pritz (bluewind) - Saturday, 20 June 2015, 17:34 GMT
Adding me so I can wait for this before moving perl to core.
Comment by Anatol Pomozov (anatolik) - Sunday, 21 June 2015, 02:34 GMT
2.0.9 just got released and there is a hope that they look at perl 5.22 issue soon. If not then I just suggest to drop this package to AUR.
Comment by Anatol Pomozov (anatolik) - Wednesday, 24 June 2015, 16:17 GMT
No upstream activity wrt perl5.22 bug. mod_perl project is semi-alive one. I would not be surprised if it takes upstream several months to fix the issue.

I suggest to drop mod_perl to AUR to unblock perl5.22 rebuild. Those who wants to use mod_perl have to stick with perl5.20.
Comment by Evangelos Foutras (foutrelis) - Sunday, 28 June 2015, 09:40 GMT
I uploaded mod_perl 2.0.9-2 to [community] with versioned dep on Perl 5.20 to avoid breaking existing setups. [1]

Also, Perl 5.22 has just been moved out of [testing]. People who use mod_perl won't be able to upgrade and instead receive the following error:

:: mod_perl: requires perl<5.21'

This seems to be the best we can do to avoid breakage without holding back the Perl 5.22 update any longer.

[1] https://lists.archlinux.org/pipermail/arch-commits/2015-June/284067.html
Comment by Anatol Pomozov (anatolik) - Sunday, 28 June 2015, 14:41 GMT
Keeping packages with broken dependencies like you did to mod_perl goes against Arch packaging practices. If mod_perl cannot keep up with its dependencies then it should be moved to AUR. And it is what I am going to do with mod_perl soon.
Comment by Evangelos Foutras (foutrelis) - Sunday, 28 June 2015, 14:55 GMT
The alternative would be breaking existing setups; a friendly pacman notice is much better than Apache segfaults.
Comment by Evangelos Foutras (foutrelis) - Sunday, 28 June 2015, 16:10 GMT
"Move mod_perl to AUR to unblock perl rebuild."

Perl 5.22 was moved out of [testing] 6 hours ago so mod_perl wasn't blocking anything. All this does is result in broken systems once existing mod_perl installations get upgraded to Perl 5.22.

Feel free to close this again, but state the correct reason and not invalid information.
Comment by Anatol Pomozov (anatolik) - Sunday, 28 June 2015, 16:23 GMT
Perl rebuild was done incorrectly - it left packages with dangling dependencies. mod_perl issue had to be resolved before moving perl to [stable].
Comment by Evangelos Foutras (foutrelis) - Sunday, 28 June 2015, 16:36 GMT
The issue was deferred using a versioned dependency on Perl 5.20; I explained this in previous comments.

- Existing mod_perl installations would conflict with Perl 5.22 thus preventing silent breakage upon upgrade.
- mod_perl would not be installable on new systems with Perl 5.22; this behavior is acceptable and would have been resolved with the release of mod_perl 2.0.10.

The situation we have now is that nothing will prevent systems with mod_perl from upgrading to Perl 5.22.

Loading...