Re: Fillfactor effectiveness on existing table

Durgamahesh Manne <maheshpostgres9@gmail.com>

From: Durgamahesh Manne <maheshpostgres9@gmail.com>
To: Ron Johnson <ronljohnsonjr@gmail.com>
Cc: pgsql-general <pgsql-general@lists.postgresql.org>
Date: 2026-02-11T02:34:02Z
Lists: 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 <ronljohnsonjr@gmail.com>
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

>