pgsql: Flush logical mapping files with fd opened for read/write at che

From: Michael Paquier <michael(at)paquier(dot)xyz>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Flush logical mapping files with fd opened for read/write at che
Date: 2019-10-09 04:32:26
Message-ID: E1iI3eE-0003Pl-GX@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Flush logical mapping files with fd opened for read/write at checkpoint

The file descriptor was opened with read-only to fsync a regular file,
which would cause EBADFD errors on some platforms.

This is similar to the recent fix done by a586cc4b (which was broken by
me with 82a5649), except that I noticed this issue while monitoring the
backend code for similar mistakes. Backpatch to 9.4, as this has been
introduced since logical decoding exists as of b89e151.

Author: Michael Paquier
Reviewed-by: Andres Freund
Discussion: https://postgr.es/m/20191006045548.GA14532@paquier.xyz
Backpatch-through: 9.4

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/b8e19b932a99a7eb5a3bce84e74b0b7c093d0981

Modified Files
--------------
src/backend/access/heap/rewriteheap.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Christoph Berg 2019-10-09 07:33:54 Re: pgsql: Remove pqsignal() from libpq's official exports list.
Previous Message Bruce Momjian 2019-10-09 02:16:52 pgsql: pg_upgrade: clarify the database names in error files