GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — AMD64 Windows11 Bigmem 3.x: test_bigmem failed with !_Py_IsImmortal(FROM_GC(gc)) assertion error · Issue #115124 · python/cpython

AMD64 Windows11 Bigmem 3.x: test_bigmem failed with !_Py_IsImmortal(FROM_GC(gc)) assertion error #115124

New issue
Copy link
New issue
Copy link
Closed as not planned
Closed as not planned
AMD64 Windows11 Bigmem 3.x: test_bigmem failed with !_Py_IsImmortal(FROM_GC(gc)) assertion error#115124
Copy link

Description

@vstinner
vstinner
opened on Feb 7, 2024
Issue body actions

build: https://buildbot.python.org/all/#/builders/1079/builds/3327

Error after tests complete, when running gc_collect() C function:

Assertion failed: !_Py_IsImmortal(FROM_GC(gc)), file R:\buildarea\3.x.ambv-bb-win11.bigmem\build\Python\gc.c, line 476

Logs:

R:\buildarea\3.x.ambv-bb-win11.bigmem\build>"R:\buildarea\3.x.ambv-bb-win11.bigmem\build\PCbuild\amd64\python_d.exe"  -m test --fast-ci --slow-ci -M24g -uall --junit-xml test-results.xml -j4 --timeout 4800 
+ 'R:\buildarea\3.x.ambv-bb-win11.bigmem\build\PCbuild\amd64\python_d.exe' -u -W default -bb -E -m test --fast-ci --slow-ci -M24g -uall --junit-xml test-results.xml -j4 --timeout 4800 --dont-add-python-opts
== CPython 3.13.0a3+ (heads/main:bcccf1fb63, Feb 5 2024, 19:52:36) [MSC v.1936 64 bit (AMD64)]
== Windows-11-10.0.22631-SP0 little-endian
== Python build: debug
== cwd: R:\buildarea\3.x.ambv-bb-win11.bigmem\build\build\test_python_worker_3608�
== CPU count: 6
== encodings: locale=cp1252 FS=utf-8
== resources: all

(...)

