↑↓ select↵ open⌫ change scopeOpen full search

PG.CENTER connects PostgreSQL documentation, reference, and ecosystem knowledge. Maintained by Pigsty.

Wiki / Configuration Parameters

vacuum_max_eager_freeze_failure_rate

Specifies the maximum number of pages (as a fraction of total pages in the relation) that VACUUM may scan and fail to set all-frozen in the visibility map before disabling eager scanning. A value of 0 disables eager scanning altogether. The default is 0.03 (3%). Note that when eager scanning is enabled, only freeze failures count against the cap, not successful freezing. Successful page freezes are capped internally at 20% of the all-visible but not all-frozen pages in the relation. Capping successful page freezes helps amortize the overhead across multiple normal vacuums and limits the potential downside of wasted eager freezes of pages that are modified again before the next aggressive vacuum. The setting can be overridden for individual tables by changing the corresponding table storage parameter. For more information on tuning vacuum's freezing behavior, see Section 24.1.5.

English manual coverage begins with PostgreSQL 7.4. Source history and runtime observations have their own recorded version boundaries.

Reading PG 18·Select a recorded version

boot val
0.03
category
Vacuuming / Freezing
context
user
doc same as
Unknown
documented
true
enumvals
Unknown
lang
en
max val
1
metadata version
18
min val
0
name
vacuum_max_eager_freeze_failure_rate
short desc
Fraction of pages in a relation vacuum can scan and fail to freeze before disabling eager scanning.
source
pg-settings-source-snapshot
unit
Unknown
vartype
real

Definition PG 18

Specifies the maximum number of pages (as a fraction of total pages in the relation) that VACUUM may scan and fail to set all-frozen in the visibility map before disabling eager scanning. A value of 0 disables eager scanning altogether. The default is 0.03 (3%).

Note that when eager scanning is enabled, only freeze failures count against the cap, not successful freezing. Successful page freezes are capped internally at 20% of the all-visible but not all-frozen pages in the relation. Capping successful page freezes helps amortize the overhead across multiple normal vacuums and limits the potential downside of wasted eager freezes of pages that are modified again before the next aggressive vacuum.

The setting can be overridden for individual tables by changing the corresponding table storage parameter. For more information on tuning vacuum's freezing behavior, see Section 24.1.5.

Compare versions

Complete source facts

doc html

<p>
        Specifies the maximum number of pages (as a fraction of total pages in
        the relation) that <code class="command">VACUUM</code> may scan and
        <span class="emphasis"><em>fail</em></span> to set all-frozen in the visibility map
        before disabling eager scanning. A value of <code class="literal">0</code>
        disables eager scanning altogether. The default is
        <code class="literal">0.03</code> (3%).
       </p><p>
        Note that when eager scanning is enabled, only freeze failures
        count against the cap, not successful freezing. Successful page
        freezes are capped internally at 20% of the all-visible but not
        all-frozen pages in the relation. Capping successful page freezes helps
        amortize the overhead across multiple normal vacuums and limits the
        potential downside of wasted eager freezes of pages that are modified
        again before the next aggressive vacuum.
       </p><p>
        The setting can be overridden for individual tables by changing the
        <a class="link" href="/docs/18/sql-createtable.html#RELOPTION-VACUUM-MAX-EAGER-FREEZE-FAILURE-RATE">
        corresponding table storage parameter</a>.
        For more information on tuning vacuum's freezing behavior,
        see <a class="xref" href="/docs/18/routine-vacuuming.html#VACUUM-FOR-WRAPAROUND" title="24.1.5. Preventing Transaction ID Wraparound Failures">Section 24.1.5</a>.
       </p>

documentation revision

{"inputs":[{"file":"runtime-config-vacuum.html","kind":"same-version-reviewed-manual","locale":"en","sha256":"599d3819c5fa60f160ba633df604ee9afd85549ffad2ae2fb0c3132a00d47417","version":"18.7"},{"file":"runtime-config-vacuum.html","kind":"same-version-reviewed-manual","locale":"zh-Hans","sha256":"b835e4b6c446cfdaf673750aba29ba28fc55ef6cc0c531558c1e394fdc05a140","version":"18.7"}],"release":"18.7","runtime_remeasured":false,"source_revision":"pgdoc:b9f0e7232f60f380d642ac9b99226606c254b552"}

extra desc

A value of 0.0 disables eager scanning and a value of 1.0 will eagerly scan up to 100 percent of the all-visible pages in the relation. If vacuum successfully freezes these pages, the cap is lower than 100 percent, because the goal is to amortize page freezing across multiple vacuums.

Source references

Full definition and evidence JSON

Definition sources

center · PostgreSQL 18 · wiki-repair-20261023:e83c049c6c441a5681d41f4a2fc4befa6dbfe2d940d4946fd8c8551f01c64384

Text language: en · wiki-repair-20261023:e83c049c6c441a5681d41f4a2fc4befa6dbfe2d940d4946fd8c8551f01c64384