| From: | Christophe Pettus <xof(at)thebuild(dot)com> |
|---|---|
| To: | dinesh kumar <dineshkumar02(at)gmail(dot)com> |
| Cc: | Justin <zzzzz(dot)graf(at)gmail(dot)com>, Postgres General <pgsql-general(at)postgresql(dot)org> |
| Subject: | Re: FATAL Idle transaction timeout - TRX Commit |
| Date: | 2026-09-05 04:18:00 |
| Message-ID: | 5EF340AE-B35F-4386-91DF-F817C061886B@thebuild.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-general |
> On Sep 4, 2026, at 20:43, dinesh kumar <dineshkumar02(at)gmail(dot)com> wrote:
>
> Hi Justin,
>
> Thanks for the clarification. There were no parallel sessions while we deleted those records.
>
> It was a single session and a single transaction only.
>
> If the transaction was aborted for any reason, like ERROR or FATAL (I assume the connection will close or reset, starting a new session), then the previous state of the transaction and session will also be rolled back, right?
>
> This is the behaviour we regularly see. However, as you see in the reported cases above, this rollback was not occurring.
>
> After FATAL,
>
> We started a new transaction,
>
> It executed the previous transaction's statement (which was aborted due to idle timeout) as a single statement (with autocommit). Is this the correct behaviour? No Right ?
It's very unlikely that there is a bug in this area. I suspect that statements are being delivered out of order from how they appear.
My suggestion is to set log_min_statement_duration to 0 to capture a few incidents of this, so you can see what the actual sequencing of the statements is.
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Greg Sabino Mullane | 2026-09-05 13:29:29 | Re: FATAL Idle transaction timeout - TRX Commit |
| Previous Message | dinesh kumar | 2026-09-05 03:43:24 | Re: FATAL Idle transaction timeout - TRX Commit |