From: | Noah Misch <noah(at)leadboat(dot)com> |
---|---|
To: | "Lin, Cuiping" <lincuiping(at)cn(dot)fujitsu(dot)com> |
Cc: | "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Should program exit, When close() failed for O_RDONLY mode |
Date: | 2020-05-03 17:18:27 |
Message-ID: | 20200503171827.GB360383@rfd.leadboat.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Tue, Apr 14, 2020 at 02:32:40AM +0000, Lin, Cuiping wrote:
> I find that most of the code does not check the return value of close(), When open a file for reading(O_RDONLY).
>
> But I find that it checks the return value of close() in code "src/bin/pg_rewind/copy_fetch.c" When open a file for reading(O_RDONLY).
I think ignoring the return value is a superior style. It is less code, and
failure "can't happen."
> And it will call pg_fatal to cause premature exit.
>
> I think that when closing a read-only file fails, it shouid not exit the program early.It should ensure that the program execution is completed.
I would not say that. If close() does fail, something is badly wrong in the
program or the system running it. Though I opt not to check the return value,
if one does check it, exiting is a suitable response.
From | Date | Subject | |
---|---|---|---|
Next Message | Andres Freund | 2020-05-03 17:49:22 | Re: design for parallel backup |
Previous Message | Robert Haas | 2020-05-03 13:12:59 | Re: design for parallel backup |