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




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


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

Attachment