{"Entry":{"collection":"guc","key":"icu_validation_level","name":"icu_validation_level","aliases":[],"metadata":{"baseline":false,"boot_human":"Not specified","boot_val":null,"category":"Client Connection Defaults / Locale and Formatting","category_zh":"","changed_in":[],"changes":[{"documentation_changed":false,"fields":{},"from":"15","status":"added","to":"16"}],"content_hash":"b71b8236bf9ce9452335b8b48904dfd3344cac5ed84f483fada9c1d02cd7d1b9","context":"","default_changed_in":[],"default_history":[{"from":"16","to":"19","value":"warning"}],"editorial":{"advice":{"olap":"Use the same validation policy for analytical object creation; lowering the level can let inconsistent locale metadata spread into reproducible jobs.","oltp":"Keep icu_validation_level at WARNING so malformed locale identifiers are visible. Raise it to ERROR only in a migration gate that has already cleaned existing inputs.","small":"Do not tune it for capacity. Preserve WARNING unless a controlled compatibility issue requires temporary lower-severity reporting."},"mechanism":["icu_validation_level sets the log level for reporting invalid ICU locale strings. The setting changes how invalid ICU locale identifiers are reported, including the option to suppress reporting or escalate it to an error.","icu_validation_level is a USER-context setting. An authorized role can change it for a session, while ALTER ROLE or ALTER DATABASE can establish a default for future sessions.","It changes representation, parsing, or locale behavior at the client boundary rather than physical storage. Coordinate it with the other locale and formatting settings and with driver-native binary or typed protocols."],"pitfalls":["Changing icu_validation_level in one session and assuming role defaults, database defaults, or other pooled sessions changed with it.","Assuming a presentation setting changes stored values or server-side type semantics.","Changing a role or database default without testing text-parsing clients, exports, and pooled sessions.","Changing icu_validation_level globally without a rollback plan and a client or operational compatibility test."],"references":[{"title":"PostgreSQL 19 Beta 4: icu_validation_level","url":"https://www.postgresql.org/docs/19/runtime-config-client.html#GUC-ICU-VALIDATION-LEVEL"},{"title":"PostgreSQL 19 release notes","url":"https://www.postgresql.org/docs/19/release-19.html"}],"related":["client_encoding","lc_messages","lc_monetary","lc_numeric","lc_time","default_text_search_config"],"summary":"icu_validation_level is the PostgreSQL setting that defines the log level for reporting invalid ICU locale strings."},"enumvals":[],"first_version":"16","group":"Client Connection Defaults","group_slug":"client","imported_at":"2026-09-27T17:57:31.368387+08:00","intro_commit":{"authored_at":"2023-03-28T16:15:59-07:00","discussion":["https://postgr.es/m/11b1eeb7e7667fdd4178497aeb796c48d26e69b9.camel@j-davis.com","https://postgr.es/m/df2efad0cae7c65180df8e5ebb709e5eb4f2a82b.camel@j-davis.com"],"hash":"1671f990dd669c0b72e45c7bef0fd579a10676ed","subject":"Validate ICU locales.","url":"https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=1671f990dd669c0b72e45c7bef0fd579a10676ed"},"key":"icu_validation_level","last_version":"20","max_val":"","min_val":"","name":"icu_validation_level","position":171,"present_in":["16","17","18","19","20"],"short_desc":"When ICU locale validation problems are encountered, controls which message level is used to report the problem.","short_desc_zh":"","source_rev":"english-manuals:315cfbf06d721e41d0728493dc52f8abfa2aaa45c0be049aba0b72fb9b4d73de","unit":"","vartype":"enum"}},"Definition":{"Collection":"guc","Key":"icu_validation_level","SourceDatabase":"center","Version":"18","SourceTable":"guc","SourceKey":"icu_validation_level","SourceRevision":"english-manuals:315cfbf06d721e41d0728493dc52f8abfa2aaa45c0be049aba0b72fb9b4d73de","Facts":{"boot_val":"warning","category":"Client Connection Defaults / Locale and Formatting","context":"user","description":"When ICU locale validation problems are encountered, controls which message level is used to report the problem. Valid values are DISABLED, DEBUG5, DEBUG4, DEBUG3, DEBUG2, DEBUG1, INFO, NOTICE, WARNING, ERROR, and LOG. If set to DISABLED, does not report validation problems at all. Otherwise reports problems at the given message level. The default is WARNING.","doc":{"anchor":"GUC-ICU-VALIDATION-LEVEL","file":"runtime-config-client.html","lang":"en","sha256":"6be6cc70f29eca4695dc43b2b2b94c75b7e0eaaa2c00273d7a98488917a7edb7","slug":"18"},"documented":true,"enumvals":["disabled","debug5","debug4","debug3","debug2","debug1","log","notice","warning","error"],"extra_desc":null,"lang":"en","max_val":null,"metadata_version":"18","min_val":null,"name":"icu_validation_level","short_desc":"Log level for reporting invalid ICU locale strings.","source":"pg-settings-source-snapshot","unit":null,"vartype":"enum"},"ManualEvidence":{"doc":{"anchor":"GUC-ICU-VALIDATION-LEVEL","file":"runtime-config-client.html","lang":"en","sha256":"6be6cc70f29eca4695dc43b2b2b94c75b7e0eaaa2c00273d7a98488917a7edb7","slug":"18"}},"MeasuredEvidence":{"metadata_version":"18"}},"Text":{"Collection":"guc","Key":"icu_validation_level","SourceDatabase":"pgweb","Version":"18","Locale":"zh-Hans","Title":"icu_validation_level","Summary":"","BodyHTML":"\u003cp\u003e控制在遇到 ICU 区域设置验证问题时使用何种\u003ca href=\"/docs/18/runtime-config-logging.html#RUNTIME-CONFIG-SEVERITY-LEVELS\" rel=\"nofollow\"\u003e消息严重级别\u003c/a\u003e报告该问题。有效值包括\u003ccode\u003eDISABLED\u003c/code\u003e、\u003ccode\u003eDEBUG5\u003c/code\u003e、\u003ccode\u003eDEBUG4\u003c/code\u003e、\u003ccode\u003eDEBUG3\u003c/code\u003e、\u003ccode\u003eDEBUG2\u003c/code\u003e、\u003ccode\u003eDEBUG1\u003c/code\u003e、\u003ccode\u003eINFO\u003c/code\u003e、\u003ccode\u003eNOTICE\u003c/code\u003e、\u003ccode\u003eWARNING\u003c/code\u003e、\u003ccode\u003eERROR\u003c/code\u003e和\u003ccode\u003eLOG\u003c/code\u003e。\u003c/p\u003e\u003cp\u003e如果设置为\u003ccode\u003eDISABLED\u003c/code\u003e，则不会报告任何验证问题；否则，将以给定的消息级别报告问题。默认值为\u003ccode\u003eWARNING\u003c/code\u003e。\u003c/p\u003e","SourceRevision":"2026-09-11@29c86d9","ContentHash":"df3a8b47e1ba1d8cf89731aff7617efeba4313802096fbaa9918cb887c717093","Payload":{"carried_from":"","carry_reason":"","doc_html":"\u003cp\u003e控制在遇到 ICU 区域设置验证问题时使用何种\u003ca href=\"/docs/18/runtime-config-logging.html#RUNTIME-CONFIG-SEVERITY-LEVELS\" title=\"表 19.2. 消息严重级别\"\u003e消息严重级别\u003c/a\u003e报告该问题。有效值包括\u003ccode class=\"literal\"\u003eDISABLED\u003c/code\u003e、\u003ccode class=\"literal\"\u003eDEBUG5\u003c/code\u003e、\u003ccode class=\"literal\"\u003eDEBUG4\u003c/code\u003e、\u003ccode class=\"literal\"\u003eDEBUG3\u003c/code\u003e、\u003ccode class=\"literal\"\u003eDEBUG2\u003c/code\u003e、\u003ccode class=\"literal\"\u003eDEBUG1\u003c/code\u003e、\u003ccode class=\"literal\"\u003eINFO\u003c/code\u003e、\u003ccode class=\"literal\"\u003eNOTICE\u003c/code\u003e、\u003ccode class=\"literal\"\u003eWARNING\u003c/code\u003e、\u003ccode class=\"literal\"\u003eERROR\u003c/code\u003e和\u003ccode class=\"literal\"\u003eLOG\u003c/code\u003e。\u003c/p\u003e\u003cp\u003e如果设置为\u003ccode class=\"literal\"\u003eDISABLED\u003c/code\u003e，则不会报告任何验证问题；否则，将以给定的消息级别报告问题。默认值为\u003ccode class=\"literal\"\u003eWARNING\u003c/code\u003e。\u003c/p\u003e","doc_same_as":""}},"RequestedLocale":"zh-Hans","Fallback":false,"Versions":["16","17","18","19","20"],"Locales":["en","zh-Hans"],"Signatures":null,"Spellings":null,"SQLState":null,"Evidence":null}
