{"kind": "relopts", "major": "18", "item": {"slug": "toast-vacuum-max-eager-freeze-failure-rate", "name": "toast.vacuum_max_eager_freeze_failure_rate", "name_zh": "TOAST vacuum_max_eager_freeze_failure_rate", "category": "TOAST tables", "summary": "Per-table value for vacuum_max_eager_freeze_failure_rate parameter.", "aliases": ["vacuum_max_eager_freeze_failure_rate"], "versions": {"18": {"facts": [{"label": "Applies to", "value": "TOAST tables"}, {"label": "Value type", "value": "floating point"}], "related": [{"url": "/docs/relopts/table-vacuum-max-eager-freeze-failure-rate/?v=18", "label": "Table option vacuum_max_eager_freeze_failure_rate"}, {"url": "/docs/guc/vacuum_max_eager_freeze_failure_rate/?v=18", "label": "Global parameter vacuum_max_eager_freeze_failure_rate"}, {"url": "/docs/sql/create-table/?v=18", "label": "CREATE TABLE"}], "release": {"ref": "Local English manual 18.6", "label": "18.6", "major": "18", "channel": "stable", "revision": "eb6c2292fdf28e1b4635ab478eec3919411cdf4a6c07553387870e26201f3744"}, "sources": [{"url": "/docs/18/sql-createtable.html#RELOPTION-VACUUM-MAX-EAGER-FREEZE-FAILURE-RATE", "path": "sql-createtable.html", "label": "PostgreSQL 18 English manual", "sha256": "b4d703391fe1102d0e02bd6769bef928513eb7a5542f38f7448fc77fe69e0d5b"}, {"url": "/docs/18/runtime-config-vacuum.html#GUC-VACUUM-MAX-EAGER-FREEZE-FAILURE-RATE", "path": "runtime-config-vacuum.html", "label": "Related global parameter: vacuum_max_eager_freeze_failure_rate", "sha256": "7047f1fa9138b97f1812532f8a905fa7479451dfd64655e029a7d387b20b22e4"}, {"url": "/docs/18/sql-creatematerializedview.html", "path": "sql-creatematerializedview.html", "label": "PostgreSQL 18 English manual", "sha256": "bd8a6710c9f133afee191eb0ec345ef8c54bb54db2242621d8cb683c783a8b18"}], "sections": [{"title": "TOAST inheritance", "paragraphs": ["This option applies to the associated TOAST table. Set it with the toast. prefix in WITH or ALTER TABLE SET. An unset TOAST option inherits the corresponding explicitly set parent-table option.", "The manual describes table and TOAST forms together. Autoanalyze does not apply to TOAST tables; only explicitly documented toast. forms are listed here."]}, {"title": "Common table storage rules", "paragraphs": ["The WITH clause can specify storage parameters for tables, and for indexes associated with a UNIQUE , PRIMARY KEY , or EXCLUDE constraint. Storage parameters for indexes are documented in CREATE INDEX . The storage parameters currently available for tables are listed below. For many of these parameters, as shown, there is an additional parameter with the same name prefixed with toast. , which controls the behavior of the table's secondary TOAST table, if any (see Section 66.2 for more information about TOAST). If a table parameter value is set and the equivalent toast. parameter is not, the TOAST table will use the table's parameter value. Specifying these parameters for partitioned tables is not supported, but you may specify them for individual leaf partitions."]}, {"title": "Materialized views", "paragraphs": ["This clause specifies optional storage parameters for the new materialized view; see Storage Parameters in the CREATE TABLE documentation for more information. All parameters supported for CREATE TABLE are also supported for CREATE MATERIALIZED VIEW . See CREATE TABLE for more information."]}, {"title": "Related global parameter: vacuum_max_eager_freeze_failure_rate", "paragraphs": ["The following same-version GUC definition explains its purpose and units. Global defaults and activation rules describe the GUC; the relation-option override rules remain those above.", "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.", "This parameter can only be set in the postgresql.conf file or on the server command line; but 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 ."]}], "signature": "WITH (toast.vacuum_max_eager_freeze_failure_rate = value)", "description": ["Per-table value for vacuum_max_eager_freeze_failure_rate parameter."]}, "19": {"facts": [{"label": "Applies to", "value": "TOAST tables"}, {"label": "Value type", "value": "floating point"}], "related": [{"url": "/docs/relopts/table-vacuum-max-eager-freeze-failure-rate/?v=19", "label": "Table option vacuum_max_eager_freeze_failure_rate"}, {"url": "/docs/guc/vacuum_max_eager_freeze_failure_rate/?v=19", "label": "Global parameter vacuum_max_eager_freeze_failure_rate"}, {"url": "/docs/sql/create-table/?v=19", "label": "CREATE TABLE"}], "release": {"ref": "Local English manual 19 beta 4", "label": "19 beta 4", "major": "19", "channel": "preview", "revision": "df6d20830d1a09734a2db6ffc3a6138ce80e669294e56a30f6b5d4a89d81aef1"}, "sources": [{"url": "/docs/19/sql-createtable.html#RELOPTION-VACUUM-MAX-EAGER-FREEZE-FAILURE-RATE", "path": "sql-createtable.html", "label": "PostgreSQL 19 English manual", "sha256": "75f290d105bd0e76c798f124b1eed4ad1e871c8a1d36c35f0db9d38fbb7209f8"}, {"url": "/docs/19/runtime-config-vacuum.html#GUC-VACUUM-MAX-EAGER-FREEZE-FAILURE-RATE", "path": "runtime-config-vacuum.html", "label": "Related global parameter: vacuum_max_eager_freeze_failure_rate", "sha256": "b4467324eaf7f51ab3a3086893b4db67d319aa05eb2cc51a6646a2085ff2b78e"}, {"url": "/docs/19/sql-creatematerializedview.html", "path": "sql-creatematerializedview.html", "label": "PostgreSQL 19 English manual", "sha256": "83626ff1539571da05619161c2d806590cac53ae060cea60018c6f63c6c02bf6"}], "sections": [{"title": "TOAST inheritance", "paragraphs": ["This option applies to the associated TOAST table. Set it with the toast. prefix in WITH or ALTER TABLE SET. An unset TOAST option inherits the corresponding explicitly set parent-table option.", "The manual describes table and TOAST forms together. Autoanalyze does not apply to TOAST tables; only explicitly documented toast. forms are listed here."]}, {"title": "Common table storage rules", "paragraphs": ["The WITH clause can specify storage parameters for tables, and for indexes associated with a UNIQUE , PRIMARY KEY , or EXCLUDE constraint. Storage parameters for indexes are documented in CREATE INDEX . The storage parameters currently available for tables are listed below. For many of these parameters, as shown, there is an additional parameter with the same name prefixed with toast. , which controls the behavior of the table's secondary TOAST table, if any (see Section 66.2 for more information about TOAST). If a table parameter value is set and the equivalent toast. parameter is not, the TOAST table will use the table's parameter value. Specifying these parameters for partitioned tables is not supported, but you may specify them for individual leaf partitions."]}, {"title": "Materialized views", "paragraphs": ["This clause specifies optional storage parameters for the new materialized view; see Storage Parameters in the CREATE TABLE documentation for more information. All parameters supported for CREATE TABLE are also supported for CREATE MATERIALIZED VIEW . See CREATE TABLE for more information."]}, {"title": "Related global parameter: vacuum_max_eager_freeze_failure_rate", "paragraphs": ["The following same-version GUC definition explains its purpose and units. Global defaults and activation rules describe the GUC; the relation-option override rules remain those above.", "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.", "This parameter can only be set in the postgresql.conf file or on the server command line; but 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 ."]}], "signature": "WITH (toast.vacuum_max_eager_freeze_failure_rate = value)", "description": ["Per-table value for vacuum_max_eager_freeze_failure_rate parameter."]}, "20": {"facts": [{"label": "Applies to", "value": "TOAST tables"}, {"label": "Value type", "value": "floating point"}], "related": [{"url": "/docs/relopts/table-vacuum-max-eager-freeze-failure-rate/?v=20", "label": "Table option vacuum_max_eager_freeze_failure_rate"}, {"url": "/docs/guc/vacuum_max_eager_freeze_failure_rate/?v=20", "label": "Global parameter vacuum_max_eager_freeze_failure_rate"}, {"url": "/docs/sql/create-table/?v=20", "label": "CREATE TABLE"}], "release": {"ref": "2c10c2ce4d7bcd57543a49ab402af02a39724e0a", "label": "20 devel", "major": "20", "channel": "devel", "revision": "ca199fbaaf6c4bd29cd5a98beaf34d9f4141c15d2f94d1d0202f3204ef18d09f"}, "sources": [{"url": "/docs/devel/sql-createtable.html#RELOPTION-VACUUM-MAX-EAGER-FREEZE-FAILURE-RATE", "path": "sql-createtable.html", "label": "PostgreSQL 20 English manual", "sha256": "5241bd673de4e7a8fec7db6fa2a3a50d8368965206170725c4efd15d64c3fbf2"}, {"url": "/docs/devel/runtime-config-vacuum.html#GUC-VACUUM-MAX-EAGER-FREEZE-FAILURE-RATE", "path": "runtime-config-vacuum.html", "label": "Related global parameter: vacuum_max_eager_freeze_failure_rate", "sha256": "30e406323d744a69a54900ecb606fcabcf5c63c344644b82f72a45f8e0d9265d"}, {"url": "/docs/devel/sql-creatematerializedview.html", "path": "sql-creatematerializedview.html", "label": "PostgreSQL 20 English manual", "sha256": "2870e714f1d3ef3bb692310424bb0e8fc1905c7b4a46317c5be883c70daa90c2"}], "sections": [{"title": "TOAST inheritance", "paragraphs": ["This option applies to the associated TOAST table. Set it with the toast. prefix in WITH or ALTER TABLE SET. An unset TOAST option inherits the corresponding explicitly set parent-table option.", "The manual describes table and TOAST forms together. Autoanalyze does not apply to TOAST tables; only explicitly documented toast. forms are listed here."]}, {"title": "Common table storage rules", "paragraphs": ["The WITH clause can specify storage parameters for tables, and for indexes associated with a UNIQUE , PRIMARY KEY , or EXCLUDE constraint. Storage parameters for indexes are documented in CREATE INDEX . The storage parameters currently available for tables are listed below. For many of these parameters, as shown, there is an additional parameter with the same name prefixed with toast. , which controls the behavior of the table's secondary TOAST table, if any (see Section 66.2 for more information about TOAST). If a table parameter value is set and the equivalent toast. parameter is not, the TOAST table will use the table's parameter value. Specifying these parameters for partitioned tables is not supported, but you may specify them for individual leaf partitions."]}, {"title": "Materialized views", "paragraphs": ["This clause specifies optional storage parameters for the new materialized view; see Storage Parameters in the CREATE TABLE documentation for more information. All parameters supported for CREATE TABLE are also supported for CREATE MATERIALIZED VIEW . See CREATE TABLE for more information."]}, {"title": "Related global parameter: vacuum_max_eager_freeze_failure_rate", "paragraphs": ["The following same-version GUC definition explains its purpose and units. Global defaults and activation rules describe the GUC; the relation-option override rules remain those above.", "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.", "This parameter can only be set in the postgresql.conf file or on the server command line; but 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 ."]}], "signature": "WITH (toast.vacuum_max_eager_freeze_failure_rate = value)", "description": ["Per-table value for vacuum_max_eager_freeze_failure_rate parameter."]}}, "content_hash": "e187a0592ed5e4a84ea1f833a6da7804470ec47937b397f22cec3f59d385ee65", "imported_at": "2026-09-27T09:57:59.028"}, "snapshot": {"facts": [{"label": "Applies to", "value": "TOAST tables"}, {"label": "Value type", "value": "floating point"}], "related": [{"url": "/docs/relopts/table-vacuum-max-eager-freeze-failure-rate/?v=18", "label": "Table option vacuum_max_eager_freeze_failure_rate"}, {"url": "/docs/guc/vacuum_max_eager_freeze_failure_rate/?v=18", "label": "Global parameter vacuum_max_eager_freeze_failure_rate"}, {"url": "/docs/sql/create-table/?v=18", "label": "CREATE TABLE"}], "release": {"ref": "Local English manual 18.6", "label": "18.6", "major": "18", "channel": "stable", "revision": "eb6c2292fdf28e1b4635ab478eec3919411cdf4a6c07553387870e26201f3744"}, "sources": [{"url": "/docs/18/sql-createtable.html#RELOPTION-VACUUM-MAX-EAGER-FREEZE-FAILURE-RATE", "path": "sql-createtable.html", "label": "PostgreSQL 18 English manual", "sha256": "b4d703391fe1102d0e02bd6769bef928513eb7a5542f38f7448fc77fe69e0d5b"}, {"url": "/docs/18/runtime-config-vacuum.html#GUC-VACUUM-MAX-EAGER-FREEZE-FAILURE-RATE", "path": "runtime-config-vacuum.html", "label": "Related global parameter: vacuum_max_eager_freeze_failure_rate", "sha256": "7047f1fa9138b97f1812532f8a905fa7479451dfd64655e029a7d387b20b22e4"}, {"url": "/docs/18/sql-creatematerializedview.html", "path": "sql-creatematerializedview.html", "label": "PostgreSQL 18 English manual", "sha256": "bd8a6710c9f133afee191eb0ec345ef8c54bb54db2242621d8cb683c783a8b18"}], "sections": [{"title": "TOAST inheritance", "paragraphs": ["This option applies to the associated TOAST table. Set it with the toast. prefix in WITH or ALTER TABLE SET. An unset TOAST option inherits the corresponding explicitly set parent-table option.", "The manual describes table and TOAST forms together. Autoanalyze does not apply to TOAST tables; only explicitly documented toast. forms are listed here."]}, {"title": "Common table storage rules", "paragraphs": ["The WITH clause can specify storage parameters for tables, and for indexes associated with a UNIQUE , PRIMARY KEY , or EXCLUDE constraint. Storage parameters for indexes are documented in CREATE INDEX . The storage parameters currently available for tables are listed below. For many of these parameters, as shown, there is an additional parameter with the same name prefixed with toast. , which controls the behavior of the table's secondary TOAST table, if any (see Section 66.2 for more information about TOAST). If a table parameter value is set and the equivalent toast. parameter is not, the TOAST table will use the table's parameter value. Specifying these parameters for partitioned tables is not supported, but you may specify them for individual leaf partitions."]}, {"title": "Materialized views", "paragraphs": ["This clause specifies optional storage parameters for the new materialized view; see Storage Parameters in the CREATE TABLE documentation for more information. All parameters supported for CREATE TABLE are also supported for CREATE MATERIALIZED VIEW . See CREATE TABLE for more information."]}, {"title": "Related global parameter: vacuum_max_eager_freeze_failure_rate", "paragraphs": ["The following same-version GUC definition explains its purpose and units. Global defaults and activation rules describe the GUC; the relation-option override rules remain those above.", "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.", "This parameter can only be set in the postgresql.conf file or on the server command line; but 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 ."]}], "signature": "WITH (toast.vacuum_max_eager_freeze_failure_rate = value)", "description": ["Per-table value for vacuum_max_eager_freeze_failure_rate parameter."]}, "comparison": {"left": "17", "right": "18", "status": "added", "diff": "--- PostgreSQL 17\n+++ PostgreSQL 18\n@@ -1 +1,14 @@\n-Not recorded in this version\n+{\n+  \"facts\": [\n+    {\n+      \"label\": \"Applies to\",\n+      \"value\": \"TOAST tables\"\n+    },\n+    {\n+      \"label\": \"Value type\",\n+      \"value\": \"floating point\"\n+    }\n+  ],\n+  \"signature\": \"WITH (toast.vacuum_max_eager_freeze_failure_rate = value)\",\n+  \"tables\": null\n+}"}}