"No Free extents", table using all allocated space but no rows! - Mailing list pgsql-general

From Dolan, Sean
Subject "No Free extents", table using all allocated space but no rows!
Date
Msg-id 0eda9b7d13e34cc786d30c602510f3e4@lmco.com
Whole thread Raw
Responses Re: "No Free extents", table using all allocated space but no rows!  (Laurenz Albe <laurenz.albe@cybertec.at>)
Why using a partial index is doing slightly more logical I/O than a normal index  ("Dirschel, Steve" <steve.dirschel@thomsonreuters.com>)
List pgsql-general

Environment: PostGres 13 on RedHat 7.9.  

 

I am using logical replication (publisher/subscriber) between two databases and there are times where one of our schemas gets to 100% of allocated space (No Free Extents).   I went into the schema and did a \dt+ to see the amount of size being used and I could see one of the tables somehow shows 16GB, essentially the amount of allocated size.    Wanting to see what is in that table, I did a simple select * from the table and it returns no rows.  Doing a count(*) also returns 0 rows.

 

How can the table be using all that space but there is nothing “in” the table?    I don’t care about the data (as I am testing) so I can drop and recreate that one table.  \dt+ would then show 0 bytes.    Later, I will then create a subscription and then I will get a No Free Extents error again and again the table has filled up.

 

What can I look for?

 

Thank you

pgsql-general by date:

Previous
From: Bryn Llewellyn
Date:
Subject: Re: Is the PL/pgSQL refcursor useful in a modern three-tier app?
Next
From: Mark Hill
Date:
Subject: RE: uuid-ossp source or binaries for Windows