public inbox for [email protected]  
help / color / mirror / Atom feed
From: Tom Lane <[email protected]>
To: Thomas Munro <[email protected]>
Cc: Nathan Bossart <[email protected]>
Cc: Bharath Rupireddy <[email protected]>
Cc: Andres Freund <[email protected]>
Cc: Bossart, Nathan <[email protected]>
Cc: Julien Rouhaud <[email protected]>
Cc: PostgreSQL Hackers <[email protected]>
Subject: Re: Avoid erroring out when unable to remove or parse logical rewrite files to save checkpoint work
Date: Mon, 08 Aug 2022 23:50:18 -0400
Message-ID: <[email protected]> (raw)
In-Reply-To: <CA+hUKGJt5AA5ioFG118F=+kW79Rnzicp=UmKG9ea8MqfsLnatQ@mail.gmail.com>
References: <[email protected]>
	<20220215183758.GA2435469@nathanxps13>
	<20220215231123.GA2584239@nathanxps13>
	<CA+hUKGKFZ3GH8OXDDewamRNU5LBxkham=RVv3xTZd1kcqs5i-A@mail.gmail.com>
	<20220329224832.GA560657@nathanxps13>
	<20220330162008.GA784267@nathanxps13>
	<20220408201857.GA1586536@nathanxps13>
	<CALj2ACXKYq4q6xinUNwA=ttQK_5QeSR3oxk6rLv5sW_9Hb28tg@mail.gmail.com>
	<20220708171439.GB2356733@nathanxps13>
	<CALj2ACUYMuO027XNJNsBfaPUhA+6fC=S0HjasQ4BpUQt0W9eSA@mail.gmail.com>
	<20220718181842.GB3642254@nathanxps13>
	<CA+hUKGKnRur_Uj6oUL1g+ffpe3-ibz0vOqYENuc0JnzWNb3htQ@mail.gmail.com>
	<[email protected]>
	<[email protected]>
	<CA+hUKGJt5AA5ioFG118F=+kW79Rnzicp=UmKG9ea8MqfsLnatQ@mail.gmail.com>

Thomas Munro <[email protected]> writes:
> On Tue, Aug 9, 2022 at 3:27 PM Tom Lane <[email protected]> wrote:
>> I have not tried to analyze the error-handling properties of 0001,
>> but if it's being equally cavalier then it shouldn't be committed
>> either.

> 0001 does introduce new errors, as mentioned in the commit message, in
> the form of elevel ERROR passed into get_dirent_type(), which might be
> thrown if your OS has no d_type and lstat() fails (also if you asked
> to follow symlinks, but in those cases errors were already thrown).
> But in those cases, it seems at least a little fishy that we ignored
> errors from the existing lstat().

Hmmm ... I'll grant that ignoring lstat errors altogether isn't great.
But should the replacement behavior be elog-LOG-and-press-on,
or elog-ERROR-and-fail-the-surrounding-operation?  I'm not in any
hurry to believe that the latter is more appropriate without some
analysis of what the callers are doing.

The bottom line here is that I'm distrustful of behavioral changes
introduced to simplify refactoring rather than to solve a live
problem.

			regards, tom lane





view thread (45+ messages)  latest in thread

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: [email protected]
  Cc: [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected]
  Subject: Re: Avoid erroring out when unable to remove or parse logical rewrite files to save checkpoint work
  In-Reply-To: <[email protected]>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox