Thread: recovery.conf and archive_cleanup_command

recovery.conf and archive_cleanup_command

From
Rita
Date:
I have primary and standby replication setup.

On my primary the archive directory is rather large (30GB) and growing. On my standby I have recovery.conf which has 
archive_cleanup_command = 'pg_archivecleanup -d /var/lib/pgsql/11/data/archive %r'

I was under the impression this line would remove data from my primary AND standby. Is that not the case?

--
--- Get your facts first, then you can distort them as you please.--

Re: recovery.conf and archive_cleanup_command

From
Laurenz Albe
Date:
On Sat, 2022-10-08 at 08:51 -0400, Rita wrote:
> I have primary and standby replication setup.
> 
> On my primary the archive directory is rather large (30GB) and growing. On my standby I have recovery.conf which
has 
> archive_cleanup_command = 'pg_archivecleanup -d /var/lib/pgsql/11/data/archive %r'
> 
> I was under the impression this line would remove data from my primary AND standby. Is that not the case?

That depends on your PostgreSQL version, for instance.

Also, it depends on whether the standby server is running and actually recovering.
Finally, it depends on whether the standby can execute the command successfully or not.

Did you look at the standby's logs?

Yours,
Laurenz Albe
-- 
Cybertec | https://www.cybertec-postgresql.com



Re: recovery.conf and archive_cleanup_command

From
Yang Steve
Date:
I am using PostgreSQL Version 15 now, however, archive_cleanup_command only triggered on standby box, not on primary. Is that expected as designing? 

Laurenz Albe <laurenz.albe@cybertec.at> 于2022年10月10日周一 04:33写道:
On Sat, 2022-10-08 at 08:51 -0400, Rita wrote:
> I have primary and standby replication setup.
>
> On my primary the archive directory is rather large (30GB) and growing. On my standby I have recovery.conf which has 
> archive_cleanup_command = 'pg_archivecleanup -d /var/lib/pgsql/11/data/archive %r'
>
> I was under the impression this line would remove data from my primary AND standby. Is that not the case?

That depends on your PostgreSQL version, for instance.

Also, it depends on whether the standby server is running and actually recovering.
Finally, it depends on whether the standby can execute the command successfully or not.

Did you look at the standby's logs?

Yours,
Laurenz Albe
--
Cybertec | https://www.cybertec-postgresql.com


Re: recovery.conf and archive_cleanup_command

From
Laurenz Albe
Date:
On Fri, 2023-05-12 at 23:45 +1000, Yang Steve wrote:
> Laurenz Albe <laurenz.albe@cybertec.at> 于2022年10月10日周一 04:33写道:
> > On Sat, 2022-10-08 at 08:51 -0400, Rita wrote:
> > > I have primary and standby replication setup.
> > >
> > > On my primary the archive directory is rather large (30GB) and growing. On my standby I have recovery.conf which
has 
> > > archive_cleanup_command = 'pg_archivecleanup -d /var/lib/pgsql/11/data/archive %r'
> > >
> > > I was under the impression this line would remove data from my primary AND standby. Is that not the case?
> >
> > That depends on your PostgreSQL version, for instance.
> >
> > Also, it depends on whether the standby server is running and actually recovering.
> > Finally, it depends on whether the standby can execute the command successfully or not.
> >
> > Did you look at the standby's logs?
>
> I am using PostgreSQL Version 15 now, however, archive_cleanup_command only triggered on standby box, not on primary.
> Is that expected as designing?

Yes.  It is a recovery parameter, and they are only used if PostgreSQL is in recovery.
The parameter makes no sense unless you are recovering.

Yours,
Laurenz Albe