Re: [HACKERS] pg_upgrade to clusters with a different WAL segment size

From: Robert Haas <robertmhaas(at)gmail(dot)com>
To: Jeremy Schneider <schneider(at)ardentperf(dot)com>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Michael Paquier <michael(dot)paquier(at)gmail(dot)com>, Andres Freund <andres(at)anarazel(dot)de>, "Bossart, Nathan" <bossartn(at)amazon(dot)com>, "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: [HACKERS] pg_upgrade to clusters with a different WAL segment size
Date: 2017-11-17 23:26:29
Message-ID: CA+Tgmoa8k72+C0KuhXM9u2+S4Hs1d2tvtpjs=182ySPjms=5Ng@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Fri, Nov 17, 2017 at 5:46 PM, Jeremy Schneider
<schneider(at)ardentperf(dot)com> wrote:
> Having pg_upgrade simply allow an upgrade where the WAL sizes don't match
> between the old cluster and the new cluster seems fairly trivial.
...
> Writing code to change the WAL size on an existing cluster will be a little more
> complex. We will need to delete all WAL files and recreate them at the new
> sizes. We will need to either (1) be absolutely sure that there was a
> clean shutdown
> or (2) copy WAL data from the old files to the new files.

I think pg_resetwal has most of this logic already.

> These two ideas don't seem mutually exclusive to me. If pg_upgrade
> allows working
> with different WAL sizes, it doesn't mean we can't still introduce a
> utility to change the
> WAL size on running clusters.

I don't think anyone is talking about doing this on a running cluster.
But it seems simple enough on a cluster that has been shut down.

--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Robert Haas 2017-11-17 23:28:23 Re: default range partition and constraint exclusion
Previous Message Robert Haas 2017-11-17 23:23:40 Re: Treating work_mem as a shared resource (Was: Parallel Hash take II)