{"Entry":{"collection":"guc","key":"huge_pages_status","name":"huge_pages_status","aliases":[],"metadata":{"baseline":false,"boot_human":"Not specified","boot_val":null,"category":"Preset Options","category_zh":"","changed_in":[],"changes":[{"documentation_changed":false,"fields":{},"from":"16","status":"added","to":"17"}],"content_hash":"5aeb310a8c2669df5c6e742f9c6394a40f81d3a4222a3ce8eb198aa5b7c69de9","context":"","default_changed_in":[],"default_history":[{"from":"17","to":"19","value":"unknown"}],"editorial":{"advice":{"olap":"Large shared memory can need many huge pages. Reserve the pool with headroom for the real shared_memory_size and verify NUMA placement and restart behavior on each node.","oltp":"Not tunable directly. If on was requested but status is off, check huge_pages policy, OS support, pool size, permissions, and startup logs; resize the OS pool before restarting.","small":"Keep huge_pages=try unless the platform policy says otherwise. Do not reserve a large OS huge-page pool merely to make the status on for a small shared-memory area."},"mechanism":["Reports whether the main shared-memory area actually uses explicit huge pages. It is an internal, read-only startup result with values off, on, or unknown.","The result is derived after applying huge_pages and attempting startup allocation against operating-system support and the available huge-page pool. It is not fixed by the PostgreSQL binary or initdb.","Use shared_memory_size_in_huge_pages to estimate the required pool and compare huge_pages_status with the requested huge_pages policy after every restart. Transparent Huge Pages are a separate operating-system mechanism."],"pitfalls":["Trying to SET a read-only startup result.","Confusing huge_pages_status with the configured huge_pages request.","Ignoring a too-small operating-system huge-page pool or startup allocation failure.","Confusing explicit PostgreSQL huge pages with Transparent Huge Pages.","Assuming a status from one node applies to failover nodes with different OS configuration."],"references":[{"title":"PostgreSQL 19 Beta 4: huge_pages_status","url":"https://www.postgresql.org/docs/19/runtime-config-preset.html#GUC-HUGE-PAGES-STATUS"},{"title":"PostgreSQL 19 release notes","url":"https://www.postgresql.org/docs/19/release-19.html"}],"related":["huge_pages","shared_memory_size_in_huge_pages","shared_memory_size","shared_buffers","min_dynamic_shared_memory","dynamic_shared_memory_type"],"summary":"huge_pages_status indicates the status of huge pages. It is read-only metadata in PG17–18, not a runtime tuning control."},"enumvals":[],"first_version":"17","group":"Preset Options","group_slug":"preset","imported_at":"2026-09-27T17:57:31.365915+08:00","intro_commit":{"authored_at":"2023-07-06T14:42:36+09:00","discussion":["https://postgr.es/m/TU4PR8401MB1152EBB0D271F827E2E37A01EECC9@TU4PR8401MB1152.NAMPRD84.PROD.OUTLOOK.COM"],"hash":"a14354cac0e32d5e169c1ea4225845f93922d483","subject":"Add GUC parameter \"huge_pages_status\"","url":"https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=a14354cac0e32d5e169c1ea4225845f93922d483"},"key":"huge_pages_status","last_version":"20","max_val":"","min_val":"","name":"huge_pages_status","position":170,"present_in":["17","18","19","20"],"short_desc":"Reports the state of huge pages in the current instance: on, off, or unknown (if displayed with postgres -C).","short_desc_zh":"","source_rev":"english-manuals:866431b2979789325846e08841ee5535ca286dee965e0e2358fcde33fad4dfc8","unit":"","vartype":"enum"}},"Definition":{"Collection":"guc","Key":"huge_pages_status","SourceDatabase":"center","Version":"18","SourceTable":"guc","SourceKey":"huge_pages_status","SourceRevision":"english-manuals:866431b2979789325846e08841ee5535ca286dee965e0e2358fcde33fad4dfc8","Facts":{"boot_val":"unknown","category":"Preset Options","context":"internal","description":"Reports the state of huge pages in the current instance: on, off, or unknown (if displayed with postgres -C). This parameter is useful to determine whether allocation of huge pages was successful under huge_pages=try. See huge_pages for more information.","doc":{"anchor":"GUC-HUGE-PAGES-STATUS","file":"runtime-config-preset.html","lang":"en","sha256":"4dbfec727b9cee838adefb8a766217748d91ab90190b452a58cec737459582ce","slug":"18"},"documented":true,"enumvals":["off","on","unknown"],"extra_desc":null,"lang":"en","max_val":null,"metadata_version":"18","min_val":null,"name":"huge_pages_status","short_desc":"Indicates the status of huge pages.","source":"pg-settings-source-snapshot","unit":null,"vartype":"enum"},"ManualEvidence":{"doc":{"anchor":"GUC-HUGE-PAGES-STATUS","file":"runtime-config-preset.html","lang":"en","sha256":"4dbfec727b9cee838adefb8a766217748d91ab90190b452a58cec737459582ce","slug":"18"}},"MeasuredEvidence":{"metadata_version":"18"}},"Text":{"Collection":"guc","Key":"huge_pages_status","SourceDatabase":"pgweb","Version":"18","Locale":"zh-Hans","Title":"huge_pages_status","Summary":"","BodyHTML":"\u003cp\u003e报告当前实例中大页的状态：\u003ccode\u003eon\u003c/code\u003e、\u003ccode\u003eoff\u003c/code\u003e 或 \u003ccode\u003eunknown\u003c/code\u003e（当通过\u003ccode\u003epostgres -C\u003c/code\u003e查看时）。这个参数有助于确定在\u003ccode\u003ehuge_pages=try\u003c/code\u003e时分配大页是否成功。更多信息参见\u003ca href=\"/docs/18/runtime-config-resource.html#GUC-HUGE-PAGES\" rel=\"nofollow\"\u003ehuge_pages\u003c/a\u003e。\u003c/p\u003e","SourceRevision":"2026-09-11@29c86d9","ContentHash":"0cbd2a15bea6b323052732d3f3be020f8fcf586e9f793406d943868181048575","Payload":{"carried_from":"","carry_reason":"","doc_html":"\u003cp\u003e报告当前实例中大页的状态：\u003ccode class=\"literal\"\u003eon\u003c/code\u003e、\u003ccode class=\"literal\"\u003eoff\u003c/code\u003e 或 \u003ccode class=\"literal\"\u003eunknown\u003c/code\u003e（当通过\u003ccode class=\"literal\"\u003epostgres -C\u003c/code\u003e查看时）。这个参数有助于确定在\u003ccode class=\"literal\"\u003ehuge_pages=try\u003c/code\u003e时分配大页是否成功。更多信息参见\u003ca href=\"/docs/18/runtime-config-resource.html#GUC-HUGE-PAGES\"\u003ehuge_pages\u003c/a\u003e。\u003c/p\u003e","doc_same_as":""}},"RequestedLocale":"zh-Hans","Fallback":false,"Versions":["17","18","19","20"],"Locales":["en","zh-Hans"],"Signatures":null,"Spellings":null,"SQLState":null,"Evidence":null}
