Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Debug #334 #592

Draft
wants to merge 29 commits into
base: main
Choose a base branch
from
Draft

Debug #334 #592

wants to merge 29 commits into from

Conversation

jaimergp
Copy link
Contributor

Description

See #334 (comment)

Checklist - did you ...

  • Add a file to the news directory (using the template) for the next release's release notes?
  • Add / update necessary tests?
  • Add / update outdated documentation?

@conda-bot conda-bot added the cla-signed [bot] added once the contributor has signed the CLA label Dec 19, 2024
@jaimergp
Copy link
Contributor Author

@jaimergp
Copy link
Contributor Author

Klaim and I are iterating here. Found one more segfault and scheduled a few more CI runs. Let's see what we can fish.

For now we have this stack:

Current thread 0x00000c18 (most recent call first):
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda-libmamba-solver\conda_libmamba_solver\solver.py", line 359 in _solve_attempt
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda-libmamba-solver\conda_libmamba_solver\solver.py", line 307 in _solving_loop
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\conda\common\io.py", line 87 in decorated
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda-libmamba-solver\conda_libmamba_solver\solver.py", line 181 in solve_final_state
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\conda\core\solve.py", line 222 in solve_for_diff
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\conda\core\solve.py", line 153 in solve_for_transaction
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\conda\cli\install.py", line 409 in install
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\conda\cli\main_install.py", line 152 in execute
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\conda\notices\core.py", line 132 in wrapper
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\conda\cli\conda_argparse.py", line [205](https://github.com/conda/conda-libmamba-solver/actions/runs/12433118276/job/34713978179#step:12:206) in do_call
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\conda\cli\main.py", line 61 in main_subshell
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\conda\testing\fixtures.py", line 236 in __call__
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\tests\test_create.py", line 430 in test_json_create_install_update_remove
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\python.py", line 159 in pytest_pyfunc_call
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_callers.py", line 103 in _multicall
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_manager.py", line 120 in _hookexec
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_hooks.py", line 513 in __call__
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\python.py", line 1627 in runtest
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\runner.py", line 174 in pytest_runtest_call
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_callers.py", line 103 in _multicall
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_manager.py", line 120 in _hookexec
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_hooks.py", line 513 in __call__
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\runner.py", line 242 in <lambda>
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\runner.py", line 341 in from_call
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\runner.py", line 241 in call_and_report
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\runner.py", line 132 in runtestprotocol
  File "C:\Miniconda\envs\test\Lib\site-packages\pytest_rerunfailures.py", line 566 in pytest_runtest_protocol
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_callers.py", line 103 in _multicall
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_manager.py", line 120 in _hookexec
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_hooks.py", line 513 in __call__
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\main.py", line 362 in pytest_runtestloop
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_callers.py", line 103 in _multicall
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_manager.py", line 120 in _hookexec
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_hooks.py", line 513 in __call__
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\main.py", line 337 in _main
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\main.py", line 283 in wrap_session
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\main.py", line 330 in pytest_cmdline_main
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_callers.py", line 103 in _multicall
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_manager.py", line 120 in _hookexec
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_hooks.py", line 513 in __call__
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\config\__init__.py", line 175 in main
  File "<string>", line 1 in <module>
tests/test_create.py::test_json_create_install_update_remove[libmamba] ############ 
 SIGNAL: SIGSEGV (segfault/access-violation) = 11 - ABORTING :
 0# solv::ObjTransaction::order in libmamba
 1# solv::ObjTransaction::order in libmamba
 2# log2f in ucrtbase
 3# OPENSSL_Applink in python
 4# _C_specific_handler in VCRUNTIME140
 5# _chkstk in ntdll
 6# RtlVirtualUnwind2 in ntdll
 7# KiUserExceptionDispatcher in ntdll
 8# pool_job2str in solv
 9# pool_job2str in solv
