{"Entry":{"collection":"guc","key":"trace_notify","name":"trace_notify","aliases":[],"metadata":{"baseline":true,"boot_human":"Not specified","boot_val":null,"category":"Developer Options","category_zh":"","changed_in":[],"changes":[{"documentation_changed":true,"fields":{},"from":"8.4","status":"changed","to":"9.0"}],"content_hash":"05dbbb47670458d8dd737adafa94954e059051f0c004c47e46282400f2f155a0","context":"","default_changed_in":[],"default_history":[{"from":"9.0","to":"19","value":"off"}],"derived_content_hash":"b38f30e8e022d9f7cb98a1d436f5b058c248a150fe86bd67bdfd550c5ff148e1","documentation_refresh":{"batch":"20261113","original_source_rev":"wiki-repair-20261023:677b64963eda6275425be2dee6a093615870988b2eacf3ab2324d2fe683dfec6","versions":{"14":"14.25","15":"15.20","16":"16.16","17":"17.12","18":"18.7","19":"19rc2"}},"editorial":{"advice":{"olap":"Long analytical runs can amplify trace_notify's debug overhead and artifacts. Prefer standard EXPLAIN and statistics first, and isolate any developer experiment from normal users.","oltp":"Do not tune production OLTP with trace_notify. Enable it only for a bounded reproduction with an owner, log/disk budget, rollback condition, and evidence-capture plan; restore the default immediately afterward.","small":"Keep trace_notify at its upstream default. A small host has less spare CPU, disk, connection, and log capacity for developer instrumentation."},"mechanism":["trace_notify emits extensive internal debugging messages for LISTEN and NOTIFY. Output is visible only when client_min_messages or log_min_messages includes DEBUG1 or lower.","It traces implementation activity rather than providing a durable audit of notification payloads. The extra messages can be much larger than the application notification stream.","Use it to reproduce queue and delivery bugs in a controlled session. Queue capacity and cleanup are governed separately by max_notify_queue_pages and listener transaction behavior. Its user context permits session- or transaction-local changes; newly performed or newly planned work sees the value."],"pitfalls":["Leaving trace_notify enabled after the bounded diagnostic or recovery task.","Running the experiment on the only copy of production data.","Underestimating log, core-file, temporary-file, WAL, CPU, or connection-slot amplification.","Treating a server that merely starts or completes a query as proof that data and behavior are correct."],"references":[{"title":"PostgreSQL 19 Beta 4: trace_notify","url":"https://www.postgresql.org/docs/19/runtime-config-developer.html#GUC-TRACE-NOTIFY"},{"title":"PostgreSQL 19 release notes","url":"https://www.postgresql.org/docs/19/release-19.html"}],"related":["max_notify_queue_pages","notify_buffers","client_min_messages","log_min_messages","track_activities"],"summary":"trace_notify — Generates debugging output for LISTEN and NOTIFY. Observed in PG9.0–19 Beta 4; its last measured boot default is off in PG19 Beta 4, with user context. This is a beta-snapshot fact and can change before PostgreSQL 19 GA."},"enumvals":[],"first_version":"7.4","group":"Developer Options","group_slug":"developer","imported_at":"2026-09-27T17:57:32.188879+08:00","intro_commit":{},"key":"trace_notify","last_version":"20","max_val":"","min_val":"","name":"trace_notify","position":421,"present_in":["7.4","8.0","8.1","8.2","8.3","8.4","9.0","9.1","9.2","9.3","9.4","9.5","9.6","10","11","12","13","14","15","16","17","18","19","20"],"repair_provenance":{"original_source_revision":"wiki-repair-20261023:699430a5a58879ce741988a60d8e543814d52c165208dfc0ab6fa3debdf0d68b","receipt_sha256":"ba8be245567515742faa0163ae15beea510e7b1d53c2e7246a94ec42c4f219f6","repair":"wiki-repair-20261023"},"short_desc":"Generates a great amount of debugging output for the LISTEN and NOTIFY commands.","short_desc_zh":"","source_rev":"wiki-repair-20261023:677b64963eda6275425be2dee6a093615870988b2eacf3ab2324d2fe683dfec6","unit":"","vartype":"bool"}},"Definition":{"Collection":"guc","Key":"trace_notify","SourceDatabase":"center","Version":"18","SourceTable":"guc","SourceKey":"trace_notify","SourceRevision":"wiki-repair-20261023:677b64963eda6275425be2dee6a093615870988b2eacf3ab2324d2fe683dfec6","Facts":{"boot_val":"off","category":"Developer Options","context":"user","description":"Generates a great amount of debugging output for the LISTEN and NOTIFY commands. client_min_messages or log_min_messages must be DEBUG1 or lower to send this output to the client or server logs, respectively.","description_zh":"为 LISTEN 和 NOTIFY 命令生成大量调试输出。client_min_messages 或 log_min_messages 必须是 DEBUG1 或者更低才能把这种输出分别发送到客户端或者服务器日志。","description_zh_html":"\u003cp\u003e\n        为 \u003ccode class=\"command\"\u003eLISTEN\u003c/code\u003e 和 \u003ccode class=\"command\"\u003eNOTIFY\u003c/code\u003e 命令生成大量调试输出。\u003ca class=\"xref\" href=\"/zh/docs/18/runtime-config-client.html#GUC-CLIENT-MIN-MESSAGES\"\u003eclient_min_messages\u003c/a\u003e 或 \u003ca class=\"xref\" href=\"/zh/docs/18/runtime-config-logging.html#GUC-LOG-MIN-MESSAGES\"\u003elog_min_messages\u003c/a\u003e 必须是 \u003ccode class=\"literal\"\u003eDEBUG1\u003c/code\u003e 或者更低才能把这种输出分别发送到客户端或者服务器日志。\n       \u003c/p\u003e","doc":{"anchor":"GUC-TRACE-NOTIFY","file":"runtime-config-developer.html","lang":"en","sha256":"a3f6a107ed6ba4edaf6df03e52f4a469bd09350d545e4ff419e62844025ec1cf","slug":"18"},"doc_html":"\u003cp\u003e\n        Generates a great amount of debugging output for the\n        \u003ccode class=\"command\"\u003eLISTEN\u003c/code\u003e and \u003ccode class=\"command\"\u003eNOTIFY\u003c/code\u003e\n        commands.  \u003ca class=\"xref\" href=\"/docs/18/runtime-config-client.html#GUC-CLIENT-MIN-MESSAGES\"\u003eclient_min_messages\u003c/a\u003e or\n        \u003ca class=\"xref\" href=\"/docs/18/runtime-config-logging.html#GUC-LOG-MIN-MESSAGES\"\u003elog_min_messages\u003c/a\u003e must be\n        \u003ccode class=\"literal\"\u003eDEBUG1\u003c/code\u003e or lower to send this output to the\n        client or server logs, respectively.\n       \u003c/p\u003e","doc_same_as":"","documentation_revision":{"inputs":[{"file":"runtime-config-developer.html","kind":"same-version-reviewed-manual","locale":"en","sha256":"a3f6a107ed6ba4edaf6df03e52f4a469bd09350d545e4ff419e62844025ec1cf","version":"18.7"},{"file":"runtime-config-developer.html","kind":"same-version-reviewed-manual","locale":"zh-Hans","sha256":"e7e22aa5738a1d376b84af1adca796c5e14746266733f925eb50c3ef86a50655","version":"18.7"}],"release":"18.7","runtime_remeasured":false,"source_revision":"pgdoc:b9f0e7232f60f380d642ac9b99226606c254b552"},"documented":true,"enumvals":null,"extra_desc":null,"lang":"en","max_val":null,"metadata_version":"18","min_val":null,"name":"trace_notify","short_desc":"Generates debugging output for LISTEN and NOTIFY.","source":"pg-settings-source-snapshot","translation_provenance":{"inputs":[{"kind":"current-pgdoc-translation","path":"/Users/vonng/pgsty/pgdoc/zh/18/html/runtime-config-developer.html","sha256":"3c08bf624188bbb0733dc7854e61c0c251c2578311ac3dc8fa626ab21b7911d1"}],"kind":"same-version-pgdoc","locale":"zh-Hans","source_revision":"b1b500221dbe5437cfca004d6b04d3f6e422765d","version":"18"},"unit":null,"vartype":"bool","zh_from":"same-version-manual"},"ManualEvidence":{"doc":{"anchor":"GUC-TRACE-NOTIFY","file":"runtime-config-developer.html","lang":"en","sha256":"a3f6a107ed6ba4edaf6df03e52f4a469bd09350d545e4ff419e62844025ec1cf","slug":"18"}},"MeasuredEvidence":{"metadata_version":"18"}},"Text":{"Collection":"guc","Key":"trace_notify","SourceDatabase":"center","Version":"18","Locale":"en","Title":"trace_notify","Summary":"Generates a great amount of debugging output for the LISTEN and NOTIFY commands. client_min_messages or log_min_messages must be DEBUG1 or lower to send this output to the client or server logs, respectively.","BodyHTML":"\u003cp\u003e\n        Generates a great amount of debugging output for the\n        \u003ccode\u003eLISTEN\u003c/code\u003e and \u003ccode\u003eNOTIFY\u003c/code\u003e\n        commands.  \u003ca href=\"/docs/18/runtime-config-client.html#GUC-CLIENT-MIN-MESSAGES\" rel=\"nofollow\"\u003eclient_min_messages\u003c/a\u003e or\n        \u003ca href=\"/docs/18/runtime-config-logging.html#GUC-LOG-MIN-MESSAGES\" rel=\"nofollow\"\u003elog_min_messages\u003c/a\u003e must be\n        \u003ccode\u003eDEBUG1\u003c/code\u003e or lower to send this output to the\n        client or server logs, respectively.\n       \u003c/p\u003e","SourceRevision":"wiki-repair-20261023:677b64963eda6275425be2dee6a093615870988b2eacf3ab2324d2fe683dfec6","ContentHash":"9a729eb5b111303f6171d7532329ae4f7546b1cab841b6c72a66cfe7c00df636","Payload":{"description":"Generates a great amount of debugging output for the LISTEN and NOTIFY commands. client_min_messages or log_min_messages must be DEBUG1 or lower to send this output to the client or server logs, respectively."}},"RequestedLocale":"en","Fallback":false,"Versions":["10","11","12","13","14","15","16","17","18","19","20","7.4","8.0","8.1","8.2","8.3","8.4","9.0","9.1","9.2","9.3","9.4","9.5","9.6"],"Locales":["en","zh-Hans"],"Signatures":null,"Spellings":null,"SQLState":null,"Evidence":null}