1:43:02 load avg: 0.04 [2/2/2] test_bigmem worker non-zero exit code (Exit code 3)
Re-running test_bigmem in verbose mode
test_capitalize (test.test_bigmem.BytearrayTest.test_capitalize) ... ok
test_center (test.test_bigmem.BytearrayTest.test_center) ... ok
test_compare (test.test_bigmem.BytearrayTest.test_compare) ... ok
test_concat (test.test_bigmem.BytearrayTest.test_concat) ... ok
test_contains (test.test_bigmem.BytearrayTest.test_contains) ... ok
test_count (test.test_bigmem.BytearrayTest.test_count) ... ok
test_decode (test.test_bigmem.BytearrayTest.test_decode) ... ok
test_endswith (test.test_bigmem.BytearrayTest.test_endswith) ... ok
test_expandtabs (test.test_bigmem.BytearrayTest.test_expandtabs) ... ok
test_find (test.test_bigmem.BytearrayTest.test_find) ... ok
test_index (test.test_bigmem.BytearrayTest.test_index) ... ok
test_isalnum (test.test_bigmem.BytearrayTest.test_isalnum) ... ok
test_isalpha (test.test_bigmem.BytearrayTest.test_isalpha) ... ok
test_isdigit (test.test_bigmem.BytearrayTest.test_isdigit) ... ok
test_islower (test.test_bigmem.BytearrayTest.test_islower) ... ok
test_isspace (test.test_bigmem.BytearrayTest.test_isspace) ... ok
test_istitle (test.test_bigmem.BytearrayTest.test_istitle) ... ok
test_isupper (test.test_bigmem.BytearrayTest.test_isupper) ... ok
test_join (test.test_bigmem.BytearrayTest.test_join) ... ok
test_ljust (test.test_bigmem.BytearrayTest.test_ljust) ... ok
test_lower (test.test_bigmem.BytearrayTest.test_lower) ... ok
test_lstrip (test.test_bigmem.BytearrayTest.test_lstrip) ... ok
test_repeat (test.test_bigmem.BytearrayTest.test_repeat) ... ok
test_replace (test.test_bigmem.BytearrayTest.test_replace) ... ok
test_rfind (test.test_bigmem.BytearrayTest.test_rfind) ... ok
test_rindex (test.test_bigmem.BytearrayTest.test_rindex) ... ok
test_rjust (test.test_bigmem.BytearrayTest.test_rjust) ... ok
test_rstrip (test.test_bigmem.BytearrayTest.test_rstrip) ... ok
test_slice_and_getitem (test.test_bigmem.BytearrayTest.test_slice_and_getitem) ... ok
test_split_small (test.test_bigmem.BytearrayTest.test_split_small) ... ok
test_splitlines (test.test_bigmem.BytearrayTest.test_splitlines) ... ok
test_startswith (test.test_bigmem.BytearrayTest.test_startswith) ... ok
test_strip (test.test_bigmem.BytearrayTest.test_strip) ... ok
test_swapcase (test.test_bigmem.BytearrayTest.test_swapcase) ... ok
test_title (test.test_bigmem.BytearrayTest.test_title) ... ok
test_translate (test.test_bigmem.BytearrayTest.test_translate) ... ok
test_upper (test.test_bigmem.BytearrayTest.test_upper) ... ok
test_zfill (test.test_bigmem.BytearrayTest.test_zfill) ... ok
test_capitalize (test.test_bigmem.BytesTest.test_capitalize) ... ok
test_center (test.test_bigmem.BytesTest.test_center) ... ok
test_compare (test.test_bigmem.BytesTest.test_compare) ... ok
test_concat (test.test_bigmem.BytesTest.test_concat) ... ok
test_contains (test.test_bigmem.BytesTest.test_contains) ... ok
test_count (test.test_bigmem.BytesTest.test_count) ... ok
test_decode (test.test_bigmem.BytesTest.test_decode) ... ok
test_endswith (test.test_bigmem.BytesTest.test_endswith) ... ok
test_expandtabs (test.test_bigmem.BytesTest.test_expandtabs) ... ok
test_find (test.test_bigmem.BytesTest.test_find) ... ok
test_hash (test.test_bigmem.BytesTest.test_hash) ... ok
test_index (test.test_bigmem.BytesTest.test_index) ... ok
test_isalnum (test.test_bigmem.BytesTest.test_isalnum) ... ok
test_isalpha (test.test_bigmem.BytesTest.test_isalpha) ... ok
test_isdigit (test.test_bigmem.BytesTest.test_isdigit) ... ok
test_islower (test.test_bigmem.BytesTest.test_islower) ... ok
test_isspace (test.test_bigmem.BytesTest.test_isspace) ... ok
test_istitle (test.test_bigmem.BytesTest.test_istitle) ... ok
test_isupper (test.test_bigmem.BytesTest.test_isupper) ... ok
test_join (test.test_bigmem.BytesTest.test_join) ... ok
test_ljust (test.test_bigmem.BytesTest.test_ljust) ... ok
test_lower (test.test_bigmem.BytesTest.test_lower) ... ok
test_lstrip (test.test_bigmem.BytesTest.test_lstrip) ... ok
test_repeat (test.test_bigmem.BytesTest.test_repeat) ... ok
test_replace (test.test_bigmem.BytesTest.test_replace) ... ok
test_rfind (test.test_bigmem.BytesTest.test_rfind) ... ok
test_rindex (test.test_bigmem.BytesTest.test_rindex) ... ok
test_rjust (test.test_bigmem.BytesTest.test_rjust) ... ok
test_rstrip (test.test_bigmem.BytesTest.test_rstrip) ... ok
test_slice_and_getitem (test.test_bigmem.BytesTest.test_slice_and_getitem) ... ok
test_split_large (test.test_bigmem.BytesTest.test_split_large) ... ok
test_split_small (test.test_bigmem.BytesTest.test_split_small) ... ok
test_splitlines (test.test_bigmem.BytesTest.test_splitlines) ... ok
test_startswith (test.test_bigmem.BytesTest.test_startswith) ... ok
test_strip (test.test_bigmem.BytesTest.test_strip) ... ok
test_swapcase (test.test_bigmem.BytesTest.test_swapcase) ... ok
test_title (test.test_bigmem.BytesTest.test_title) ... ok
test_translate (test.test_bigmem.BytesTest.test_translate) ... ok
test_upper (test.test_bigmem.BytesTest.test_upper) ... ok
test_zfill (test.test_bigmem.BytesTest.test_zfill) ... ok
test_dict (test.test_bigmem.DictTest.test_dict) ... skipped 'not enough memory: 53.3G minimum needed'
test_append (test.test_bigmem.ListTest.test_append) ... ok
test_compare (test.test_bigmem.ListTest.test_compare) ... skipped 'not enough memory: 32.0G minimum needed'
test_concat_large (test.test_bigmem.ListTest.test_concat_large) ... skipped 'not enough memory: 48.0G minimum needed'
test_concat_small (test.test_bigmem.ListTest.test_concat_small) ... skipped 'not enough memory: 24.0G minimum needed'
test_contains (test.test_bigmem.ListTest.test_contains) ... ok
test_count (test.test_bigmem.ListTest.test_count) ... ok
test_extend_large (test.test_bigmem.ListTest.test_extend_large) ... skipped 'not enough memory: 36.0G minimum needed'
test_extend_small (test.test_bigmem.ListTest.test_extend_small) ... ok
test_hash (test.test_bigmem.ListTest.test_hash) ... ok
test_index (test.test_bigmem.ListTest.test_index) ... ok
test_index_and_slice (test.test_bigmem.ListTest.test_index_and_slice) ... ok
test_inplace_concat_large (test.test_bigmem.ListTest.test_inplace_concat_large) ... skipped 'not enough memory: 36.0G minimum needed'
test_inplace_concat_small (test.test_bigmem.ListTest.test_inplace_concat_small) ... ok
test_inplace_repeat_large (test.test_bigmem.ListTest.test_inplace_repeat_large) ... skipped 'not enough memory: 36.0G minimum needed'
test_inplace_repeat_small (test.test_bigmem.ListTest.test_inplace_repeat_small) ... ok
test_insert (test.test_bigmem.ListTest.test_insert) ... ok
test_pop (test.test_bigmem.ListTest.test_pop) ... ok
test_remove (test.test_bigmem.ListTest.test_remove) ... ok
test_repeat_large (test.test_bigmem.ListTest.test_repeat_large) ... skipped 'not enough memory: 48.0G minimum needed'
test_repeat_small (test.test_bigmem.ListTest.test_repeat_small) ... skipped 'not enough memory: 24.0G minimum needed'
test_repr_large (test.test_bigmem.ListTest.test_repr_large) ... skipped 'not enough memory: 30.0G minimum needed'
test_repr_small (test.test_bigmem.ListTest.test_repr_small) ... ok
test_reverse (test.test_bigmem.ListTest.test_reverse) ... ok
test_sort (test.test_bigmem.ListTest.test_sort) ... skipped 'not enough memory: 24.0G minimum needed'
test_capitalize (test.test_bigmem.StrTest.test_capitalize) ... skipped 'not enough memory: 28.0G minimum needed'
test_center (test.test_bigmem.StrTest.test_center) ... ok
test_compare (test.test_bigmem.StrTest.test_compare) ... ok
test_concat (test.test_bigmem.StrTest.test_concat) ... ok
test_contains (test.test_bigmem.StrTest.test_contains) ... ok
test_count (test.test_bigmem.StrTest.test_count) ... ok
test_encode (test.test_bigmem.StrTest.test_encode) ... ok
test_encode_ascii (test.test_bigmem.StrTest.test_encode_ascii) ... ok
test_encode_raw_unicode_escape (test.test_bigmem.StrTest.test_encode_raw_unicode_escape) ... ok
test_encode_utf32 (test.test_bigmem.StrTest.test_encode_utf32) ... ok
test_encode_utf7 (test.test_bigmem.StrTest.test_encode_utf7) ... ok
test_endswith (test.test_bigmem.StrTest.test_endswith) ... ok
test_expandtabs (test.test_bigmem.StrTest.test_expandtabs) ... ok
test_find (test.test_bigmem.StrTest.test_find) ... ok
test_format (test.test_bigmem.StrTest.test_format) ... ok
test_hash (test.test_bigmem.StrTest.test_hash) ... ok
test_index (test.test_bigmem.StrTest.test_index) ... ok
test_isalnum (test.test_bigmem.StrTest.test_isalnum) ... ok
test_isalpha (test.test_bigmem.StrTest.test_isalpha) ... ok
test_isdigit (test.test_bigmem.StrTest.test_isdigit) ... ok
test_islower (test.test_bigmem.StrTest.test_islower) ... ok
test_isspace (test.test_bigmem.StrTest.test_isspace) ... ok
test_istitle (test.test_bigmem.StrTest.test_istitle) ... ok
test_isupper (test.test_bigmem.StrTest.test_isupper) ... ok
test_join (test.test_bigmem.StrTest.test_join) ... ok
test_ljust (test.test_bigmem.StrTest.test_ljust) ... ok
test_lower (test.test_bigmem.StrTest.test_lower) ... ok
test_lstrip (test.test_bigmem.StrTest.test_lstrip) ... ok
test_repeat (test.test_bigmem.StrTest.test_repeat) ... ok
test_replace (test.test_bigmem.StrTest.test_replace) ... ok
test_repr_large (test.test_bigmem.StrTest.test_repr_large) ... ok
test_repr_small (test.test_bigmem.StrTest.test_repr_small) ... ok
test_rfind (test.test_bigmem.StrTest.test_rfind) ... ok
test_rindex (test.test_bigmem.StrTest.test_rindex) ... ok
test_rjust (test.test_bigmem.StrTest.test_rjust) ... ok
test_rstrip (test.test_bigmem.StrTest.test_rstrip) ... ok
test_slice_and_getitem (test.test_bigmem.StrTest.test_slice_and_getitem) ... ok
test_split_large (test.test_bigmem.StrTest.test_split_large) ... ok
test_split_small (test.test_bigmem.StrTest.test_split_small) ... ok
test_splitlines (test.test_bigmem.StrTest.test_splitlines) ... ok
test_startswith (test.test_bigmem.StrTest.test_startswith) ... ok
test_strip (test.test_bigmem.StrTest.test_strip) ... ok
test_swapcase (test.test_bigmem.StrTest.test_swapcase) ... skipped 'not enough memory: 28.0G minimum needed'
test_title (test.test_bigmem.StrTest.test_title) ... skipped 'not enough memory: 28.0G minimum needed'
test_translate (test.test_bigmem.StrTest.test_translate) ... ok
test_unicode_repr (test.test_bigmem.StrTest.test_unicode_repr) ... ok
test_unicode_repr_wide (test.test_bigmem.StrTest.test_unicode_repr_wide) ... ok
test_upper (test.test_bigmem.StrTest.test_upper) ... ok
test_zfill (test.test_bigmem.StrTest.test_zfill) ... ok
test_compare (test.test_bigmem.TupleTest.test_compare) ... skipped 'not enough memory: 32.0G minimum needed'
test_concat_large (test.test_bigmem.TupleTest.test_concat_large) ... skipped 'not enough memory: 48.0G minimum needed'
test_concat_small (test.test_bigmem.TupleTest.test_concat_small) ... skipped 'not enough memory: 24.0G minimum needed'
test_contains (test.test_bigmem.TupleTest.test_contains) ... ok
test_from_2G_generator (test.test_bigmem.TupleTest.test_from_2G_generator) ... ok
test_from_almost_2G_generator (test.test_bigmem.TupleTest.test_from_almost_2G_generator) ... ok
test_hash (test.test_bigmem.TupleTest.test_hash) ... ok
test_index_and_slice (test.test_bigmem.TupleTest.test_index_and_slice) ... ok
test_repeat_large (test.test_bigmem.TupleTest.test_repeat_large) ... skipped 'not enough memory: 48.0G minimum needed'
test_repeat_large_2 (test.test_bigmem.TupleTest.test_repeat_large_2) ... ok
test_repeat_small (test.test_bigmem.TupleTest.test_repeat_small) ... skipped 'not enough memory: 24.0G minimum needed'
test_repr_large (test.test_bigmem.TupleTest.test_repr_large) ... skipped 'not enough memory: 30.0G minimum needed'
test_repr_small (test.test_bigmem.TupleTest.test_repr_small) ... ok

