Re: pg_upgrade should truncate/remove its logs before running

From: Justin Pryzby <pryzby(at)telsasoft(dot)com>
To: Andrew Dunstan <andrew(at)dunslane(dot)net>
Cc: Bruce Momjian <bruce(at)momjian(dot)us>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: Re: pg_upgrade should truncate/remove its logs before running
Date: 2021-12-15 22:13:10
Message-ID: 20211215221310.GU17618@telsasoft.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Wed, Dec 15, 2021 at 05:04:54PM -0500, Andrew Dunstan wrote:
> On 12/15/21 16:23, Bruce Momjian wrote:
> > On Wed, Dec 15, 2021 at 04:17:23PM -0500, Tom Lane wrote:
> >> Bruce Momjian <bruce(at)momjian(dot)us> writes:
> >>> On Sat, Dec 11, 2021 at 08:50:17PM -0600, Justin Pryzby wrote:
> >>>> If pg_upgrade fails and is re-run, it appends to its logfiles, which is
> >>>> confusing since, if it fails again, it then looks like the original error
> >>>> recurred and wasn't fixed. The "append" behavior dates back to 717f6d608.
> >>> Uh, the database server doesn't erase its logs on crash/failure, so why
> >>> should pg_upgrade do that?
> >> The server emits enough information so that it's not confusing:
> >> there are timestamps, and there's an identifiable startup line.
> >> pg_upgrade does neither. If you don't want to truncate as
> >> Justin suggests, you should do that instead.
> >>
> >> Personally I like the idea of making a timestamped subdirectory
> >> and dropping all the files in that, because the thing that most
> >> annoys *me* about pg_upgrade is the litter it leaves behind in
> >> $CWD. A subdirectory would make it far easier to mop up the mess.
> > Yes, lot of litter. Putting it in a subdirectory makes a lot of sense.
> > Justin, do you want to work on that patch, since you had an earlier
> > version to fix this?
>
> The directory name needs to be predictable somehow, or maybe optionally
> set as a parameter. Having just a timestamped directory name would make
> life annoying for a poor buildfarm maintainer. Also, please don't change
> anything before I have a chance to adjust the buildfarm code to what is
> going to be done.

Feel free to suggest the desirable behavior.
It could write to pg_upgrade.log/* and refuse to run if the dir already exists.

--
Justin

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Justin Pryzby 2021-12-15 22:38:52 Re: pg_stat_bgwriter.buffers_backend is pretty meaningless (and more?)
Previous Message Daniel Gustafsson 2021-12-15 22:10:14 Re: Support for NSS as a libpq TLS backend