10# pool_job2str in solv
11# solver_run_sat in solv
12# solver_solve in solv
13# solv::ObjTransaction::order in libmamba
14# solv::ObjTransaction::order in libmamba
15# solv::ObjTransaction::order in libmamba
16# solv::ObjTransaction::order in libmamba
17# solv::ObjTransaction::order in libmamba
18# PyInit_bindings in bindings_cp311_win_amd64
19# PyInit_bindings in bindings_cp311_win_amd64
20# PyInit_bindings in bindings_cp311_win_amd64
21# PyCFunction_GetFlags in python311
22# PyObject_MakeTpCall in python311
23# PyEval_GetFuncDesc in python311
24# PyEval_EvalFrameDefault in python311
25# PyEval_EvalFrameDefault in python311
26# PyFunction_Vectorcall in python311
27# PyVectorcall_Function in python311
28# PyObject_Call in python311
29# PyEval_GetFuncDesc in python311
30# PyEval_EvalFrameDefault in python311
31# PyEval_EvalFrameDefault in python311
32# PyFunction_Vectorcall in python311
33# PyVectorcall_Function in python311
34# PyObject_Call in python311
35# PyEval_GetFuncDesc in python311
36# PyEval_EvalFrameDefault in python311
37# PyEval_EvalFrameDefault in python311
38# PyFunction_Vectorcall in python311
39# PyVectorcall_Function in python311
40# PyObject_Call in python311
41# PyEval_GetFuncDesc in python311
42# PyEval_EvalFrameDefault in python311
43# PyEval_EvalFrameDefault in python311
44# PyFunction_Vectorcall in python311
45# PyObject_FastCallDictTstate in python311
46# PyObject_Call_Prepend in python311
47# PyType_Ready in python311
48# PyObject_MakeTpCall in python311
49# PyEval_GetFuncDesc in python311
50# PyEval_EvalFrameDefault in python311
51# PyEval_EvalFrameDefault in python311
52# PyFunction_Vectorcall in python311
53# PyVectorcall_Function in python311
54# PyObject_Call in python311
55# PyEval_GetFuncDesc in python311
56# PyEval_EvalFrameDefault in python311
57# PyEval_EvalFrameDefault in python311
58# PyFunction_Vectorcall in python311
59# PyVectorcall_Function in python311
60# PyObject_Call in python311
61# PyEval_GetFuncDesc in python311
62# PyEval_EvalFrameDefault in python311
63# PyEval_EvalFrameDefault in python311
64# PyFunction_Vectorcall in python311
65# PyObject_FastCallDictTstate in python311
66# PyObject_Call_Prepend in python311
67# PyType_Ready in python311
68# PyObject_MakeTpCall in python311
69# PyEval_GetFuncDesc in python311
70# PyEval_EvalFrameDefault in python311
71# PyEval_EvalFrameDefault in python311
72# PyFunction_Vectorcall in python311
73# PyVectorcall_Function in python311
74# PyObject_Call in python311
75# PyEval_GetFuncDesc in python311
76# PyEval_EvalFrameDefault in python311
77# PyEval_EvalFrameDefault in python311
78# PyFunction_Vectorcall in python311
79# PyObject_FastCallDictTstate in python311
80# PyObject_Call_Prepend in python311
81# PyType_Ready in python311
82# PyObject_Call in python311
83# PyEval_GetFuncDesc in python[311](https://github.com/conda/conda-libmamba-solver/actions/runs/12433118276/job/34713978179#step:12:312)
84# PyEval_EvalFrameDefault in python311
85# PyEval_EvalFrameDefault in python311
86# PyFunction_Vectorcall in python311
87# PyVectorcall_Function in python311
88# PyObject_Call in python311
89# PyEval_GetFuncDesc in python311
90# PyEval_EvalFrameDefault in python311
91# PyEval_EvalFrameDefault in python311
92# PyFunction_Vectorcall in python311
93# PyObject_FastCallDictTstate in python311
94# PyObject_Call_Prepend in python311
95# PyType_Ready in python311
96# PyObject_MakeTpCall in python311
97# PyEval_GetFuncDesc in python311
98# PyEval_EvalFrameDefault in python311
99# PyEval_EvalFrameDefault in python311
100# PyFunction_Vectorcall in python311
101# PyVectorcall_Function in python311
102# PyObject_Call in python311
103# PyEval_GetFuncDesc in python311
104# PyEval_EvalFrameDefault in python311
105# PyEval_EvalFrameDefault in python311
106# PyFunction_Vectorcall in python311
107# PyObject_FastCallDictTstate in python311
108# PyObject_Call_Prepend in python311
109# PyType_Ready in python311
110# PyObject_MakeTpCall in python311
111# PyEval_GetFuncDesc in python311
112# PyEval_EvalFrameDefault in python311
113# PyEval_EvalFrameDefault in python311
114# PyFunction_Vectorcall in python311
115# PyVectorcall_Function in python311
116# PyObject_Call in python311
117# PyEval_GetFuncDesc in python311
118# PyEval_EvalFrameDefault in python311
119# PyEval_EvalFrameDefault in python311
120# PyFunction_Vectorcall in python311
121# PyObject_FastCallDictTstate in python311
122# PyObject_Call_Prepend in python311
123# PyType_Ready in python311
124# PyObject_MakeTpCall in python311
125# PyEval_GetFuncDesc in python311
126# PyEval_EvalFrameDefault in python311
127# PyEval_EvalCode in python311
128# PyRun_FileExFlags in python311
129# PyRun_FileExFlags in python311
130# PyRun_StringFlags in python311
131# PyRun_SimpleStringFlags in python311
132# Py_gitidentifier in python311
133# Py_RunMain in python311
134# Py_Main in python311
135# OPENSSL_Applink in python
136# BaseThreadInitThunk in KERNEL32
137# RtlUserThreadStart in ntdll

