Re: Fillfactor effectiveness on existing table - Mailing list pgsql-general

From Durgamahesh Manne
Subject Re: Fillfactor effectiveness on existing table
Date
Msg-id CAJCZko+P6KM=xsgFs+oyR7AJghkXUc+_NbDuONdeQWJz+iQ8Mg@mail.gmail.com
Whole thread
In response to Re: Fillfactor effectiveness on existing table  (Ron Johnson <ronljohnsonjr@gmail.com>)
Responses Re: Fillfactor effectiveness on existing table
List pgsql-general


On Tue, 10 Feb, 2026, 22:58 Ron Johnson, <ronljohnsonjr@gmail.com> wrote:
On Tue, Feb 10, 2026 at 11:05 AM David G. Johnston <david.g.johnston@gmail.com> wrote:
On Tuesday, February 10, 2026, Durgamahesh Manne <maheshpostgres9@gmail.com> wrote:
Hi 

I added fillfactor with less than 100 to existing table then ran vacuum full to take effect 

How to ensure the applied fillfactor is working successfully 

A ratio of hot updates in catalog table should higher than value of n_dead_tup or n_tup_upd? Or what ?


While free space on the page is necessary for HOT, it is not sufficient.

If you want to prove fillfactor isn’t buggy I’d suggest contriving a test case instead inspecting complex real data.  A table with a single bigint and say 50 fillfactor should be easily visible when inspecting the free space of a page in the heap (not sure of the exact query for this though).  There is a page-inspect contrib extension that provides low-level details.

What about pgstattuple.free_space and free_percent?

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


Hi @Ron 
approx_free_space | 13227478672 approx_free_percent | 30.89065723142561

Free space can be considered as bloat for non toast table but not for both toast and non toast I believe 


Regards 
Durga Mahesh 

pgsql-general by date:

Previous
From: Durgamahesh Manne
Date:
Subject: Re: Fillfactor effectiveness on existing table
Next
From: Durgamahesh Manne
Date:
Subject: Re: Table bloat threshold limit to trigger repack