Re: Regression in pipeline mode in libpq 14.5
Daniele Varrazzo <daniele.varrazzo@gmail.com>
From: Daniele Varrazzo <daniele.varrazzo@gmail.com>
To: Alvaro Herrera <alvherre@alvh.no-ip.org>
Cc: pgsql-bugs <pgsql-bugs@postgresql.org>
Date: 2022-08-24T00:21:31Z
Lists: pgsql-bugs
Attachments
- test-pipeline-bug.py (text/x-python)
On Mon, 15 Aug 2022 at 17:24, Alvaro Herrera <alvherre@alvh.no-ip.org> wrote: > Hmm, it seems (judging only from comparing your two traces) that the > problem stems from the newly added hack to handle CloseComplete. I'll > have a look later in the week. We worked around the problem in psycopg by dropping every use of `PQsendQuery()` and only using `PQsendQueryParams()` for internal queries too. So this is no more a blocker for our 3.1 release. I will try to perform periodic test runs against Postgres master in order to catch future breakages before a Postgres release. Please find attached a smaller test to reproduce the issue. It's written in Python and uses psycopg master branch, but it only uses libpq calls so it can be easily converted to C or whatever is useful to add to your test suite. In order to run: ``` python3 -m venv venv source venv/bin/activate pip install "git+https://github.com/psycopg/psycopg.git@e5079184#subdirectory=psycopg&egg=psycopg" python test-pipeline-bug.py ``` The script will succeed running with libpq 14.4 and fail running libpq 14.5. The difference in the traces is similar to what was attached upthread. Best regards -- Daniele
Commits
-
Remove PQsendQuery support in pipeline mode
- bd8ac900df4d 15.0 landed
- 0032a5456708 16.0 landed
-
Stop using PQsendQuery in libpq_pipeline
- d11a41a4ce79 16.0 landed
- 27e04412c9c3 15.0 landed
- 1c03166352c3 14.6 landed