#13864: Configure Python with pydebug when SAGE_DEBUG is set
----------------------------------------------------------+-----------------
Reporter: jpflori | Owner:
jason
Type: task | Status:
needs_work
Priority: major | Milestone:
sage-pending
Component: misc | Resolution:
Keywords: python spkg | Work issues:
make sure Sage builds and starts
Report Upstream: N/A | Reviewers:
Volker Braun
Authors: Jean-Pierre Flori | Merged in:
Dependencies: #13865, #13867, #13868, #13876, #13832 | Stopgaps:
----------------------------------------------------------+-----------------
Comment (by SimonKing):
With a manually installed zodb3-3.10.5 and the other involved tickets,
`make ptest` with `MALLOC_CHECK_=3` results in the following crashes:
{{{
The following tests failed:
sage -t -force_lib devel/sage/sage/combinat/tiling.py #
Killed/crashed
sage -t -force_lib
devel/sage/sage/schemes/elliptic_curves/ell_local_data.py # Killed/crashed
sage -t -force_lib
devel/sage/sage/schemes/elliptic_curves/ell_finite_field.py #
Killed/crashed
sage -t -force_lib
devel/sage/sage/schemes/elliptic_curves/ell_curve_isogeny.py #
Killed/crashed
sage -t -force_lib devel/sage/sage/schemes/elliptic_curves/BSD.py
# Killed/crashed
sage -t -force_lib
devel/sage/sage/schemes/elliptic_curves/ell_number_field.py #
Killed/crashed
sage -t -force_lib
devel/sage/sage/schemes/elliptic_curves/ell_torsion.py # Killed/crashed
sage -t -force_lib
devel/sage/sage/schemes/elliptic_curves/ell_field.py # Killed/crashed
sage -t -force_lib
devel/sage/sage/schemes/elliptic_curves/heegner.py # Killed/crashed
sage -t -force_lib
devel/sage/sage/schemes/elliptic_curves/ell_point.py # Killed/crashed
sage -t -force_lib
devel/sage/sage/schemes/elliptic_curves/gal_reps.py # Killed/crashed
sage -t -force_lib devel/sage/sage/modules/free_module.py #
Killed/crashed
sage -t -force_lib devel/sage/sage/modules/matrix_morphism.py #
Killed/crashed
sage -t -force_lib
devel/sage/sage/algebras/quatalg/quaternion_algebra.py # Killed/crashed
sage -t -force_lib
devel/sage/sage/quadratic_forms/quadratic_form__ternary_Tornaria.py #
Killed/crashed
sage -t -force_lib
devel/sage/sage/quadratic_forms/quadratic_form__genus.py # Killed/crashed
sage -t -force_lib
devel/sage/sage/quadratic_forms/quadratic_form__equivalence_testing.py #
Killed/crashed
sage -t -force_lib
devel/sage/sage/quadratic_forms/genera/genus.py # Killed/crashed
sage -t -force_lib devel/sage/sage/homology/chain_complex.py #
Killed/crashed
sage -t -force_lib devel/sage/sage/modular/quatalg/brandt.py #
Killed/crashed
sage -t -force_lib devel/sage/sage/modular/abvar/abvar.py #
Killed/crashed
sage -t -force_lib
devel/sage/sage/modular/modform/find_generators.py # Killed/crashed
sage -t -force_lib devel/sage/sage/modular/modsym/ambient.py #
Killed/crashed
sage -t -force_lib devel/sage/sage/rings/residue_field.pyx #
Killed/crashed
sage -t -force_lib
devel/sage/sage/rings/number_field/number_field_element.pyx #
Killed/crashed
sage -t -force_lib
devel/sage/sage/rings/number_field/number_field_ideal.py # Killed/crashed
sage -t -force_lib devel/sage/sage/rings/polynomial/pbori.pyx #
Killed/crashed
sage -t -force_lib
devel/sage/sage/rings/finite_rings/finite_field_base.pyx # Killed/crashed
sage -t -force_lib devel/sage/sage/matrix/benchmark.py #
Killed/crashed
sage -t -force_lib
devel/sage/sage/matrix/matrix_modn_dense_template.pxi # Killed/crashed
sage -t -force_lib
devel/sage/sage/matrix/matrix_integer_dense_hnf.py # Killed/crashed
sage -t -force_lib
devel/sage/sage/matrix/matrix_integer_dense_saturation.py # Killed/crashed
sage -t -force_lib devel/sage/sage/matrix/matrix_cyclo_dense.pyx
# Killed/crashed
sage -t -force_lib devel/sage/sage/matrix/matrix2.pyx #
Killed/crashed
----------------------------------------------------------------------
Total time for all tests: 7238.7 seconds
}}}
Nils has reported a failure in an assert in `linbox/matric/permutation-
matrix.h`, that I can confirm. Again with `MALLOC_CHECK_=3` and gdb:
{{{
sage: sage.homology.chain_complex.HomologyGroup(100)
ERROR (at getWritePointer in
/home/simon/SAGE/debug/sage-5.6.beta1/local/include/linbox/matrix
/permutation-matrix.h:175):
Precondition not met:P_.size()
terminate called after throwing an instance of
'LinBox::PreconditionFailed'
Program received signal SIGABRT, Aborted.
0x00007ffff6d95d95 in raise () from /lib64/libc.so.6
(gdb) bt
#0 0x00007ffff6d95d95 in raise () from /lib64/libc.so.6
#1 0x00007ffff6d972ab in abort () from /lib64/libc.so.6
#2 0x00007ffff2295f2d in __gnu_cxx::__verbose_terminate_handler() () from
/usr/lib64/libstdc++.so.6
#3 0x00007ffff22940d6 in ?? () from /usr/lib64/libstdc++.so.6
#4 0x00007ffff2294103 in std::terminate() () from
/usr/lib64/libstdc++.so.6
#5 0x00007ffff22941fe in __cxa_throw () from /usr/lib64/libstdc++.so.6
#6 0x00007fffd718c62f in LinBox::BlasPermutation<unsigned
long>::getWritePointer (this=0x7fffffff6760) at
/home/simon/SAGE/debug/sage-5.6.beta1/local/include/linbox/matrix
/permutation-matrix.h:175
#7 0x00007fffd717f0b1 in LinBox::LQUPMatrix<LinBox::Modular<double>
>::LQUPMatrix (this=0x7fffffff6700, A=..., P=..., Q=...)
at /home/simon/SAGE/debug/sage-5.6.beta1/local/include/linbox/matrix
/factorized-matrix.inl:810
#8 0x00007fffd716b350 in
LinBox::EchelonFormDomain<LinBox::Modular<double>
>::columnReducedEchelon<LinBox::BlasMatrix<LinBox::Modular<double> > >
(this=0x6a247c0, E=...)
at
/home/simon/SAGE/debug/sage-5.6.beta1/local/include/linbox/algorithms
/echelon-form.h:205
#9 0x00007fffd716653e in
LinBox::EchelonFormDomain<LinBox::Modular<double>
>::rowReducedEchelon<LinBox::BlasMatrix<LinBox::Modular<double> > >
(this=0x6a247c0, E=..., A=...)
at
/home/simon/SAGE/debug/sage-5.6.beta1/local/include/linbox/algorithms
/echelon-form.h:107
#10 0x00007fffd71279f5 in
__pyx_f_4sage_6matrix_24matrix_modn_dense_double_linbox_echelonize_efd
(__pyx_v_modulus=21059, __pyx_v_entries=0x6a24730, __pyx_v_nrows=0,
__pyx_v_ncols=100)
at sage/matrix/matrix_modn_dense_double.cpp:4074
#11 0x00007fffd71417ca in
__pyx_pf_4sage_6matrix_24matrix_modn_dense_double_26Matrix_modn_dense_template_34_echelonize_linbox
(__pyx_v_self=0x66aa6d8, __pyx_v_efd=0x7ffff7d89ec0 <_Py_TrueStruct>)
at sage/matrix/matrix_modn_dense_double.cpp:11280
#12 0x00007fffd71411c1 in
__pyx_pw_4sage_6matrix_24matrix_modn_dense_double_26Matrix_modn_dense_template_35_echelonize_linbox
(__pyx_v_self=0x66aa6d8, __pyx_args=0x7ffff7f90060, __pyx_kwds=0x6a39940)
at sage/matrix/matrix_modn_dense_double.cpp:11185
#13 0x00007ffff7a21088 in PyCFunction_Call (func=0x66b40d8,
arg=0x7ffff7f90060, kw=0x6a39940) at Objects/methodobject.c:85
#14 0x00007ffff79be33e in PyObject_Call (func=0x66b40d8,
arg=0x7ffff7f90060, kw=0x6a39940) at Objects/abstract.c:2529
#15 0x00007fffd713f3ce in
__pyx_pf_4sage_6matrix_24matrix_modn_dense_double_26Matrix_modn_dense_template_32echelonize
(__pyx_v_self=0x66aa6d8, __pyx_v_algorithm=0x26ae2e0,
__pyx_v_kwds=0x6a37920)
at sage/matrix/matrix_modn_dense_double.cpp:10889
#16 0x00007fffd713e64a in
__pyx_pw_4sage_6matrix_24matrix_modn_dense_double_26Matrix_modn_dense_template_33echelonize
(__pyx_v_self=0x66aa6d8, __pyx_args=0x7ffff7f90060, __pyx_kwds=0x6a368f0)
at sage/matrix/matrix_modn_dense_double.cpp:10738
#17 0x00007ffff7a21088 in PyCFunction_Call (func=0x65abc90,
arg=0x7ffff7f90060, kw=0x6a368f0) at Objects/methodobject.c:85
#18 0x00007ffff79be33e in PyObject_Call (func=0x65abc90,
arg=0x7ffff7f90060, kw=0x6a368f0) at Objects/abstract.c:2529
#19 0x00007fffd9b50c55 in
__pyx_pf_4sage_6matrix_7matrix2_6Matrix_134echelon_form
(__pyx_v_self=0x66aa568, __pyx_v_algorithm=0x653be0,
__pyx_v_cutoff=0x61f5b8, __pyx_v_kwds=0x67154d0)
at sage/matrix/matrix2.c:31710
#20 0x00007fffd9b4ffca in
__pyx_pw_4sage_6matrix_7matrix2_6Matrix_135echelon_form
(__pyx_v_self=0x66aa568, __pyx_args=0x7ffff7f90060, __pyx_kwds=0x0) at
sage/matrix/matrix2.c:31508
#21 0x00007ffff7a21088 in PyCFunction_Call (func=0xfb0588,
arg=0x7ffff7f90060, kw=0x0) at Objects/methodobject.c:85
#22 0x00007ffff79be33e in PyObject_Call (func=0xfb0588,
arg=0x7ffff7f90060, kw=0x0) at Objects/abstract.c:2529
#23 0x00007fffd95f2e94 in
__pyx_pf_4sage_6matrix_7matrix0_6Matrix_124pivots (__pyx_v_self=0x66aa568)
at sage/matrix/matrix0.c:20883
...
}}}
Given the list of crashing tests above, a failure in echelonisation of
matrices is likely to explain most of the crashes.
Question: Is that an upstream bug (in Linbox) or did we screw up by
ourselves?
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/13864#comment:87>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.