Incorrect errno used with %m for backend code

From: Michael Paquier <michael(at)paquier(dot)xyz>
To: Postgres hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Incorrect errno used with %m for backend code
Date: 2018-06-22 06:15:35
Message-ID: 20180622061535.GD5215@paquier.xyz
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi all,

I have been reviewing the use of errno in the backend code when %m is
used in the logs, and found more places than when I looked at improving
the error messages for read() calls which bloat the errno value because
of intermediate system calls. As the problem is separate and should be
back-patched, I have preferred beginning a new thread.

A couple of places use CloseTransientFile without bothering much that
this can overwrite errno. I was tempted in keeping errno saved and kept
if set to a non-zero value, but refrained from doing so as some callers
may rely on the existing behavior, and the attached shows better the
intention.

Attached is a patch with everything I have spotted. Any opinions or
thoughts in getting this back-patched?

Thanks,
--
Michael

Attachment Content-Type Size
errno-m-logs-v1.patch text/x-diff 9.2 KB

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Michael Paquier 2018-06-22 06:25:48 Re: PANIC during crash recovery of a recently promoted standby
Previous Message Jeevan Chalke 2018-06-22 05:45:44 Re: Server crashed with TRAP: FailedAssertion("!(parallel_workers > 0)" when partitionwise_aggregate true.