Thread: Re: Intermittent errors when fetching cursor rows on PostgreSQL 16

Re: Intermittent errors when fetching cursor rows on PostgreSQL 16

From
Ron Johnson
Date:
On Wed, Dec 18, 2024 at 5:01 AM Enrico Schenone <eschenone@cleistech.it> wrote:
Good day.
My name is Enrico Schenone, from Genoa, Italy.
I'm a software achitect working at Cleis Tech - Genoa - Italy  - http://gruppocleis.it
Me and my team are using PostgreSQL v12 to v16 on Debian 10-12 and Ubuntu Server 22.04 LTS with no-cluster configuration.
Our applications are developed with 4Js Genero platform (classified as LCAP) - https://4js.com

I whish to report an issue where I can't say if it happens at server or client side (or both as well).
The problem occurs occasionally and only when fetching rows from a server-side cursor. The related query may be complex with joins or very easy (just one static table with 86 rows without WHERE conditions).
I have set the "debug5" verbosity level of PostgreSQL log and I have extracted from millions of log line those who are belonging to separate failing sessions/connections.
At the same time I have extracted the related application log.
For each failure reported into the client-side application log, I have a distinct PostgreSQL detailed log.

Then I have merged client-side end server-side logs along the timeline and I have observed what client and server does.
For example (S: means PostgreSQL Server log, while C: means Client log):

Can you replicate the error in Prod using psql and cursors?


--
Death to <Redacted>, and butter sauce.
Don't boil me, I'm still alive.
<Redacted> lobster!