Thread

  1. Safest pgupgrade jump distance

    Dávid Suchan <david.suchan.ds@gmail.com> — 2024-02-12T10:07:48Z

    Hi, I was wondering what is the safest pg_upgrade version upgrade distance
    going from 9.6 version. Do I need to go version by version or I can go from
    9.6 to 15? We have a very huge database(TBs) with one replication server,
    so we will first run the pgupgrade on the main server and then rsync to a
    standby replica. I'm not sure whether it's safe to do it from 9.6 to 15 at
    once, I have tested the process on 9,6 to 10 yet. Would that be a wise
    approach to such an upgrade of the db?
    Also, when upgrading a very big database with replication where none of the
    data can be allowed to be lost, is the pgupgrade into rsync approach the
    best one? Thanks.
    
  2. Re: Safest pgupgrade jump distance

    Justin Clift <justin@postgresql.org> — 2024-02-12T10:15:31Z

    On 2024-02-12 20:07, Dávid Suchan wrote:
    > Hi, I was wondering what is the safest pg_upgrade version upgrade 
    > distance
    > going from 9.6 version. Do I need to go version by version or I can go 
    > from
    > 9.6 to 15? We have a very huge database(TBs) with one replication 
    > server,
    > so we will first run the pgupgrade on the main server and then rsync to 
    > a
    > standby replica. I'm not sure whether it's safe to do it from 9.6 to 15 
    > at
    > once, I have tested the process on 9,6 to 10 yet. Would that be a wise
    > approach to such an upgrade of the db?
    > Also, when upgrading a very big database with replication where none of 
    > the
    > data can be allowed to be lost, is the pgupgrade into rsync approach 
    > the
    > best one? Thanks.
    
    pgupgrade from 9.6 directly to 16 should work fine.  That's part of the
    test suite for one of my side projects (pgautoupgrade in Docker).
    
    You'll probably want to use the "--link" option too, so it uses the 
    existing
    data files rather than recreating them.  It's *much* faster. :)
    
    I'm not sure how the rsync of things will figure into it though.  If 
    you're
    just rsyncing files when the database is turned off, it should be 
    straight
    forward.
    
    As always though, make sure you have a backup (that's known to work) 
    before
    you try it all out though. :)
    
    + Justin
    
    
    
    
  3. Re: Safest pgupgrade jump distance

    Johnathan Tiamoh <johnathantiamoh@gmail.com> — 2024-02-12T13:31:02Z

    I have upgraded from 9.5 to 14 using the -link option. It works fine.
    
    I equally had streaming replication running on it.
    I break(split brain)  replication and upgrade the standby, once it done and
    everything is running smoothly, I then install version 14 to the old
    primary and just configure streaming on it and all now runs on 14.
    
    
    On Mon, Feb 12, 2024 at 5:08 AM Dávid Suchan <david.suchan.ds@gmail.com>
    wrote:
    
    > Hi, I was wondering what is the safest pg_upgrade version upgrade distance
    > going from 9.6 version. Do I need to go version by version or I can go from
    > 9.6 to 15? We have a very huge database(TBs) with one replication server,
    > so we will first run the pgupgrade on the main server and then rsync to a
    > standby replica. I'm not sure whether it's safe to do it from 9.6 to 15 at
    > once, I have tested the process on 9,6 to 10 yet. Would that be a wise
    > approach to such an upgrade of the db?
    > Also, when upgrading a very big database with replication where none of
    > the data can be allowed to be lost, is the pgupgrade into rsync approach
    > the best one? Thanks.
    >
    
  4. Re: Safest pgupgrade jump distance

    Ron Johnson <ronljohnsonjr@gmail.com> — 2024-02-12T14:31:50Z

    On Mon, Feb 12, 2024 at 5:08 AM Dávid Suchan <david.suchan.ds@gmail.com>
    wrote:
    
    > Hi, I was wondering what is the safest pg_upgrade version upgrade distance
    > going from 9.6 version. Do I need to go version by version or I can go from
    > 9.6 to 15? We have a very huge database(TBs) with one replication server,
    > so we will first run the pgupgrade on the main server and then rsync to a
    > standby replica. I'm not sure whether it's safe to do it from 9.6 to 15 at
    > once
    
    
    https://www.postgresql.org/docs/16/pgupgrade.html
    "pg_upgrade supports upgrades from 9.2.X and later to the current major
    release of PostgreSQL, including snapshot and beta releases."
    
  5. Re: Safest pgupgrade jump distance

    Karsten Hilbert <karsten.hilbert@gmx.net> — 2024-02-12T16:07:47Z

    Am Mon, Feb 12, 2024 at 09:31:50AM -0500 schrieb Ron Johnson:
    
    > https://www.postgresql.org/docs/16/pgupgrade.html
    > "pg_upgrade supports upgrades from 9.2.X and later to the current major
    > release of PostgreSQL, including snapshot and beta releases."
    
    Just to be sure: it should be stressed that the binaries of
    the later version (16 in OPs case) should be used to run the
    upgrade, right ?
    
    Karsten
    --
    GPG  40BE 5B0E C98E 1713 AFA6  5BC0 3BEA AC80 7D4F C89B
    
    
    
    
  6. Re: Safest pgupgrade jump distance

    Tom Lane <tgl@sss.pgh.pa.us> — 2024-02-12T16:52:31Z

    Karsten Hilbert <Karsten.Hilbert@gmx.net> writes:
    > Am Mon, Feb 12, 2024 at 09:31:50AM -0500 schrieb Ron Johnson:
    >> https://www.postgresql.org/docs/16/pgupgrade.html
    >> "pg_upgrade supports upgrades from 9.2.X and later to the current major
    >> release of PostgreSQL, including snapshot and beta releases."
    
    > Just to be sure: it should be stressed that the binaries of
    > the later version (16 in OPs case) should be used to run the
    > upgrade, right ?
    
    Right.  Another thing worth pointing out here is that with such
    a large jump distance, you'd better test application compatibility
    before making the change on your production database.  There are
    likely to be a few gotchas.
    
    			regards, tom lane
    
    
    
    
  7. Re: Safest pgupgrade jump distance

    Greg Sabino Mullane <htamfids@gmail.com> — 2024-02-12T16:54:53Z

    On Mon, Feb 12, 2024 at 5:08 AM Dávid Suchan <david.suchan.ds@gmail.com>
    wrote:
    
    > Hi, I was wondering what is the safest pg_upgrade version upgrade distance
    > going from 9.6 version. Do I need to go version by version or I can go from
    > 9.6 to 15?
    
    
    You can go direct. You really should go to 16 though. If nothing else, you
    gain lots of performance improvements and another year before your version
    goes EOL (end of life).
    
    
    > We have a very huge database(TBs) with one replication server, so we will
    > first run the pgupgrade on the main server and then rsync to a standby
    > replica.
    
    
    I assume you mean the three-way rsync recipe in the docs.
    
    Also, when upgrading a very big database with replication where none of the
    > data can be allowed to be lost, is the pgupgrade into rsync approach the
    > best one? Thanks.
    >
    
    Not sure about "best", it is certainly the fastest. For data loss concerns,
    that's where your backup system (e.g. pgBackRest) is key.
    
    Cheers,
    Greg