{"Entry":{"collection":"relopts","key":"table-vacuum-max-eager-freeze-failure-rate","name":"vacuum_max_eager_freeze_failure_rate","aliases":["table.vacuum_max_eager_freeze_failure_rate"],"metadata":{"aliases":["table.vacuum_max_eager_freeze_failure_rate"],"category":"Tables and materialized views","content_hash":"1140ad649b2ab14925cd324d427391307a7e06b13e091800f1d2d1af9f07dcbb","derived_content_hash":"3b44ecced0554d8b8fa99ddafadd0fd14c99adcfdcd4b73c521e206ffd4e44c1","imported_at":"2026-09-30T17:44:22.271834+08:00","name":"vacuum_max_eager_freeze_failure_rate","name_zh":"vacuum_max_eager_freeze_failure_rate","repair_provenance":{"original_source_revision":"","receipt_sha256":"4e1a10a1d30aa74a9c94a95f787aaa41a7e3527858e7d4789ea10d0d9d477e25","repair":"wiki-repair-20261023"},"slug":"table-vacuum-max-eager-freeze-failure-rate","source_rev":"wiki-repair-20261023:92ad6f987fab0536fced1076aadb3c4ef3e223cabf8c1995ecd6b52de82a0414","summary":"Per-table value for vacuum_max_eager_freeze_failure_rate parameter."}},"Definition":{"Collection":"relopts","Key":"table-vacuum-max-eager-freeze-failure-rate","SourceDatabase":"center","Version":"18","SourceTable":"relopt","SourceKey":"table-vacuum-max-eager-freeze-failure-rate","SourceRevision":"eb6c2292fdf28e1b4635ab478eec3919411cdf4a6c07553387870e26201f3744","Facts":{"description":["Per-table value for vacuum_max_eager_freeze_failure_rate parameter."],"description_zh":"vacuum_max_eager_freeze_failure_rate 参数的每表取值。","description_zh_html":"\u003cdd\u003e\u003cp\u003e\n        指定 \u003ccode class=\"command\"\u003eVACUUM\u003c/code\u003e 在急切扫描模式下可以扫描但\u003cspan class=\"emphasis\"\u003e\u003cem\u003e未能\u003c/em\u003e\u003c/span\u003e在可见性映射中设置为 all-frozen 的页面数量占整个关系总页面数的比例，超过该比例后就会禁用急切扫描。值 \u003ccode class=\"literal\"\u003e0\u003c/code\u003e 表示完全禁用急切扫描。默认值为 \u003ccode class=\"literal\"\u003e0.03\u003c/code\u003e（3%）。\n       \u003c/p\u003e\u003cp\u003e\n        请注意，当急切扫描启用时，只有冻结失败才会计入上限，成功的冻结不会计入。成功冻结的页面在内部会被限制为关系中所有 all-visible 但未 all-frozen 页面数的 20%。对成功冻结页面设置上限有助于将成本分摊到多次常规清理中，并限制在下次激进清理之前页面再次被修改时急切冻结可能带来的浪费。\n       \u003c/p\u003e\u003cp\u003e\n        可以通过修改\u003ca class=\"link\" href=\"/zh/docs/18/sql-createtable.html#RELOPTION-VACUUM-MAX-EAGER-FREEZE-FAILURE-RATE\"\u003e对应的表存储参数\u003c/a\u003e为单个表覆盖该设置。关于调整清理冻结行为的更多信息，见\u003ca class=\"xref\" href=\"/zh/docs/18/routine-vacuuming.html#VACUUM-FOR-WRAPAROUND\" title=\"24.1.5. 防止事务 ID 回卷失败\"\u003e第 24.1.5 节\u003c/a\u003e。\n       \u003c/p\u003e\u003c/dd\u003e","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"},"facts":[{"label":"Applies to","value":"Tables and materialized views"},{"label":"Value type","value":"floating point"}],"manual_html":"\u003cdd\u003e\u003cp\u003e\n        Specifies the maximum number of pages (as a fraction of total pages in\n        the relation) that \u003ccode class=\"command\"\u003eVACUUM\u003c/code\u003e may scan and\n        \u003cspan class=\"emphasis\"\u003e\u003cem\u003efail\u003c/em\u003e\u003c/span\u003e to set all-frozen in the visibility map\n        before disabling eager scanning. A value of \u003ccode class=\"literal\"\u003e0\u003c/code\u003e\n        disables eager scanning altogether. The default is\n        \u003ccode class=\"literal\"\u003e0.03\u003c/code\u003e (3%).\n       \u003c/p\u003e\u003cp\u003e\n        Note that when eager scanning is enabled, only freeze failures\n        count against the cap, not successful freezing. Successful page\n        freezes are capped internally at 20% of the all-visible but not\n        all-frozen pages in the relation. Capping successful page freezes helps\n        amortize the overhead across multiple normal vacuums and limits the\n        potential downside of wasted eager freezes of pages that are modified\n        again before the next aggressive vacuum.\n       \u003c/p\u003e\u003cp\u003e\n        The setting can be overridden for individual tables by changing the\n        \u003ca class=\"link\" href=\"/docs/18/sql-createtable.html#RELOPTION-VACUUM-MAX-EAGER-FREEZE-FAILURE-RATE\"\u003e\n        corresponding table storage parameter\u003c/a\u003e.\n        For more information on tuning vacuum's freezing behavior,\n        see \u003ca class=\"xref\" href=\"/docs/18/routine-vacuuming.html#VACUUM-FOR-WRAPAROUND\" title=\"24.1.5. Preventing Transaction ID Wraparound Failures\"\u003eSection 24.1.5\u003c/a\u003e.\n       \u003c/p\u003e\u003c/dd\u003e","related":[{"label":"Global parameter vacuum_max_eager_freeze_failure_rate","url":"/wiki/guc/vacuum_max_eager_freeze_failure_rate/?v=18"},{"label":"CREATE TABLE","url":"/wiki/sql/create-table/?v=18"}],"release":{"channel":"stable","label":"18.6","major":"18","ref":"Local English manual 18.6","revision":"eb6c2292fdf28e1b4635ab478eec3919411cdf4a6c07553387870e26201f3744"},"sections":[],"signature":"WITH (vacuum_max_eager_freeze_failure_rate = value)","sources":[{"label":"PostgreSQL 18 English manual","path":"sql-createtable.html","sha256":"b4d703391fe1102d0e02bd6769bef928513eb7a5542f38f7448fc77fe69e0d5b","url":"/docs/18/sql-createtable.html#RELOPTION-VACUUM-MAX-EAGER-FREEZE-FAILURE-RATE"},{"label":"Related global parameter: vacuum_max_eager_freeze_failure_rate","path":"runtime-config-vacuum.html","sha256":"7047f1fa9138b97f1812532f8a905fa7479451dfd64655e029a7d387b20b22e4","url":"/docs/18/runtime-config-vacuum.html#GUC-VACUUM-MAX-EAGER-FREEZE-FAILURE-RATE"},{"label":"PostgreSQL 18 English manual","path":"sql-creatematerializedview.html","sha256":"bd8a6710c9f133afee191eb0ec345ef8c54bb54db2242621d8cb683c783a8b18","url":"/docs/18/sql-creatematerializedview.html"}],"translation_provenance":{"inputs":[{"kind":"current-pgdoc-translation","path":"/Users/vonng/pgsty/pgdoc/zh/18/html/sql-createtable.html","sha256":"c044586c69b191e0f39966b25811a0c70f12fe2bf5e7f640501e53d76ca8f775"},{"kind":"current-pgdoc-translation","path":"/Users/vonng/pgsty/pgdoc/zh/18/html/runtime-config-vacuum.html","sha256":"ea621aa6ed500fc56d21868a21fd313872cec24b86caf4c8f9bdfdc804b8235f"}],"kind":"same-version-pgdoc","locale":"zh-Hans","source_revision":"b1b500221dbe5437cfca004d6b04d3f6e422765d","version":"18"},"zh_from":"same-version-manual"},"ManualEvidence":{"release":{"channel":"stable","label":"18.6","major":"18","ref":"Local English manual 18.6","revision":"eb6c2292fdf28e1b4635ab478eec3919411cdf4a6c07553387870e26201f3744"},"sources":[{"label":"PostgreSQL 18 English manual","path":"sql-createtable.html","sha256":"b4d703391fe1102d0e02bd6769bef928513eb7a5542f38f7448fc77fe69e0d5b","url":"/docs/18/sql-createtable.html#RELOPTION-VACUUM-MAX-EAGER-FREEZE-FAILURE-RATE"},{"label":"Related global parameter: vacuum_max_eager_freeze_failure_rate","path":"runtime-config-vacuum.html","sha256":"7047f1fa9138b97f1812532f8a905fa7479451dfd64655e029a7d387b20b22e4","url":"/docs/18/runtime-config-vacuum.html#GUC-VACUUM-MAX-EAGER-FREEZE-FAILURE-RATE"},{"label":"PostgreSQL 18 English manual","path":"sql-creatematerializedview.html","sha256":"bd8a6710c9f133afee191eb0ec345ef8c54bb54db2242621d8cb683c783a8b18","url":"/docs/18/sql-creatematerializedview.html"}]},"MeasuredEvidence":{}},"Text":{"Collection":"relopts","Key":"table-vacuum-max-eager-freeze-failure-rate","SourceDatabase":"center","Version":"18","Locale":"en","Title":"vacuum_max_eager_freeze_failure_rate","Summary":"Per-table value for vacuum_max_eager_freeze_failure_rate parameter.","BodyHTML":"\u003cdd\u003e\u003cp\u003e\n        Specifies the maximum number of pages (as a fraction of total pages in\n        the relation) that \u003ccode\u003eVACUUM\u003c/code\u003e may scan and\n        \u003cspan\u003e\u003cem\u003efail\u003c/em\u003e\u003c/span\u003e to set all-frozen in the visibility map\n        before disabling eager scanning. A value of \u003ccode\u003e0\u003c/code\u003e\n        disables eager scanning altogether. The default is\n        \u003ccode\u003e0.03\u003c/code\u003e (3%).\n       \u003c/p\u003e\u003cp\u003e\n        Note that when eager scanning is enabled, only freeze failures\n        count against the cap, not successful freezing. Successful page\n        freezes are capped internally at 20% of the all-visible but not\n        all-frozen pages in the relation. Capping successful page freezes helps\n        amortize the overhead across multiple normal vacuums and limits the\n        potential downside of wasted eager freezes of pages that are modified\n        again before the next aggressive vacuum.\n       \u003c/p\u003e\u003cp\u003e\n        The setting can be overridden for individual tables by changing the\n        \u003ca href=\"/docs/18/sql-createtable.html#RELOPTION-VACUUM-MAX-EAGER-FREEZE-FAILURE-RATE\" rel=\"nofollow\"\u003e\n        corresponding table storage parameter\u003c/a\u003e.\n        For more information on tuning vacuum\u0026#39;s freezing behavior,\n        see \u003ca href=\"/docs/18/routine-vacuuming.html#VACUUM-FOR-WRAPAROUND\" rel=\"nofollow\"\u003eSection 24.1.5\u003c/a\u003e.\n       \u003c/p\u003e\u003c/dd\u003e","SourceRevision":"eb6c2292fdf28e1b4635ab478eec3919411cdf4a6c07553387870e26201f3744","ContentHash":"255e9d9efaef93e954bc5a55b30e305224260345f7bba06c152bcae8aaee11f3","Payload":{"description":["Per-table value for vacuum_max_eager_freeze_failure_rate parameter."],"manual_html":"\u003cdd\u003e\u003cp\u003e\n        Specifies the maximum number of pages (as a fraction of total pages in\n        the relation) that \u003ccode class=\"command\"\u003eVACUUM\u003c/code\u003e may scan and\n        \u003cspan class=\"emphasis\"\u003e\u003cem\u003efail\u003c/em\u003e\u003c/span\u003e to set all-frozen in the visibility map\n        before disabling eager scanning. A value of \u003ccode class=\"literal\"\u003e0\u003c/code\u003e\n        disables eager scanning altogether. The default is\n        \u003ccode class=\"literal\"\u003e0.03\u003c/code\u003e (3%).\n       \u003c/p\u003e\u003cp\u003e\n        Note that when eager scanning is enabled, only freeze failures\n        count against the cap, not successful freezing. Successful page\n        freezes are capped internally at 20% of the all-visible but not\n        all-frozen pages in the relation. Capping successful page freezes helps\n        amortize the overhead across multiple normal vacuums and limits the\n        potential downside of wasted eager freezes of pages that are modified\n        again before the next aggressive vacuum.\n       \u003c/p\u003e\u003cp\u003e\n        The setting can be overridden for individual tables by changing the\n        \u003ca class=\"link\" href=\"/docs/18/sql-createtable.html#RELOPTION-VACUUM-MAX-EAGER-FREEZE-FAILURE-RATE\"\u003e\n        corresponding table storage parameter\u003c/a\u003e.\n        For more information on tuning vacuum's freezing behavior,\n        see \u003ca class=\"xref\" href=\"/docs/18/routine-vacuuming.html#VACUUM-FOR-WRAPAROUND\" title=\"24.1.5. Preventing Transaction ID Wraparound Failures\"\u003eSection 24.1.5\u003c/a\u003e.\n       \u003c/p\u003e\u003c/dd\u003e","related":[{"label":"Global parameter vacuum_max_eager_freeze_failure_rate","url":"/wiki/guc/vacuum_max_eager_freeze_failure_rate/?v=18"},{"label":"CREATE TABLE","url":"/wiki/sql/create-table/?v=18"}],"sections":[]}},"RequestedLocale":"en","Fallback":false,"Versions":["18","19","20"],"Locales":["en","zh-Hans"],"Signatures":null,"Spellings":null,"SQLState":null,"Evidence":null}
