Bug 1987993

Summary: scipy: FTBFS in Fedora rawhide/f35
Product: [Fedora] Fedora Reporter: Fedora Release Engineering <releng>
Component: scipyAssignee: Nikola Forró <nforro>
Status: CLOSED NEXTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: high    
Version: 35CC: cstratak, david08741, mhroncok, mmuzila, nforro, python-sig, thrnciar, tomspur
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2022-03-28 13:33:02 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1890881, 1927309, 1992484, 2016048, 2045102    
Attachments:
Description Flags
build.log
none
root.log
none
state.log none

Description Fedora Release Engineering 2021-07-29 17:37:30 UTC
scipy failed to build from source in Fedora rawhide/f35

https://koji.fedoraproject.org/koji/taskinfo?taskID=72506709


For details on the mass rebuild see:

https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Please fix scipy at your earliest convenience and set the bug's status to
ASSIGNED when you start fixing it. If the bug remains in NEW state for 8 weeks,
scipy will be orphaned. Before branching of Fedora 36,
scipy will be retired, if it still fails to build.

For more details on the FTBFS policy, please visit:
https://docs.fedoraproject.org/en-US/fesco/Fails_to_build_from_source_Fails_to_install/

Comment 1 Fedora Release Engineering 2021-07-29 17:37:35 UTC
Created attachment 1808799 [details]
build.log

file build.log too big, will only attach last 32768 bytes

Comment 2 Fedora Release Engineering 2021-07-29 17:37:39 UTC
Created attachment 1808800 [details]
root.log

file root.log too big, will only attach last 32768 bytes

Comment 3 Fedora Release Engineering 2021-07-29 17:37:40 UTC
Created attachment 1808801 [details]
state.log

Comment 4 Ben Cotton 2021-08-10 13:30:37 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 35 development cycle.
Changing version to 35.

Comment 5 Matej Mužila 2021-09-22 06:42:06 UTC
This seems to be a problem with lapack package. I wrote a Fortran program that uses liblapack directly (it resembles <scipy.linalg.tests.test_decomp.TestSchur> lhp sort test) and it gives different result on F33 and F36.

Comment 6 Nikola Forró 2021-09-28 15:39:11 UTC
Thanks Matěj! Could you file a bug against lapack then?

Comment 7 Matej Mužila 2021-10-11 14:07:16 UTC
I managed to reach Lapack upstream. It seems that the Lapack library still gives valid results (despite of being different).

https://github.com/Reference-LAPACK/lapack/issues/628

Comment 8 Nikola Forró 2021-11-08 12:59:24 UTC
(In reply to Matej Mužila from comment #7)
> I managed to reach Lapack upstream. It seems that the Lapack library still
> gives valid results (despite of being different).
> 
> https://github.com/Reference-LAPACK/lapack/issues/628

Matěj, does this mean the test(s) need to be modified to account for different results of DGEES? It still fails with scipy 1.7.2.

Comment 9 Matej Mužila 2021-11-08 13:38:35 UTC
(In reply to Nikola Forró from comment #8)
> (In reply to Matej Mužila from comment #7)
> > I managed to reach Lapack upstream. It seems that the Lapack library still
> > gives valid results (despite of being different).
> > 
> > https://github.com/Reference-LAPACK/lapack/issues/628
> 
> Matěj, does this mean the test(s) need to be modified to account for
> different results of DGEES? It still fails with scipy 1.7.2.

If I understand upstream's explanation [1] correctly, then yes. It seems that the Schur decomposition can have more than one valid outputs for an input. It means that the result expected by the testsuite is valid, but it is not the only valid result possible. Implementation of lapack have changed, thus now it returns a different result from set of possible results.

[1] https://github.com/Reference-LAPACK/lapack/issues/628#issuecomment-940023706

Comment 10 Miro Hrončok 2022-03-22 13:03:36 UTC
219 are blocked by this for Python 3.11 rebuild. Bumping severity accordingly.

Comment 11 Nikola Forró 2022-03-23 09:19:04 UTC
Sorry, I've been working on this (together with a rebase to 1.8.0), there is one i686 issue left, I'll try to resolve it ASAP.

Comment 12 Nikola Forró 2022-03-28 13:25:29 UTC
(In reply to Matej Mužila from comment #9)
> If I understand upstream's explanation [1] correctly, then yes. It seems
> that the Schur decomposition can have more than one valid outputs for an
> input. It means that the result expected by the testsuite is valid, but it
> is not the only valid result possible. Implementation of lapack have
> changed, thus now it returns a different result from set of possible results.
> 
> [1]
> https://github.com/Reference-LAPACK/lapack/issues/628#issuecomment-940023706

Here is an upstream issue for this: https://github.com/scipy/scipy/issues/14517

Comment 13 Nikola Forró 2022-03-28 13:33:02 UTC
The FTBFS should be resolved with rebase to 1.8.0 (bug #2035126).