fillfactor
The fillfactor for a table is a percentage between 10 and 100. 100 (complete packing) is the default. When a smaller fillfactor is specified, INSERT operations pack table pages only to the indicated percentage; the remaining space on each page is reserved for updating rows on that page. This gives UPDATE a chance to place the updated copy of a row on the same page as the original, which is more efficient than placing it on a different page, and makes heap-only tuple updates more likely. For a table whose entries are never updated, complete packing is the best choice, but in heavily updated tables smaller fillfactors are appropriate. This parameter cannot be set for TOAST tables.
Reading PG 18·Select a recorded version
- Applies to
- Tables and materialized views
- Value type
- integer
- Default
- 100
- Range
- 10–100 percent
- signature
- WITH (fillfactor = value)
Definition PG 18
The fillfactor for a table is a percentage between 10 and 100. 100 (complete packing) is the default. When a smaller fillfactor is specified, INSERT operations pack table pages only to the indicated percentage; the remaining space on each page is reserved for updating rows on that page. This gives UPDATE a chance to place the updated copy of a row on the same page as the original, which is more efficient than placing it on a different page, and makes heap-only tuple updates more likely. For a table whose entries are never updated, complete packing is the best choice, but in heavily updated tables smaller fillfactors are appropriate. This parameter cannot be set for TOAST tables.
Compare versions
Source references
Full definition and evidence JSON
Definition sources
center · PostgreSQL 18 · eb6c2292fdf28e1b4635ab478eec3919411cdf4a6c07553387870e26201f3744
Text language: en · eb6c2292fdf28e1b4635ab478eec3919411cdf4a6c07553387870e26201f3744