sagemath / sage-numerical-backends-coin

COIN-OR mixed integer linear programming backend for SageMath. Source repository for https://pypi.org/project/sage-numerical-backends-coin/, can be installed on top of distributions providing SageMath. See also https://github.com/sagemath/sage-numerical-backends-gurobi and https://github.com/sagemath/sage-numerical-backends-cplex
GNU General Public License v2.0
3 stars 4 forks source link

crashes in branch and bound tests (sage/numerical/optimize.py) #10

Open dimpase opened 1 year ago

dimpase commented 1 year ago
Cython backtrace
----------------
#0  0x00007f8b79afcc20 in wait4 ()
#1  0x00007f8b6b86340a in print_enhanced_backtrace () at /home/scratch/scratch2/dimpase/sage/sage/local/var/lib/sage/venv-python3.11/var/tmp/sage/build/cysignals-1.11.4/src/build/src/cysignals/implementation.c:672
#2  0x00007f8b6b863380 in sigdie () at /home/scratch/scratch2/dimpase/sage/sage/local/var/lib/sage/venv-python3.11/var/tmp/sage/build/cysignals-1.11.4/src/build/src/cysignals/implementation.c:698
#3  0x00007f8b6b866220 in sigdie_for_sig () at /home/scratch/scratch2/dimpase/sage/sage/local/var/lib/sage/venv-python3.11/var/tmp/sage/build/cysignals-1.11.4/src/build/src/cysignals/implementation.c:252
#4  0x00007f8b6b866200 in cysigs_signal_handler () at /home/scratch/scratch2/dimpase/sage/sage/local/var/lib/sage/venv-python3.11/var/tmp/sage/build/cysignals-1.11.4/src/build/src/cysignals/implementation.c:361
#5  0x00007f8b7a381e50 in __restore_rt ()
#6  0x00007f8b79ab0770 in __pthread_kill_implementation ()
#7  0x00007f8b79a5fae0 in raise ()
#8  0x00007f8b79a487a0 in abort ()
#9  0x0000000000000000 in __assert_fail_base.cold ()
#10 0x00007f8b79a58140 in __assert_fail ()
#11 0x0000000000000000 in CbcModel::doOneNode(CbcModel*, CbcNode*&, CbcNode*&) ()
#12 0x0000000000000000 in CbcModel::branchAndBound(int) ()
#13 0x00007f8ae7f8d040 in __pyx_f_28sage_numerical_backends_coin_12coin_backend_11CoinBackend_solve () at /home/scratch/scratch2/dimpase/sage/sage/upstream/sage-numerical-backends-coin/sage_numerical_backends_coin/coin_backend.cpp:12435
  12430     *
  12431     *         model.branchAndBound()             # <<<<<<<<<<<<<<
  12432     *
  12433     *         if model.solver().isAbandoned():
  12434     */
> 12435      __pyx_v_model->branchAndBound();
  12436
  12437      /* "sage_numerical_backends_coin/coin_backend.pyx":837
  12438     *         model.branchAndBound()
  12439     *
#14 0x00007f8af2d187e0 in __pyx_pf_4sage_9numerical_3mip_25MixedIntegerLinearProgram_70solve () at /home/scratch/scratch2/dimpase/sage/sage/src/sage/numerical/mip.c:20798
  20793     *             self._backend.set_verbosity(log)
  20794     *         self._backend.solve()             # <<<<<<<<<<<<<<
  20795     *         return self._backend.get_objective_value()
  20796     *
  20797     */
