Skip to content

test_external_inspection: test_async_remote_stack_trace fails intermittently #133425

Description

@encukou

Bug report

test_async_remote_stack_trace and test_asyncgen_remote_stack_trace from test_external_inspection. For example: on build 1128 on Debian root buildbot

======================================================================
FAIL: test_async_remote_stack_trace (test.test_external_inspection.TestGetStackTrace.test_async_remote_stack_trace) (task_factory_variant='asyncio.new_event_loop')
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/test_external_inspection.py", line 269, in test_async_remote_stack_trace
    self.assertEqual(stack_trace, expected_stack_trace)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: Lists differ: [[('c[62 chars]y', 10), ('c4', '/tmp/test_python_0gbnot0i/tmp[1293 chars]]]]]] != [[('c[62 chars]y', 11), ('c4', '/tmp/test_python_0gbnot0i/tmp[1308 chars]]]]]]
First differing element 0:
[('c5[61 chars]y', 10), ('c4', '/tmp/test_python_0gbnot0i/tmp[179 chars] 21)]
[('c5[61 chars]y', 11), ('c4', '/tmp/test_python_0gbnot0i/tmp[179 chars] 21)]
Diff is 2008 characters long. Set self.maxDiff to None to see it.
======================================================================
FAIL: test_async_remote_stack_trace (test.test_external_inspection.TestGetStackTrace.test_async_remote_stack_trace) (task_factory_variant='new_eager_loop')
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/test_external_inspection.py", line 269, in test_async_remote_stack_trace
    self.assertEqual(stack_trace, expected_stack_trace)
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: Lists differ: [[('c[62 chars]y', 10), ('c4', '/tmp/test_python_0gbnot0i/tmp[1293 chars]]]]]] != [[('c[62 chars]y', 11), ('c4', '/tmp/test_python_0gbnot0i/tmp[1308 chars]]]]]]
First differing element 0:
[('c5[61 chars]y', 10), ('c4', '/tmp/test_python_0gbnot0i/tmp[179 chars] 21)]
[('c5[61 chars]y', 11), ('c4', '/tmp/test_python_0gbnot0i/tmp[179 chars] 21)]
Diff is 2008 characters long. Set self.maxDiff to None to see it.
----------------------------------------------------------------------

Activity

  1. added
    type-bugAn unexpected behavior, bug, or error
    stdlibStandard Library Python modules in the Lib/ directory
    on May 5, 2025
  2. vstinner commented on May 5, 2025

    @vstinner
    Member

    I closed my issue #133428 as a duplicate of this one.

  3. pablogsal commented on May 5, 2025

    @pablogsal
    Member

    Will take a look today but the problem seems to be that matching line numbers is racy

  4. vstinner commented on May 5, 2025

    @vstinner
    Member

    The issue was maybe fixed by #133422.

  5. vstinner commented on May 5, 2025

    @vstinner
    Member

    Failure one hour ago on PPC64LE Fedora Stable Refleaks 3.x: https://buildbot.python.org/#/builders/280/builds/1893

    FAIL: test_async_remote_stack_trace (test.test_external_inspection.TestGetStackTrace.test_async_remote_stack_trace) (task_factory_variant='asyncio.new_event_loop')
    ----------------------------------------------------------------------
    Traceback (most recent call last):
      File "/home/buildbot/buildarea/3.x.cstratak-fedora-stable-ppc64le.refleak/build/Lib/test/test_external_inspection.py", line 269, in test_async_remote_stack_trace
        self.assertEqual(stack_trace, expected_stack_trace)
        ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    AssertionError: Lists differ: [[('c[62 chars]y', 10), ('c4', '/tmp/test_python_qxb4meok/tmp[1449 chars]]]]]] != [[('c[62 chars]y', 11), ('c4', '/tmp/test_python_qxb4meok/tmp[1464 chars]]]]]]
    
    First differing element 0:
    [('c5[61 chars]y', 10), ('c4', '/tmp/test_python_qxb4meok/tmp[179 chars] 21)]
    [('c5[61 chars]y', 11), ('c4', '/tmp/test_python_qxb4meok/tmp[179 chars] 21)]
    
    Diff is 2164 characters long. Set self.maxDiff to None to see it.
    
  6. pablogsal commented on May 5, 2025

    @pablogsal
    Member

    There are more places where the line numbers may change but we can use the same technique

  7. vstinner commented on May 5, 2025

    @vstinner
    Member

    There are more places where the line numbers may change but we can use the same technique

    Right. Please see my fix #133433.

  8. vstinner commented on May 5, 2025

    @vstinner
    Member

    It should be fixed by #133433.

  9. moved this from Todo to Done in asyncioon May 5, 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 fixesstdlibStandard Library Python modules in the Lib/ directorytopic-asynciotype-bugAn unexpected behavior, bug, or error

    Projects

    • Status
      Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions