Re: Archive logging not cleaning up pg_wal directory

From: Laurenz Albe <laurenz(dot)albe(at)cybertec(dot)at>
To: Justin Swanhart <greenlion(at)gmail(dot)com>, pgsql-general(at)lists(dot)postgresql(dot)org
Subject: Re: Archive logging not cleaning up pg_wal directory
Date: 2025-04-10 12:48:00
Message-ID: 399f53cd1274345d0301dd7ecf016ae749e87abe.camel@cybertec.at
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Thu, 2025-04-10 at 08:28 -0400, Justin Swanhart wrote:
> I have the following in my postgresql.conf for archive logging:
> archive_command='test ! -f /var/lib/postgresql/prod_archive_logs/%f && cp %p /var/lib/postgresql/prod_archive_logs/%f'
>
> This command is properly copying the log files to my archive directory but they remain in the `pg_wal`
> directory after they are copied, consuming hundreds of gigs of space.  Am I supposed to create a cron
> job to clean out the `pg_wal` directory periodically (keep only 1 day of logs I guess?)
>
> I tried to use mv:
> archive_command='test ! -f /var/lib/postgresql/prod_archive_logs/%f && mv %p /var/lib/postgresql/prod_archive_logs/%f'
>
> When I did this the archives were moved away to the archive directory but when I tried to set up
> replication the server could not find the archived log to replicate from so I changed it to "cp" and now have this problem.
>
> What am I missing?

Something else is blocking WAL removal:
https://www.cybertec-postgresql.com/en/why-does-my-pg_wal-keep-growing/

Since you mention replication, my money is on a stale replication slot.

Yours,
Laurenz Albe

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Ron Johnson 2025-04-10 12:48:16 Re: Archive logging not cleaning up pg_wal directory
Previous Message Laurenz Albe 2025-04-10 12:46:18 Re: psql meta command