----------------------------------------------------------------------
Ran 165 tests in 2954.633s

OK (skipped=20)

Assertion failed: !_Py_IsImmortal(FROM_GC(gc)), file R:\buildarea\3.x.ambv-bb-win11.bigmem\build\Python\gc.c, line 476
Fatal Python error: Aborted

Current thread 0x00000c1c (most recent call first):
  Garbage-collecting
  File "R:\buildarea\3.x.ambv-bb-win11.bigmem\build\Lib\test\support\__init__.py", line 776 in gc_collect
  File "R:\buildarea\3.x.ambv-bb-win11.bigmem\build\Lib\test\libregrtest\single.py", line 141 in _load_run_test
  File "R:\buildarea\3.x.ambv-bb-win11.bigmem\build\Lib\test\libregrtest\single.py", line 178 in _runtest_env_changed_exc
  File "R:\buildarea\3.x.ambv-bb-win11.bigmem\build\Lib\test\libregrtest\single.py", line 278 in _runtest
  File "R:\buildarea\3.x.ambv-bb-win11.bigmem\build\Lib\test\libregrtest\single.py", line 306 in run_single_test
  File "R:\buildarea\3.x.ambv-bb-win11.bigmem\build\Lib\test\libregrtest\worker.py", line 91 in worker_process
  File "R:\buildarea\3.x.ambv-bb-win11.bigmem\build\Lib\test\libregrtest\worker.py", line 126 in main
  File "R:\buildarea\3.x.ambv-bb-win11.bigmem\build\Lib\test\libregrtest\worker.py", line 130 in <module>
  File "R:\buildarea\3.x.ambv-bb-win11.bigmem\build\Lib\runpy.py", line 88 in _run_code
  File "R:\buildarea\3.x.ambv-bb-win11.bigmem\build\Lib\runpy.py", line 198 in _run_module_as_main

