public inbox for [email protected]  
help / color / mirror / Atom feed
Re: db maintanance problem VACUUM FULL
2+ messages / 2 participants
[nested] [flat]

* Re: db maintanance problem VACUUM FULL
@ 2025-06-12 13:24 Laurenz Albe <[email protected]>
  2025-06-12 13:29 ` Re: db maintanance problem VACUUM FULL Ron Johnson <[email protected]>
  0 siblings, 1 reply; 2+ messages in thread

From: Laurenz Albe @ 2025-06-12 13:24 UTC (permalink / raw)
  To: Pavol Sekeres <[email protected]>; [email protected]

On Thu, 2025-06-12 at 15:14 +0200, Pavol Sekeres wrote:
> We recently updated our production database to PostgreSQL 12.22 from the 9.6.24 version.
> We didn't want to make a big jump.

But you should have.  v12 is out of support.

> It is around 2 TB in size with one stand-by replica of equal size.
> 
> We do run AUTOVACUUM processes on all tables periodically.
> We have never run VACUUM FULL on any table.
> This is because we can't afford to lock out tables for a long time.
> 
> Tables can be more than 100GB in size.
> They are being updated daily.
> Also due to GDPR old data is erased on a daily basis.
> We think these tables might get eventually bloated.
>
> Can this be a problem?

Yes.
Check for bloat in suspicious tables using the "pgstattuple" extension.

> If yes, is there any other solution outside locking the database?

There are the third-party tools pg_squeeze and pg_repack.

> Should we try to solve this problem by creating a logical replica of the database?
> We would then promote the replica to primary.
> After that, we would drop the old database.
> Is this possible without a big downtime?

Yes, that is possible.

> Is this even a good idea?

Logical replication can be complicated.  One of the above tools would be simpler.

> Our database uses a wal_level 'replica'.
> As I understand it, this setting would first have to be switched to 'logical'.

Right.

Yours,
Laurenz Albe






^ permalink  raw  reply  [nested|flat] 2+ messages in thread

* Re: db maintanance problem VACUUM FULL
  2025-06-12 13:24 Re: db maintanance problem VACUUM FULL Laurenz Albe <[email protected]>
@ 2025-06-12 13:29 ` Ron Johnson <[email protected]>
  0 siblings, 0 replies; 2+ messages in thread

From: Ron Johnson @ 2025-06-12 13:29 UTC (permalink / raw)
  To: pgsql-generallists.postgresql.org <[email protected]>

On Thu, Jun 12, 2025 at 9:24 AM Laurenz Albe <[email protected]>
wrote:

> On Thu, 2025-06-12 at 15:14 +0200, Pavol Sekeres wrote:
> > We recently updated our production database to PostgreSQL 12.22 from the
> 9.6.24 version.
> > We didn't want to make a big jump.
>
> But you should have.  v12 is out of support.
>

The dreaded Software Compatibility Matrix often restricts how big of a jump
is possible when upgrading databases (and even Python).

Multi-phase upgrades spanning months are quite common.

-- 
Death to <Redacted>, and butter sauce.
Don't boil me, I'm still alive.
<Redacted> lobster!


^ permalink  raw  reply  [nested|flat] 2+ messages in thread


end of thread, other threads:[~2025-06-12 13:29 UTC | newest]

Thread overview: 2+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2025-06-12 13:24 Re: db maintanance problem VACUUM FULL Laurenz Albe <[email protected]>
2025-06-12 13:29 ` Ron Johnson <[email protected]>

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox