Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Test failure in test_executemany_server_failure_during_writes

Open
#1,099 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
35/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Stale
Tech stack
postgresql, python
Domain
backend, databases

Research direction

Start with tests/test_execute.py, especially TestExecuteMany.test_executemany_server_failure_during_writes around the failing assertion at line 215. Reproduce the test with Python 3.12, PostgreSQL 15.4, and asyncio, then compare the observed position of 128 with the test's expected early stop. Done means the failure is understood and the test passes consistently without an unjustified platform-specific skip.

Written by the indexing model from the issue text.

Description

  • asyncpg version: 0.29.0
  • PostgreSQL version: 15.4
  • Do you use a PostgreSQL SaaS? If so, which? Can you reproduce
    the issue with a local PostgreSQL install?
    : N/A, building the python-asyncpg package on Fedora Linux infrastructure
  • Python version: 3.12.0
  • Platform: Fedora Linux Rawhide, s390x architecture (only!)
  • Do you use pgbouncer?: No
  • Did you install asyncpg with pip?: No, I am the maintainer of the distribution package.
  • If you built asyncpg locally, which version of Cython did you use?: 0.29.35
  • Can the issue be reproduced under both asyncio and
    uvloop?
    : No, only asyncio. yes

This is new in 0.29.0. I don’t have any idea why it is happening.

I can’t reproduce this with PYTHONASYNCIODEBUG=1, nor can I reproduce it with USE_UVLOOP=1. I have now seen this on x86_64 with asyncio and PYTHONASYNCIODEBUG=1.

I don’t have interactive access to an s390x machine, but I am happy to run experiments or test proposed fixes by submitting package test builds on Fedora infrastructure. For the time being, I plan to simply skip this test on s390x.

=================================== FAILURES ===================================
________ TestExecuteMany.test_executemany_server_failure_during_writes _________
Traceback (most recent call last):
  File "/usr/lib64/python3.12/unittest/case.py", line 58, in testPartExecutor
    yield
  File "/usr/lib64/python3.12/unittest/case.py", line 634, in run
    self._callTestMethod(testMethod)
  File "/usr/lib64/python3.12/unittest/case.py", line 589, in _callTestMethod
    if method() is not None:
       ^^^^^^^^
  File "/builddir/build/BUILDROOT/python-asyncpg-0.29.0-1.fc40.s390x/usr/lib64/python3.12/site-packages/asyncpg/_testbase/__init__.py", line 92, in wrapper
    self.loop.run_until_complete(coro)
  File "/usr/lib64/python3.12/asyncio/base_events.py", line 664, in run_until_complete
    return future.result()
           ^^^^^^^^^^^^^^^
  File "/builddir/build/BUILD/asyncpg-0.29.0/tests/test_execute.py", line 215, in test_executemany_server_failure_during_writes
    self.assertLess(pos, 128, 'should stop early')
  File "/usr/lib64/python3.12/unittest/case.py", line 1257, in assertLess
    self.fail(self._formatMessage(msg, standardMsg))
  File "/usr/lib64/python3.12/unittest/case.py", line 715, in fail
    raise self.failureException(msg)
AssertionError: 128 not less than 128 : should stop early
Dominant language
Python
Stars
8.1k
Forks
469
Avg merge
2d 20h
Merged PRs (30d)
9

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from MagicStack/asyncpg

All issues in MagicStack/asyncpg

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.