Extension modules: _testcapi, _wmi (total: 2)

(...)

2 tests failed:
    test.test_multiprocessing_spawn.test_processes test_bigmem

426 tests OK.

EDIT: I created issue gh-115127 for the test_multiprocessing_spawn error.

Linked PRs

  • gh-115124: Use _PyObject_ASSERT() in gc.c #115125

Activity

  1. vstinner
    added 2 commits that reference this issue on Feb 7, 2024

    pythongh-115124: Use _PyObject_ASSERT() in gc.c

    b8aff7d

    pythongh-115124: Use _PyObject_ASSERT() in gc.c

    468de57
  2. vstinner commented on Feb 7, 2024

    @vstinner
    vstinner
    on Feb 7, 2024
    MemberAuthor
    More actions

    See also issue gh-115122: "regrtest: add --bisect option to run test.bisect_cmd on failed tests".

  3. vstinner commented on Feb 7, 2024

    @vstinner
    vstinner
    on Feb 7, 2024
    MemberAuthor
    More actions

    @ambv message on Discord:

    Note: the bigmem buildbot caught an assertion failure in GC

    Started with https://buildbot.python.org/all/#/builders/1079/builds/3327
    Latest failure: https://buildbot.python.org/all/#/builders/1079/builds/3333

    Assertion failed: !_Py_IsImmortal(FROM_GC(gc)), file R:\buildarea\3.x.ambv-bb-win11.bigmem\build\Python\gc.c, line 476
    

    I'll be disabling bigmem on 3.12 as at this point it's unlikely to catch anything new in 3.12. So we'll have less waiting for the buildbot on main.

  4. vstinner commented on Feb 7, 2024

    @vstinner
    vstinner
    on Feb 7, 2024
    MemberAuthor
    More actions

    Started with https://buildbot.python.org/all/#/builders/1079/builds/3327

    This build contains two changes:

    • bcccf1f
    • 36518e6
  5. vstinner commented on Feb 7, 2024

    @vstinner
    vstinner
    on Feb 7, 2024
    MemberAuthor
    More actions

    See also issue gh-115127: multiprocessing test_thread_safety() fails with "gc_list_is_empty(to) || gc_old_space(to_tail) == gc_old_space(from_tail)" assert error.

  6. encukou commented on Feb 7, 2024

    @encukou
    encukou
    on Feb 7, 2024
    Member
    More actions

    This was #108362

  7. encukou
    closed this as not plannedon Feb 7, 2024
  8. vstinner
    added 5 commits that reference this issue on Feb 12, 2024

    pythongh-115124: Use _PyObject_ASSERT() in gc.c

    2b625c7

    pythongh-115124: Use _PyObject_ASSERT() in gc.c

    3f8a768

    pythongh-115124: Use _PyObject_ASSERT() in gc.c

    86c5302

    pythongh-115124: Use _PyObject_ASSERT() in gc.c

    0b52d36

    gh-115124: Use _PyObject_ASSERT() in gc.c (#115125)

    94f1334
  9. diegorusso
    added a commit that references this issue on Apr 17, 2024

    pythongh-115124: Use _PyObject_ASSERT() in gc.c (python#115125)

    a2b90ca
  10. LukasWoodtli
    added a commit that references this issue on Jan 22, 2025

    pythongh-115124: Use _PyObject_ASSERT() in gc.c (python#115125)

    5483eec
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

      You are visitor 01402520 — GeezerVison does not store the pages you look up.
      Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.