Highlights:

  • The code leaves CLS by calling solver.solve(). I have added some prints to check what we get here.
  • Then goes into libmamba, libsolv (which passes by error handling logic) and back to libmamba. It looks like an exception is not being handled properly.

@jaimergp
Copy link
Contributor Author

The latest libmambapy patch are causing the conda-libmamba-solver tests to run too slow to fit even in the 6h, maybe something to do with the extra output. Disabling for now because they don't usually segfault anyway.

@Klaim
Copy link

Klaim commented Dec 21, 2024

The latest libmambapy patch are causing the conda-libmamba-solver tests to run too slow to fit even in the 6h, maybe something to do with the extra output. Disabling for now because they don't usually segfault anyway.

I think it's because I enabled assertions in one of the translation unit... I'll remove that for next test binaries.

@jaimergp
Copy link
Contributor Author

I think something in the latest binaries has fixed or hidden the segfault, because we haven't obtained one in like 300 cumulative runs.

@jaimergp
Copy link
Contributor Author

jaimergp commented Dec 22, 2024

Had to post that message to finally get one 😂

https://github.com/conda/conda-libmamba-solver/actions/runs/12444509580/job/34764225965?pr=592#step:12:225

Similar to the other one:

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) : 00000133DCD6EB80, 000000153F7EBF90
KLAIM CUSTOM LOG: assert_same_pool(pool, trans) : 00000133DCD6D920, 000000153F7EBF90
KLAIM CUSTOM LOG: assert_same_pool(pool, trans) : 00000133DCD6D920, 000000153F7EBF90
KLAIM CUSTOM LOG: assert_same_pool(pool, trans) : 00000133DCD6D920, 000000153F7EBF90
KLAIM CUSTOM LOG: assert_same_pool(pool, trans) : 00000133DCD6D920, 000000153F7EBF90
KLAIM CUSTOM LOG: assert_same_pool(pool, trans) : 00000133DCD6D920, 000000153F7EBF90
KLAIM CUSTOM LOG: assert_same_pool(pool, trans) : 00000133DCD6D920, 000000153F7EBF90
KLAIM CUSTOM LOG: assert_same_pool(pool, trans) : 00000133DCD6D920, 000000153F7EBF90
KLAIM CUSTOM LOG: assert_same_pool(pool, trans) : 00000133DCD6D920, 000000153F7EBF90
KLAIM CUSTOM LOG: assert_same_pool(pool, trans) : 00000133DCD6D920, 000000153F7EBF90
KLAIM CUSTOM LOG: assert_same_pool(pool, trans) : 00000133DCD6D920, 000000153F7EBF90
KLAIM CUSTOM LOG: assert_same_pool(pool, trans) : 00000133DCD6D920, 000000153F7EBF90
KLAIM CUSTOM LOG: assert_same_pool(pool, trans) : 00000133DCD6D920, 000000153F7EBF90
KLAIM CUSTOM LOG: assert_same_pool(pool, trans) : 00000133DCD6D920, 000000153F7EBF90
KLAIM CUSTOM LOG: assert_same_pool(pool, trans) : 00000133DCD6D920, 000000153F7EBF90
KLAIM CUSTOM LOG: assert_same_pool(pool, trans) : 00000133DCD6D920, 000000153F7EBF90
KLAIM CUSTOM LOG: assert_same_pool(pool, trans) : 00000133DCD6D920, 000000153F7EBF90
KLAIM CUSTOM LOG: assert_same_pool(pool, trans) : 00000133DCD6D920, 000000153F7EBF90
KLAIM CUSTOM LOG: assert_same_pool(pool, trans) : 00000133DCD6D920, 000000153F7EBF90
KLAIM CUSTOM LOG: assert_same_pool(pool, trans) : 00000133DCD6D920, 000000153F7EBF90
KLAIM CUSTOM LOG: assert_same_pool(pool, trans) : 00000133DCD6D920, 000000153F7EBF90Windows fatal exception: access violation

