Thread: Re: Is it possible to add support for PostgreSQL-15 and newer versions in omnipitr?
Re: Is it possible to add support for PostgreSQL-15 and newer versions in omnipitr?
From
hubert depesz lubaczewski
Date:
On Tue, Dec 05, 2023 at 01:10:18PM +0800, xuzhao.zhao wrote: > Hi depesz, > We currently use omnipitr-backup-slave to backup our database for PG14 and > earlier versions. However, there have been changes to the backup process in > PG15 that have rendered omnipitr-backup-slave unable to function. > Changes are as follows: > > * Functions pg_start_backup()/pg_stop_backup() have been renamed to > pg_backup_start()/pg_backup_stop() > * Remove long-deprecated exclusive backup mode. The connection calling > pg_backup_start must be maintained until the end of the backup, or > the backup will be automatically aborted. > > Is it possible for the omnipitr-backup-slave tool to execute > pg_start_backup() and keep the session open until it can also execute > pg_stop_backup() after the tarball is created? Hi, that would take some not-trivial changes, and the code isn't really maintained. I don't think the company that I developed it for even exists anymore. These days I would recommend migrating to something different like pgbackrest, for example. Best regards, depesz
Re: Is it possible to add support for PostgreSQL-15 and newer versions in omnipitr?
From
hailong.li
Date:
HI,Dear depesz
OmniPITR is an very excellent software!
Our company has been using it for over ten years!Our company has a large number of PG instances,so omnipitr is extremely important to us!
Since we are not familiar with Perl, it will be very difficult for us to maintain omnipitr ourselves. But it should be relatively easy for you.
Please help us one more time!
Btw, pgbackrest only supports the default 8k blocksize of PG instances,but our blocksize is 32k.😭
On 2023/12/5 22:48, hubert depesz lubaczewski wrote:
On Tue, Dec 05, 2023 at 01:10:18PM +0800, xuzhao.zhao wrote:Hi depesz, We currently use omnipitr-backup-slave to backup our database for PG14 and earlier versions. However, there have been changes to the backup process in PG15 that have rendered omnipitr-backup-slave unable to function. Changes are as follows: * Functions pg_start_backup()/pg_stop_backup() have been renamed to pg_backup_start()/pg_backup_stop() * Remove long-deprecated exclusive backup mode. The connection calling pg_backup_start must be maintained until the end of the backup, or the backup will be automatically aborted. Is it possible for the omnipitr-backup-slave tool to execute pg_start_backup() and keep the session open until it can also execute pg_stop_backup() after the tarball is created?Hi, that would take some not-trivial changes, and the code isn't really maintained. I don't think the company that I developed it for even exists anymore. These days I would recommend migrating to something different like pgbackrest, for example. Best regards, depesz
Re: Is it possible to add support for PostgreSQL-15 and newer versions in omnipitr?
From
Stephen Frost
Date:
Greetings, * hailong.li (hailong.li@qunar.com) wrote: > OmniPITR is an very excellent software! Unfortunately, it's not been maintained in many many years and used deprecated and now removed interfaces because those interfaces resulted in cases where PG wouldn't properly restart from a crash when it should and encouraged users to do things which could lead very easily to corruption. > Btw, pgbackrest only supports the default 8k blocksize of PG instances,but > our blocksize is 32k.😭 There's been some work towards adding support for alternative block size PG instances in pgbackrest. The open pull request is here: https://github.com/pgbackrest/pgbackrest/pull/2197 If you're interested in this then I strongly encourage you to take a look at that pull request and try out pgbackrest with it and provide your feedback on it. Independently, it'd be very interesting to hear about your use case and why you're running with 32K block sizes instead of the default 8K. There's been some work to make PostgreSQL able to run with different block sizes which are chosen at initdb-time (instead of having it be a compile-time option), presumably that would also be interesting for your use-case...? Thanks, Stephen