> 20798      __pyx_t_2 = ((struct __pyx_vtabstruct_4sage_9numerical_8backends_15generic_backend_GenericBackend *)__pyx_v_self->_backend->__pyx_vtab)->solve(__pyx_v_self->_backend, 0); if (unlikely(__pyx_t_2 == ((int)-1))) __PYX_ERR(0, 2659, __pyx_L1_error)
  20799
  20800      /* "sage/numerical/mip.pyx":2660
  20801     *             self._backend.set_verbosity(log)
  20802     *         self._backend.solve()
#15 0x00007f8af2d18740 in __pyx_pw_4sage_9numerical_3mip_25MixedIntegerLinearProgram_71solve () at /home/scratch/scratch2/dimpase/sage/sage/src/sage/numerical/mip.c:20736
  20731      }
  20732      __Pyx_AddTraceback("sage.numerical.mip.MixedIntegerLinearProgram.solve", __pyx_clineno, __pyx_lineno, __pyx_filename);
  20733      __Pyx_RefNannyFinishContext();
  20734      return NULL;
  20735      __pyx_L4_argument_unpacking_done:;
> 20736      __pyx_r = __pyx_pf_4sage_9numerical_3mip_25MixedIntegerLinearProgram_70solve(((struct __pyx_obj_4sage_9numerical_3mip_MixedIntegerLinearProgram *)__pyx_v_self), __pyx_v_log, __pyx_v_objective_only);
  20737
  20738      /* function exit code */
  20739      {
  20740        Py_ssize_t __pyx_temp;
#16 0x00007f8b79deb3a0 in method_vectorcall_FASTCALL_KEYWORDS ()
#17 0x00007f8b79dc8320 in PyObject_Vectorcall ()
#18 0x00007f8b79dba1f0 in _PyEval_EvalFrameDefault ()
#19 0x00007f8b79db6b30 in _PyEval_Vector ()
#20 0x00007f8b79e3b0b0 in PyEval_EvalCode ()
#21 0x00007f8b79e51760 in builtin_exec ()
#22 0x00007f8b79dba1f0 in _PyEval_EvalFrameDefault ()
#23 0x00007f8b79db6b30 in _PyEval_Vector ()
#24 0x00007f8b79db4e50 in _PyObject_FastCallDictTstate ()
#25 0x00007f8b79ddeed0 in _PyObject_Call_Prepend ()
#26 0x00007f8b79e7ec80 in slot_tp_call ()
#27 0x00007f8b79db2100 in _PyObject_MakeTpCall ()
#28 0x00007f8b79dba1f0 in _PyEval_EvalFrameDefault ()
#29 0x00007f8b79db6b30 in _PyEval_Vector ()
#30 0x00007f8b79db4e50 in _PyObject_FastCallDictTstate ()
#31 0x00007f8b79ddeca0 in slot_tp_init ()
#32 0x00007f8b79db22a0 in type_call ()
#33 0x00007f8b79db2100 in _PyObject_MakeTpCall ()
#34 0x00007f8b79dba1f0 in _PyEval_EvalFrameDefault ()
#35 0x00007f8b79db6b30 in _PyEval_Vector ()
#36 0x00007f8b79e3b0b0 in PyEval_EvalCode ()
#37 0x00007f8b79e583c0 in run_eval_code_obj ()
#38 0x00007f8b79e54a10 in run_mod ()
#39 0x00007f8b79e6a5b0 in pyrun_file ()
#40 0x00007f8b79e69c60 in _PyRun_SimpleFileObject ()
#41 0x00007f8b79e69a60 in _PyRun_AnyFileObject ()
#42 0x00007f8b79e63620 in Py_RunMain ()
#43 0x00007f8b79e2b450 in Py_BytesMain ()
#44 0x00007f8b79a49b10 in __libc_start_call_main ()
#45 0x00007f8b79a49bc0 in __libc_start_main_impl ()
#46 0x0000561550f52070 in _start ()

[Inferior 1 (process 968723) detached]
Saved trace to /home/scratch/dimpase/.sage/crash_logs/crash_fgnaqut9.log
------------------------------------------------------------------------
Unhandled SIGABRT: An abort() occurred.
This probably occurred because a *compiled* module has a bug
in it and is not properly wrapped with sig_on(), sig_off().
Python will now terminate.
------------------------------------------------------------------------

**********************************************************************
----------------------------------------------------------------------
sage -t --warn-long 19.7 --random-seed=103828723293420636463050522643679433957 src/sage/numerical/optimize.py  # Killed due to abort
----------------------------------------------------------------------

This is on Fedora 38 with coin-or-Cbc-2.10.5-12.fc38.x86_64

dimpase commented 1 year ago

however, all is good with the same Cbc version on Gentoo. So it could be Fedora-only weirdness.