Thread 0x00000ba4 (most recent call first):
  File "C:\Miniconda\envs\test\Lib\threading.py", line 331 in wait
  File "C:\Miniconda\envs\test\Lib\threading.py", line 629 in wait
  File "C:\Miniconda\envs\test\Lib\site-packages\tqdm\_monitor.py", line 60 in run
  File "C:\Miniconda\envs\test\Lib\threading.py", line 1045 in _bootstrap_inner
  File "C:\Miniconda\envs\test\Lib\threading.py", line 1002 in _bootstrap

Current thread 0x00000ca8 (most recent call first):
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda-libmamba-solver\conda_libmamba_solver\solver.py", line 359 in _solve_attempt
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda-libmamba-solver\conda_libmamba_solver\solver.py", line 307 in _solving_loop
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\conda\common\io.py", line 87 in decorated
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda-libmamba-solver\conda_libmamba_solver\solver.py", line 181 in solve_final_state
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\conda\core\solve.py", line 222 in solve_for_diff
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\conda\core\solve.py", line 153 in solve_for_transaction
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\conda\env\installers\conda.py", line 51 in install
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\conda\cli\main_env_update.py", line 161 in execute
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\conda\notices\core.py", line 132 in wrapper
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\conda\cli\conda_argparse.py", line 205 in do_call
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\conda\cli\main.py", line 61 in main_subshell
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\conda\testing\fixtures.py", line 236 in __call__
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\tests\cli\test_env.py", line 406 in test_update_env_only_pip_json_output
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\python.py", line 159 in pytest_pyfunc_call
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_callers.py", line 103 in _multicall
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_manager.py", line 120 in _hookexec
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_hooks.py", line 513 in __call__
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\python.py", line 1627 in runtest
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\runner.py", line 174 in pytest_runtest_call
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_callers.py", line 103 in _multicall
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_manager.py", line 120 in _hookexec
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_hooks.py", line 513 in __call__
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\runner.py", line 242 in <lambda>
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\runner.py", line 341 in from_call
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\runner.py", line 241 in call_and_report
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\runner.py", line 132 in runtestprotocol
  File "C:\Miniconda\envs\test\Lib\site-packages\pytest_rerunfailures.py", line 566 in pytest_runtest_protocol
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_callers.py", line 103 in _multicall
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_manager.py", line 120 in _hookexec
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_hooks.py", line 513 in __call__
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\main.py", line 362 in pytest_runtestloop
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_callers.py", line 103 in _multicall
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_manager.py", line 120 in _hookexec
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_hooks.py", line 513 in __call__
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\main.py", line 337 in _main
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\main.py", line 283 in wrap_session
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\main.py", line 330 in pytest_cmdline_main
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_callers.py", line 103 in _multicall
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_manager.py", line 120 in _hookexec
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_hooks.py", line 513 in __call__
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\config\__init__.py", line 175 in main
  File "<string>", line 1 in <module>
tests/cli/test_env.py::test_update_env_only_pip_json_output[libmamba] ############ 
 SIGNAL: SIGSEGV (segfault/access-violation) = 11 - ABORTING :
 0# solv::ObjTransaction::order in libmamba
 1# solv::ObjTransaction::order in libmamba
 2# log2f in ucrtbase
 3# OPENSSL_Applink in python
 4# _C_specific_handler in VCRUNTIME140
 5# _chkstk in ntdll
 6# RtlVirtualUnwind2 in ntdll
 7# KiUserExceptionDispatcher in ntdll
 8# pool_job2str in solv
 9# pool_job2str in solv
