old and new pg_controldata WAL segment sizes are invalid or do not match

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

old and new pg_controldata WAL segment sizes are invalid or do not match

ram pratap maurya-2
Hello taem,

i am faction issue during upgrade postgres11 to 12. can you please suggest how to resolve this issue.

..........................................................................................................................
bash-4.1$ /usr/pgsql-12/bin/pg_upgrade --old-datadir /var/lib/pgsql/11/data/ --new-datadir /var/lib/pgsql/12/data/ --old-bindir /usr/pgsql-11/bin/ --new-bindir /usr/pgsql-12/bin/ --check
Performing Consistency Checks
-----------------------------
Checking cluster versions                                   ok

old and new pg_controldata WAL segment sizes are invalid or do not match
Failure, exiting


regards,
ram Pratap
Reply | Threaded
Open this post in threaded view
|

Re: old and new pg_controldata WAL segment sizes are invalid or do not match

Jerry Sievers-3
ram pratap maurya <[hidden email]> writes:

> Hello taem,
>
> i am faction issue during upgrade postgres11 to 12. can you please
> suggest how to resolve this issue.
>
> ..........................................................................................................................
> bash-4.1$ /usr/pgsql-12/bin/pg_upgrade --old-datadir /var/lib/pgsql/
> 11/data/ --new-datadir /var/lib/pgsql/12/data/ --old-bindir /usr/
> pgsql-11/bin/ --new-bindir /usr/pgsql-12/bin/ --check
> Performing Consistency Checks
> -----------------------------
> Checking cluster versions                                   ok
>
> old and new pg_controldata WAL segment sizes are invalid or do not
> match
> Failure, exiting

Did you initdb the v12 cluster with a non-default WAL size?

Suggest you run pg_controldata for both old/new clusters and see what it
says, which the pg_upgrade error message is telling you to do.

HTH

>
>
> regards,
> ram Pratap
>
>

--
Jerry Sievers
Postgres DBA/Development Consulting
e: [hidden email]


Reply | Threaded
Open this post in threaded view
|

Re: old and new pg_controldata WAL segment sizes are invalid or do not match

Paul Förster
In reply to this post by ram pratap maurya-2
Hi ram,

> On 17. Jun, 2020, at 23:05, ram pratap maurya <[hidden email]> wrote:
> old and new pg_controldata WAL segment sizes are invalid or do not match
> Failure, exiting

delete the *new* PostgreSQL cluster (it should be empty anyway) and reinitialize it setting the wal-segsize to the same as the old cluster:

$ initdb --wal-segsize=<size> ...

(see https://www.postgresql.org/docs/current/app-initdb.html)

Then perform the upgrade as you tried before.

After that, you can, if you want, reset the size to a new one using pg_resetwal. But make sure you first do a really clean backup!

$ pg_resetwal --wal-segsize=<new_size> ...
(see https://www.postgresql.org/docs/current/app-pgresetwal.html)

But know what you're doing! Try on a test database first to see how it works.

Cheers,
Paul