Bug 1981927 - APC::ThreadMutex is not available on x86_64 mod_perl
Summary: APC::ThreadMutex is not available on x86_64 mod_perl
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora EPEL
Classification: Fedora
Component: mod_perl
Version: epel8
Hardware: x86_64
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Petr Pisar
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2021-07-13 17:59 UTC by Nathan Coulson
Modified: 2021-07-30 00:33 UTC (History)
4 users (show)

Fixed In Version: mod_perl-2.0.11-9.fc35 mod_perl-2.0.11-8.fc34 mod_perl-2.0.11-7.fc33 mod_perl-2.0.11-4.el8
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2021-07-23 01:03:21 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
CPAN 137599 0 None None None 2021-07-14 08:44:51 UTC

Description Nathan Coulson 2021-07-13 17:59:08 UTC
Description of problem:
'use APR::ThreadMutex ();' results in

 [Tue Jul 13 09:19:11.762106 2021] [perl:error] [pid 1065808:tid 140400020277568] Can't locate APR/ThreadMutex.pm in @INC (you may need to install the APR::ThreadMutex module) (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 /etc/httpd /usr/share/puh/apache/perl) at /home/Test.pm line 40.\nBEGIN failed--compilation aborted at /home/test.pm line 40.\nCompilation failed in require at /home/startup.pl line 10.\nBEGIN failed--compilation aborted at /home/startup.pl line 10.\nCompilation failed in require at (eval 2) line 1.\n

There is also no /usr/lib64/perl5/vendor_perl/APR/ThreadMutex.pm on x86_64's variant of mod_perl, but I do see this existing in aarch64's variant.


Version-Release number of selected component (if applicable):
2.0.11-1

How reproducible:
always

Steps to Reproduce:
ncoulson@home:~/z/y$ rpm -qpl mod_perl-2.0.11-1.el8.x86_64.rpm | grep ThreadMutex

Actual results:
ncoulson@home:~/z/y$ rpm -qpl mod_perl-2.0.11-1.el8.x86_64.rpm | grep ThreadMutex
/usr/share/doc/mod_perl/docs/api/APR/ThreadMutex.pod
/usr/share/man/man3/APR::ThreadMutex.3pm.gz


Expected results: (Noted this existing in aarch64)
ncoulson@home:~/z/y$ rpm -qpl mod_perl-2.0.11-1.el8.aarch64.rpm  | grep ThreadMutex
/usr/lib64/perl5/vendor_perl/APR/ThreadMutex.pm
/usr/lib64/perl5/vendor_perl/auto/APR/ThreadMutex
/usr/lib64/perl5/vendor_perl/auto/APR/ThreadMutex/ThreadMutex.so
/usr/share/doc/mod_perl/docs/api/APR/ThreadMutex.pod
/usr/share/man/man3/APR::ThreadMutex.3pm.gz

Comment 1 Petr Pisar 2021-07-14 06:59:25 UTC
I confirm this issue.

There are two bugs in mod_perl build script:

(1) APR::ThreadMutex module is built only if APR library was built with threads support.
    mod_perl's build script parses /usr/include/apr-1/apr.h for HAS_THREADS preprocessor
    symbol to decide whether APR library supports threads. But apr-devel package modifies
    /usr/include/apr-1/apr.h in a way which mod_perl's build script does not understand.
    As a result mod_perl does not produce APR::ThreadMutex module.

(2) mod_perl's build script installs APR::ThreadMutex(3pm) manual even if APR::ThreadMutex
    module is disabled.

I will try to adapt mod_perl's build script to the modified apr.h header file.

Comment 2 Fedora Update System 2021-07-14 09:14:03 UTC
FEDORA-2021-765587b9ab has been submitted as an update to Fedora 34. https://bodhi.fedoraproject.org/updates/FEDORA-2021-765587b9ab

Comment 3 Fedora Update System 2021-07-14 09:27:46 UTC
FEDORA-2021-b3da202f28 has been submitted as an update to Fedora 33. https://bodhi.fedoraproject.org/updates/FEDORA-2021-b3da202f28

Comment 4 Fedora Update System 2021-07-14 10:39:39 UTC
FEDORA-EPEL-2021-813118785a has been submitted as an update to Fedora EPEL 8. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2021-813118785a

Comment 5 Fedora Update System 2021-07-15 01:13:04 UTC
FEDORA-EPEL-2021-813118785a has been pushed to the Fedora EPEL 8 testing repository.

You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2021-813118785a

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 6 Fedora Update System 2021-07-15 01:40:30 UTC
FEDORA-2021-765587b9ab has been pushed to the Fedora 34 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2021-765587b9ab`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2021-765587b9ab

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 7 Fedora Update System 2021-07-15 01:45:40 UTC
FEDORA-2021-b3da202f28 has been pushed to the Fedora 33 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2021-b3da202f28`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2021-b3da202f28

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 8 Fedora Update System 2021-07-23 01:03:21 UTC
FEDORA-2021-765587b9ab has been pushed to the Fedora 34 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 9 Fedora Update System 2021-07-23 01:16:35 UTC
FEDORA-2021-b3da202f28 has been pushed to the Fedora 33 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 10 Fedora Update System 2021-07-30 00:33:10 UTC
FEDORA-EPEL-2021-813118785a has been pushed to the Fedora EPEL 8 stable repository.
If problem still persists, please make note of it in this bug report.


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