10# pool_job2str in solv
11# solver_run_sat in solv
12# solver_solve in solv
13# solv::ObjTransaction::order in libmamba
14# solv::ObjTransaction::order in libmamba
15# solv::ObjTransaction::order in libmamba
16# solv::ObjTransaction::order in libmamba
17# solv::ObjTransaction::order in libmamba
18# PyInit_bindings in bindings_cp311_win_amd64
19# PyInit_bindings in bindings_cp311_win_amd64
20# PyInit_bindings in bindings_cp311_win_amd64
21# PyCFunction_GetFlags in python311
22# PyObject_MakeTpCall in python311
23# PyEval_GetFuncDesc in python311
24# PyEval_EvalFrameDefault in python311
25# PyEval_EvalFrameDefault in python311
26# PyFunction_Vectorcall in python311
27# PyVectorcall_Function in python311
28# PyObject_Call in python311
29# PyEval_GetFuncDesc in python311
30# PyEval_EvalFrameDefault in python311
31# PyEval_EvalFrameDefault in python311
32# PyFunction_Vectorcall in python311
33# PyVectorcall_Function in python311
34# PyObject_Call in python311
35# PyEval_GetFuncDesc in python311
36# PyEval_EvalFrameDefault in python311
37# PyEval_EvalFrameDefault in python311
38# PyFunction_Vectorcall in python311
39# PyVectorcall_Function in python311
40# PyObject_Call in python311
41# PyEval_GetFuncDesc in python311
42# PyEval_EvalFrameDefault in python311
43# PyEval_EvalFrameDefault in python311
44# PyFunction_Vectorcall in python311
45# PyObject_FastCallDictTstate in python311
46# PyObject_Call_Prepend in python311
47# PyType_Ready in python311
48# PyObject_MakeTpCall in python311
49# PyEval_GetFuncDesc in python311
50# PyEval_EvalFrameDefault in python311
51# PyEval_EvalFrameDefault in python311
52# PyFunction_Vectorcall in python311
53# PyVectorcall_Function in python311
54# PyObject_Call in python311
55# PyEval_GetFuncDesc in python311
56# PyEval_EvalFrameDefault in python311
57# PyEval_EvalFrameDefault in python311
58# PyFunction_Vectorcall in python311
59# PyVectorcall_Function in python311
60# PyObject_Call in python311
61# PyEval_GetFuncDesc in python311
62# PyEval_EvalFrameDefault in python311
63# PyEval_EvalFrameDefault in python311
64# PyFunction_Vectorcall in python311
65# PyObject_FastCallDictTstate in python311
66# PyObject_Call_Prepend in python311
67# PyType_Ready in python311
68# PyObject_MakeTpCall in python311
69# PyEval_GetFuncDesc in python311
70# PyEval_EvalFrameDefault in python311
71# PyEval_EvalFrameDefault in python311
72# PyFunction_Vectorcall in python311
73# PyVectorcall_Function in python311
74# PyObject_Call in python311
75# PyEval_GetFuncDesc in python311
76# PyEval_EvalFrameDefault in python311
77# PyEval_EvalFrameDefault in python311
78# PyFunction_Vectorcall in python311
79# PyObject_FastCallDictTstate in python311
80# PyObject_Call_Prepend in python311
81# PyType_Ready in python311
82# PyObject_Call in python311
83# PyEval_GetFuncDesc in python311
84# PyEval_EvalFrameDefault in python311
85# PyEval_EvalFrameDefault in python311
86# PyFunction_Vectorcall in python311
87# PyVectorcall_Function in python311
88# PyObject_Call in python311
89# PyEval_GetFuncDesc in python311
90# PyEval_EvalFrameDefault in python311
91# PyEval_EvalFrameDefault in python311
92# PyFunction_Vectorcall in python311
93# PyObject_FastCallDictTstate in python311
94# PyObject_Call_Prepend in python311
95# PyType_Ready in python311
96# PyObject_MakeTpCall in python311
97# PyEval_GetFuncDesc in python311
98# PyEval_EvalFrameDefault in python311
99# PyEval_EvalFrameDefault in python311
100# PyFunction_Vectorcall in python311
101# PyVectorcall_Function in python311
102# PyObject_Call in python311
103# PyEval_GetFuncDesc in python311
104# PyEval_EvalFrameDefault in python311
105# PyEval_EvalFrameDefault in python311
106# PyFunction_Vectorcall in python311
107# PyObject_FastCallDictTstate in python311
108# PyObject_Call_Prepend in python311
109# PyType_Ready in python311
110# PyObject_MakeTpCall in python311
111# PyEval_GetFuncDesc in python311
112# PyEval_EvalFrameDefault in python311
113# PyEval_EvalFrameDefault in python311
114# PyFunction_Vectorcall in python311
115# PyVectorcall_Function in python311
116# PyObject_Call in python311
117# PyEval_GetFuncDesc in python311
118# PyEval_EvalFrameDefault in python311
119# PyEval_EvalFrameDefault in python311
120# PyFunction_Vectorcall in python311
121# PyObject_FastCallDictTstate in python311
122# PyObject_Call_Prepend in python311
123# PyType_Ready in python311
124# PyObject_MakeTpCall in python311
125# PyEval_GetFuncDesc in python311
126# PyEval_EvalFrameDefault in python311
127# PyEval_EvalCode in python311
128# PyRun_FileExFlags in python311
129# PyRun_FileExFlags in python311
130# PyRun_StringFlags in python311
131# PyRun_SimpleStringFlags in python311
132# Py_gitidentifier in python311
133# Py_RunMain in python311
134# Py_Main in python311
135# OPENSSL_Applink in python
136# BaseThreadInitThunk in KERNEL32
137# RtlUserThreadStart in ntdll

