pgsql: Fix buffile.c error handling.

From: Thomas Munro <tmunro(at)postgresql(dot)org>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Fix buffile.c error handling.
Date: 2020-06-16 05:29:59
Message-ID: E1jl4AZ-00080c-RF@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Fix buffile.c error handling.

Convert buffile.c error handling to use ereport. This fixes cases where
I/O errors were indistinguishable from EOF or not reported. Also remove
"%m" from error messages where errno would be bogus. While we're
modifying those strings, add block numbers and short read byte counts
where appropriate.

Back-patch to all supported releases.

Reported-by: Amit Khandekar <amitdkhan(dot)pg(at)gmail(dot)com>
Reviewed-by: Melanie Plageman <melanieplageman(at)gmail(dot)com>
Reviewed-by: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
Reviewed-by: Robert Haas <robertmhaas(at)gmail(dot)com>
Reviewed-by: Ibrar Ahmed <ibrar(dot)ahmad(at)gmail(dot)com>
Reviewed-by: Michael Paquier <michael(at)paquier(dot)xyz>
Discussion: https://postgr.es/m/CA%2BhUKGJE04G%3D8TLK0DLypT_27D9dR8F1RQgNp0jK6qR0tZGWOw%40mail.gmail.com

Branch
------
REL9_5_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/89020a92fb62fe09cd40d651ecbd4cd9912fd9d8

Modified Files
--------------
src/backend/access/gist/gistbuildbuffers.c | 24 +++++--------
src/backend/executor/nodeHashjoin.c | 24 +++++--------
src/backend/storage/file/buffile.c | 57 ++++++++++++++++--------------
src/backend/utils/sort/logtape.c | 19 ++++++----
src/backend/utils/sort/tuplestore.c | 56 +++++++++++++----------------
5 files changed, 86 insertions(+), 94 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Thomas Munro 2020-06-16 05:35:04 pgsql: Make BufFileWrite() void.
Previous Message Thomas Munro 2020-06-16 05:29:46 pgsql: Fix buffile.c error handling.