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 — Python 3.14.0a5: `test_external_inspection` fails on freethreading-debug build on s390x Linux · Issue #130035 · python/cpython

Python 3.14.0a5: test_external_inspection fails on freethreading-debug build on s390x Linux #130035

New issue
Copy link
New issue
Copy link
Closed as duplicate
Closed as duplicate
Python 3.14.0a5: test_external_inspection fails on freethreading-debug build on s390x Linux#130035
Copy link
Labels
3.14bugs and security fixesbugs and security fixestopic-free-threadingtype-bugAn unexpected behavior, bug, or errorAn unexpected behavior, bug, or error

Description

@befeleme
befeleme
opened on Feb 12, 2025
Issue body actions

Bug report

Bug description:

The failure happens only on s390x: /builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Objects/call.c:342: _PyObject_Call: Assertion '!_PyErr_Occurred(tstate)' failed.
Built as RPM on Fedora Linux 40-43, all occurrences have the same behavior.
The relevant log excerpt:

0:40:46 load avg: 3.05 [1/2/1] test_external_inspection worker non-zero exit code (Exit code -6 (SIGABRT))
Re-running test_external_inspection in verbose mode (matching: )
test_async_gather_remote_stack_trace (test.test_external_inspection.TestGetStackTrace.test_async_gather_remote_stack_trace) ... python: /builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Objects/call.c:342: _PyObject_Call: Assertion `!_PyErr_Occurred(tstate)' failed.
Fatal Python error: Aborted
<Cannot show all threads while the GIL is disabled>
Stack (most recent call first):
  File "/builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Lib/test/test_external_inspection.py", line 271 in test_async_gather_remote_stack_trace
  File "/builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Lib/unittest/case.py", line 606 in _callTestMethod
  File "/builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Lib/unittest/case.py", line 660 in run
  File "/builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Lib/unittest/case.py", line 716 in __call__
  File "/builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Lib/unittest/suite.py", line 122 in run
  File "/builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Lib/unittest/suite.py", line 84 in __call__
  File "/builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Lib/unittest/suite.py", line 122 in run
  File "/builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Lib/unittest/suite.py", line 84 in __call__
  File "/builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Lib/unittest/runner.py", line 259 in run
  File "/builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Lib/test/libregrtest/single.py", line 84 in _run_suite
  File "/builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Lib/test/libregrtest/single.py", line 42 in run_unittest
  File "/builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Lib/test/libregrtest/single.py", line 162 in test_func
  File "/builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Lib/test/libregrtest/single.py", line 118 in regrtest_runner
  File "/builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Lib/test/libregrtest/single.py", line 165 in _load_run_test
  File "/builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Lib/test/libregrtest/single.py", line 210 in _runtest_env_changed_exc
  File "/builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Lib/test/libregrtest/single.py", line 319 in _runtest
  File "/builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Lib/test/libregrtest/single.py", line 348 in run_single_test
  File "/builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Lib/test/libregrtest/worker.py", line 83 in worker_process
  File "/builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Lib/test/libregrtest/worker.py", line 118 in main
  File "/builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Lib/test/libregrtest/worker.py", line 122 in <module>
  File "/builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Lib/runpy.py", line 88 in _run_code
  File "/builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Lib/runpy.py", line 198 in _run_module_as_main
Extension modules: _testinternalcapi, _testexternalinspection (total: 2)

CPython versions tested on:

3.14

Operating systems tested on:

Linux

Activity

  1. befeleme
    added
    type-bugAn unexpected behavior, bug, or errorAn unexpected behavior, bug, or error
    on Feb 12, 2025
  2. hugovk
    added
    topic-free-threading
    3.14bugs and security fixesbugs and security fixes
    on Feb 12, 2025
  3. colesbury commented on Feb 12, 2025

    @colesbury
    colesbury
    on Feb 12, 2025
    Contributor
    More actions

    It seems like some of the error paths don't properly set a Python exception. Does s390x have HAVE_PROCESS_VM_READV?

    @pablogsal:

    No Python error set here, but it's not free threading specific, so I'm probably missing something else:

    cpython/Modules/_testexternalinspection.c

    Lines 483 to 484 in 3e222e3

    #else
    return -1;

    results leaked on error here:

    cpython/Modules/_testexternalinspection.c

    Lines 1524 to 1531 in 3e222e3

    PyObject* result = PyList_New(1);
    if (result == NULL) {
    return NULL;
    }
    PyObject* calls = PyList_New(0);
    if (calls == NULL) {
    return NULL;
    }

    Nothing else stood out immediately.

  4. sergey-miryanov commented on Feb 12, 2025

    @sergey-miryanov
    sergey-miryanov
    on Feb 12, 2025
    Contributor
    More actions

    @colesbury I checked _testexternalinspection.c and found a few other places where exceptions are not set. Do you mind if I send a PR?

  5. colesbury commented on Feb 12, 2025

    @colesbury
    colesbury
    on Feb 12, 2025
    Contributor
    More actions

    Yes, thanks, please send a PR.

  6. sergey-miryanov commented on Feb 12, 2025

    @sergey-miryanov
    sergey-miryanov
    on Feb 12, 2025
    Contributor
    More actions

    gh-130051 fixes a few memory leaks.
    gh-130053 fixes exceptions (but not finished yet), jfyi.

  7. pablogsal commented on Feb 12, 2025

    @pablogsal
    pablogsal
    on Feb 12, 2025
    Member
    More actions

    It seems like some of the error paths don't properly set a Python exception. Does s390x have HAVE_PROCESS_VM_READV?

    🤔 It should otherwise the test should not even be attempted so whatever is going on is something else.

    Reacted by Sam Gross
  8. pablogsal commented on Feb 12, 2025

    @pablogsal
    pablogsal
    on Feb 12, 2025
    Member
    More actions

    For example looking at https://buildbot.python.org/#/builders/509

    The test runs and runs successfully:

    0:00:19 load avg: 3.96 [ 89/484] test_external_inspection passed

  9. vstinner commented on Feb 24, 2025

    @vstinner
    vstinner
    on Feb 24, 2025
    Member
    More actions

    I suggest to mark this issue as a duplicate of #130052.

    Reacted by Sam Gross
  10. colesbury
    closed this as a duplicateof Some error paths do not set Exceptions in _testexternalinspection #130052 on Feb 25, 2025
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

    3.14bugs and security fixesbugs and security fixestopic-free-threadingtype-bugAn unexpected behavior, bug, or errorAn unexpected behavior, bug, or error

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

      You are visitor 01402503 — 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.