@jaimergp
Copy link
Contributor Author

That last method is calling two functions:

The good thing is that even if we don't find this segfault, this could be considered optional because we toposort the tree in the conda side anyway. So we could ask for a flag or boolean somewhere to omit this step 🤞 But let's see if we can find the offending code first.

@jaimergp
Copy link
Contributor Author

One more segfault at https://github.com/conda/conda-libmamba-solver/actions/runs/12466302016/job/34797855960?pr=592#step:12:318

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - BEGIN : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - END : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - BEGIN : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - END : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: ObjTransaction::order() - SKIPED << 

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - BEGIN : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - END : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - BEGIN : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - END : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - BEGIN : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - END : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - BEGIN : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - END : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - BEGIN : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - END : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - BEGIN : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - END : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - BEGIN : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - END : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - BEGIN : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - END : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - BEGIN : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - END : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - BEGIN : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - END : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - BEGIN : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - END : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - BEGIN : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - END : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - BEGIN : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - END : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - BEGIN : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - END : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - BEGIN : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - END : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - BEGIN : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - END : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - BEGIN : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - END : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - BEGIN : 0000013A51DD7090, 000000089ADEBF10

KLAIM CUSTOM LOG: assert_same_pool(pool, trans) - END : 0000013A51DD7090, 000000089ADEBF10
Windows fatal exception: access violation

Thread 0x00001ab4 (most recent call first):
  File "C:\Miniconda\envs\test\Lib\threading.py", line 331 in wait
  File "C:\Miniconda\envs\test\Lib\threading.py", line 629 in wait
  File "C:\Miniconda\envs\test\Lib\site-packages\tqdm\_monitor.py", line 60 in run
  File "C:\Miniconda\envs\test\Lib\threading.py", line 1045 in _bootstrap_inner
  File "C:\Miniconda\envs\test\Lib\threading.py", line 1002 in _bootstrap

Current thread 0x000007a8 (most recent call first):
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda-libmamba-solver\conda_libmamba_solver\solver.py", line 359 in _solve_attempt
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda-libmamba-solver\conda_libmamba_solver\solver.py", line 307 in _solving_loop
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\conda\common\io.py", line 87 in decorated
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda-libmamba-solver\conda_libmamba_solver\solver.py", line 181 in solve_final_state
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\conda\core\solve.py", line 222 in solve_for_diff
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\conda\core\solve.py", line 153 in solve_for_transaction
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\conda\env\installers\conda.py", line 51 in install
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\conda\cli\main_env_update.py", line 161 in execute
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\conda\notices\core.py", line 132 in wrapper
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\conda\cli\conda_argparse.py", line 205 in do_call
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\conda\cli\main.py", line 61 in main_subshell
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\conda\testing\fixtures.py", line 236 in __call__
  File "D:\a\conda-libmamba-solver\conda-libmamba-solver\conda\tests\cli\test_env.py", line 433 in test_update_env_no_action_json_output
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\python.py", line 159 in pytest_pyfunc_call
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_callers.py", line 103 in _multicall
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_manager.py", line 120 in _hookexec
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_hooks.py", line 513 in __call__
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\python.py", line 1627 in runtest
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\runner.py", line 174 in pytest_runtest_call
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_callers.py", line 103 in _multicall
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_manager.py", line 120 in _hookexec
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_hooks.py", line 513 in __call__
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\runner.py", line 242 in <lambda>
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\runner.py", line 341 in from_call
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\runner.py", line 241 in call_and_report
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\runner.py", line 132 in runtestprotocol
  File "C:\Miniconda\envs\test\Lib\site-packages\pytest_rerunfailures.py", line 566 in pytest_runtest_protocol
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_callers.py", line 103 in _multicall
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_manager.py", line 120 in _hookexec
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_hooks.py", line 513 in __call__
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\main.py", line 362 in pytest_runtestloop
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_callers.py", line 103 in _multicall
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_manager.py", line 120 in _hookexec
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_hooks.py", line 513 in __call__
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\main.py", line 337 in _main
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\main.py", line 283 in wrap_session
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\main.py", line [330](https://github.com/conda/conda-libmamba-solver/actions/runs/12466302016/job/34797855960?pr=592#step:12:331) in pytest_cmdline_main
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_callers.py", line 103 in _multicall
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_manager.py", line 120 in _hookexec
  File "C:\Miniconda\envs\test\Lib\site-packages\pluggy\_hooks.py", line 513 in __call__
  File "C:\Miniconda\envs\test\Lib\site-packages\_pytest\config\__init__.py", line 175 in main
  File "<string>", line 1 in <module>
tests/cli/test_env.py::test_update_env_no_action_json_output[libmamba] ############ 
 SIGNAL: SIGSEGV (segfault/access-violation) = 11 - ABORTING :
 0# solv::ObjTransaction::order in libmamba
 1# solv::ObjTransaction::order in libmamba
 2# log2f in ucrtbase
 3# OPENSSL_Applink in python
 4# _C_specific_handler in VCRUNTIME140
 5# _chkstk in ntdll
 6# RtlVirtualUnwind2 in ntdll
 7# KiUserExceptionDispatcher in ntdll
 8# pool_job2str in solv
 9# pool_job2str in solv
10# pool_job2str in solv
11# solver_run_sat in solv
12# solver_solve in solv
13# solv::ObjTransaction::order in libmamba
14# solv::ObjTransaction::order in libmamba
15# solv::ObjTransaction::order in libmamba
16# solv::ObjTransaction::order in libmamba
17# solv::ObjTransaction::order in libmamba
18# PyInit_bindings in bindings_cp311_win_amd64
19# PyInit_bindings in bindings_cp311_win_amd64
20# PyInit_bindings in bindings_cp311_win_amd64
21# PyCFunction_GetFlags in python311
22# PyObject_MakeTpCall in python311
23# PyEval_GetFuncDesc in python311
24# PyEval_EvalFrameDefault in python311
25# PyEval_EvalFrameDefault in python311
26# PyFunction_Vectorcall in python311
27# PyVectorcall_Function in python311
28# PyObject_Call in python311
29# PyEval_GetFuncDesc in python311
30# PyEval_EvalFrameDefault in python311
31# PyEval_EvalFrameDefault in python311
32# PyFunction_Vectorcall in python311
33# PyVectorcall_Function in python311
34# PyObject_Call in python311
35# PyEval_GetFuncDesc in python311
36# PyEval_EvalFrameDefault in python311
37# PyEval_EvalFrameDefault in python311
38# PyFunction_Vectorcall in python311
39# PyVectorcall_Function in python311
40# PyObject_Call in python311
41# PyEval_GetFuncDesc in python311
42# PyEval_EvalFrameDefault in python311
43# PyEval_EvalFrameDefault in python311
44# PyFunction_Vectorcall in python311
45# PyObject_FastCallDictTstate in python311
46# PyObject_Call_Prepend in python311
47# PyType_Ready in python311
48# PyObject_MakeTpCall in python311
49# PyEval_GetFuncDesc in python311
50# PyEval_EvalFrameDefault in python311
51# PyEval_EvalFrameDefault in python311
52# PyFunction_Vectorcall in python311
53# PyVectorcall_Function in python311
54# PyObject_Call in python311
55# PyEval_GetFuncDesc in python311
56# PyEval_EvalFrameDefault in python311
57# PyEval_EvalFrameDefault in python311
58# PyFunction_Vectorcall in python311
59# PyVectorcall_Function in python311
60# PyObject_Call in python311
61# PyEval_GetFuncDesc in python311
62# PyEval_EvalFrameDefault in python311
63# PyEval_EvalFrameDefault in python311
64# PyFunction_Vectorcall in python311
65# PyObject_FastCallDictTstate in python311
66# PyObject_Call_Prepend in python311
67# PyType_Ready in python311
68# PyObject_MakeTpCall in python311
69# PyEval_GetFuncDesc in python311
70# PyEval_EvalFrameDefault in python311
71# PyEval_EvalFrameDefault in python311
72# PyFunction_Vectorcall in python311
73# PyVectorcall_Function in python311
74# PyObject_Call in python311
75# PyEval_GetFuncDesc in python311
76# PyEval_EvalFrameDefault in python311
77# PyEval_EvalFrameDefault in python311
78# PyFunction_Vectorcall in python311
79# PyObject_FastCallDictTstate in python311
80# PyObject_Call_Prepend in python311
81# PyType_Ready in python311
82# PyObject_Call in python311
83# PyEval_GetFuncDesc in python311
84# PyEval_EvalFrameDefault in python311
85# PyEval_EvalFrameDefault in python311
86# PyFunction_Vectorcall in python311
87# PyVectorcall_Function in python311
88# PyObject_Call in python311
89# PyEval_GetFuncDesc in python311
90# PyEval_EvalFrameDefault in python311
91# PyEval_EvalFrameDefault in python311
92# PyFunction_Vectorcall in python311
93# PyObject_FastCallDictTstate in python311
94# PyObject_Call_Prepend in python311
95# PyType_Ready in python311
96# PyObject_MakeTpCall in python311
97# PyEval_GetFuncDesc in python311
98# PyEval_EvalFrameDefault in python311
99# PyEval_EvalFrameDefault in python311
100# PyFunction_Vectorcall in python311
101# PyVectorcall_Function in python311
102# PyObject_Call in python311
103# PyEval_GetFuncDesc in python311
104# PyEval_EvalFrameDefault in python311
105# PyEval_EvalFrameDefault in python311
106# PyFunction_Vectorcall in python311
107# PyObject_FastCallDictTstate in python311
108# PyObject_Call_Prepend in python311
109# PyType_Ready in python311
110# PyObject_MakeTpCall in python311
111# PyEval_GetFuncDesc in python311
112# PyEval_EvalFrameDefault in python311
113# PyEval_EvalFrameDefault in python311
114# PyFunction_Vectorcall in python311
115# PyVectorcall_Function in python311
116# PyObject_Call in python311
117# PyEval_GetFuncDesc in python311
118# PyEval_EvalFrameDefault in python311
119# PyEval_EvalFrameDefault in python311
120# PyFunction_Vectorcall in python311
121# PyObject_FastCallDictTstate in python311
122# PyObject_Call_Prepend in python311
123# PyType_Ready in python311
124# PyObject_MakeTpCall in python311
125# PyEval_GetFuncDesc in python311
126# PyEval_EvalFrameDefault in python311
127# PyEval_EvalCode in python311
128# PyRun_FileExFlags in python311
129# PyRun_FileExFlags in python311
130# PyRun_StringFlags in python311
131# PyRun_SimpleStringFlags in python311
132# Py_gitidentifier in python311
133# Py_RunMain in python311
134# Py_Main in python311
135# OPENSSL_Applink in python
136# BaseThreadInitThunk in KERNEL32
137# RtlUserThreadStart in ntdll

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cla-signed [bot] added once the contributor has signed the CLA
Projects
Status: 🆕 New
Development

Successfully merging this pull request may close these issues.

3 participants