{"Entry":{"collection":"sqlstate","key":"42P22","name":"42P22","aliases":[],"metadata":{"aliases":[],"case_count":0,"class_code":"42","condition_name":"indeterminate_collation","condition_names":["indeterminate_collation"],"content_hash":"3c0776ab0aef0d5815802bab4a3a4ab5e6ed130758c606cc8906a81f92dab304","depth":"reference","editorial_review":"reviewed","evidence_tier":"source_path_confirmed","imported_at":"2026-09-30T17:45:27.782624+08:00","introduced":null,"known_present_by":"9.1.0","macros":["ERRCODE_INDETERMINATE_COLLATION"],"name_zh":"无法确定排序规则","present_in":["9.1","9.2","9.3","9.4","9.5","9.6","10","11","12","13","14","15","16","17","18","19"],"preview_in":["19"],"primary_macro":"ERRCODE_INDETERMINATE_COLLATION","removed":null,"runtime_verification":"not_run","severity_classes":["E"],"snippet_count":0,"source_rev":"english-manuals:52b2e0b9b3b04d5291109d551d813d26f8cdff9daca2dde464a31e08fad33e2b","sqlstate":"42P22","status":"active","summary_zh":"操作需要唯一排序规则，但无法确定。"}},"Definition":{"Collection":"sqlstate","Key":"42P22","SourceDatabase":"center","Version":"18","SourceTable":"sqlstate","SourceKey":"42P22","SourceRevision":"english-manuals:52b2e0b9b3b04d5291109d551d813d26f8cdff9daca2dde464a31e08fad33e2b","Facts":{"aliases":[],"class_name":"Syntax Error or Access Rule Violation","condition_name":"indeterminate_collation","doc":{"anchor":"ERRCODES-APPENDIX","file":"errcodes-appendix.html","lang":"en","sha256":"56dacf78e618ff0fd8c533e05db597b80d7ebbad7f8e512a888217d0640aa328","slug":"18"},"lang":"en","sqlstate":"42P22"},"ManualEvidence":{"doc":{"anchor":"ERRCODES-APPENDIX","file":"errcodes-appendix.html","lang":"en","sha256":"56dacf78e618ff0fd8c533e05db597b80d7ebbad7f8e512a888217d0640aa328","slug":"18"}},"MeasuredEvidence":{}},"Text":{"Collection":"sqlstate","Key":"42P22","SourceDatabase":"center","Version":"","Locale":"en","Title":"42P22 — Indeterminate collation","Summary":"42P22 (indeterminate_collation) An operation that needs one collation has no unambiguous collation to use.","BodyHTML":"\u003ch1\u003e42P22 — Indeterminate collation\u003c/h1\u003e\n\u003ch2\u003eAt a glance {#at-a-glance}\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003e42P22\u003c/code\u003e (\u003cstrong\u003eindeterminate_collation\u003c/strong\u003e) An operation that needs one collation has no unambiguous collation to use.\u003c/p\u003e\n\u003ch2\u003eMeaning {#meaning}\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003e42P22\u003c/code\u003e is emitted when a selected operation requires a usable collation but derivation produced none, often represented by \u003ccode\u003eInvalidOid\u003c/code\u003e. This is different from \u003ccode\u003e42P21\u003c/code\u003e: the caller-specific message names the operation that cannot proceed instead of presenting two explicit collation names. Fixed core callers include string hashing or comparison, index and partition expressions, CTAS and view output columns, regular expressions, \u003ccode\u003eLIKE\u003c/code\u003e/\u003ccode\u003eILIKE\u003c/code\u003e, and formatting functions.\u003c/p\u003e\n\u003ch2\u003eDiagnosis {#diagnosis}\u003c/h2\u003e\n\u003cp\u003eRead the operation named by the primary message and trace its string expression to the point where collation should be chosen. Hashing or comparison points to the operator or value expression; an index or partition message points to the definition expression; a CTAS or view-column message points to the output column; regex, \u003ccode\u003eLIKE\u003c/code\u003e, and \u003ccode\u003eILIKE\u003c/code\u003e point to the pattern operands; a \u003ccode\u003e%s function\u003c/code\u003e message names the formatting function. The fixed callers supply the caller-specific HINT \u003ccode\u003eUse the COLLATE clause to set the collation explicitly.\u003c/code\u003e. Choose the expression or declared-column boundary deliberately, and distinguish this no-collation requirement from a \u003ccode\u003e42P21\u003c/code\u003e conflict between known choices.\u003c/p\u003e\n\u003ch2\u003eResponse {#response}\u003c/h2\u003e\n\u003cp\u003eApply \u003ccode\u003eCOLLATE\u003c/code\u003e at the expression or output-column boundary that owns the semantic choice, then recreate the affected index, partition, view, or CTAS definition when required. Verify comparison, hashing, pattern, regex, and formatting behavior under that collation; do not change the database locale globally just to silence one caller. If this \u003ccode\u003eERROR\u003c/code\u003e occurs inside an explicit transaction, issue \u003ccode\u003eROLLBACK\u003c/code\u003e or \u003ccode\u003eROLLBACK TO\u003c/code\u003e a pre-error savepoint before retrying; autocommit can submit the corrected statement after returning to idle.\u003c/p\u003e\n\u003ch2\u003eMessages {#messages}\u003c/h2\u003e\n\u003cp\u003eRepresentative fixed-source messages include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eERROR\u003c/strong\u003e message: \u003ccode\u003ecould not determine which collation to use for string hashing\u003c/code\u003e; HINT: \u003ccode\u003eUse the COLLATE clause to set the collation explicitly.\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eERROR\u003c/strong\u003e message: \u003ccode\u003eno collation was derived for column \u0026#34;%s\u0026#34; with collatable type %s\u003c/code\u003e; HINT: \u003ccode\u003eUse the COLLATE clause to set the collation explicitly.\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eERROR\u003c/strong\u003e message: \u003ccode\u003ecould not determine which collation to use for index expression\u003c/code\u003e; HINT: \u003ccode\u003eUse the COLLATE clause to set the collation explicitly.\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eERROR\u003c/strong\u003e message: \u003ccode\u003ecould not determine which collation to use for partition expression\u003c/code\u003e; HINT: \u003ccode\u003eUse the COLLATE clause to set the collation explicitly.\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eERROR\u003c/strong\u003e message: \u003ccode\u003ecould not determine which collation to use for view column \u0026#34;%s\u0026#34;\u003c/code\u003e; HINT: \u003ccode\u003eUse the COLLATE clause to set the collation explicitly.\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eERROR\u003c/strong\u003e message: \u003ccode\u003ecould not determine which collation to use for regular expression\u003c/code\u003e; HINT: \u003ccode\u003eUse the COLLATE clause to set the collation explicitly.\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eERROR\u003c/strong\u003e message: \u003ccode\u003ecould not determine which collation to use for %s function\u003c/code\u003e; HINT: \u003ccode\u003eUse the COLLATE clause to set the collation explicitly.\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eERROR\u003c/strong\u003e message: \u003ccode\u003ecould not determine which collation to use for LIKE\u003c/code\u003e; HINT: \u003ccode\u003eUse the COLLATE clause to set the collation explicitly.\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eERROR\u003c/strong\u003e message: \u003ccode\u003ecould not determine which collation to use for ILIKE\u003c/code\u003e; HINT: \u003ccode\u003eUse the COLLATE clause to set the collation explicitly.\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eERROR\u003c/strong\u003e message: \u003ccode\u003ecould not determine which collation to use for string comparison\u003c/code\u003e; HINT: \u003ccode\u003eUse the COLLATE clause to set the collation explicitly.\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003ePlaceholders are filled by the actual object, column, or parameter.\u003c/p\u003e\n\u003ch2\u003eVersions {#versions}\u003c/h2\u003e\n\u003cp\u003eThe locked catalogue shows this condition by PostgreSQL 9.1.0; behavior here is fixed to PostgreSQL 18.6 source. Catalogue presence is a range boundary, not proof that every message or feature began in that release.\u003c/p\u003e\n\u003ch2\u003eRelated {#related}\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"/wiki/sqlstate/42P21/\" rel=\"nofollow\"\u003e\u003ccode\u003e42P21\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"/wiki/sqlstate/42P16/\" rel=\"nofollow\"\u003e\u003ccode\u003e42P16\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eSources {#sources}\u003c/h2\u003e\n\u003cp\u003eSource messages, line anchors, and evidence limits are recorded in \u003ca href=\"#sources\" rel=\"nofollow\"\u003eauthored evidence\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003esrc/backend/access/hash/hashfunc.c:278-281\u003c/code\u003e (\u003ca href=\"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/access/hash/hashfunc.c#L278\" rel=\"nofollow\"\u003efixed source\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003esrc/backend/commands/createas.c:198-203\u003c/code\u003e (\u003ca href=\"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/commands/createas.c#L198\" rel=\"nofollow\"\u003efixed source\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003esrc/backend/commands/indexcmds.c:2105-2108\u003c/code\u003e (\u003ca href=\"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/commands/indexcmds.c#L2105\" rel=\"nofollow\"\u003efixed source\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003esrc/backend/commands/tablecmds.c:20041-20044\u003c/code\u003e (\u003ca href=\"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/commands/tablecmds.c#L20041\" rel=\"nofollow\"\u003efixed source\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003esrc/backend/commands/view.c:76-80\u003c/code\u003e (\u003ca href=\"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/commands/view.c#L76\" rel=\"nofollow\"\u003efixed source\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003esrc/backend/regex/regc_pg_locale.c:239-242\u003c/code\u003e (\u003ca href=\"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/regex/regc_pg_locale.c#L239\" rel=\"nofollow\"\u003efixed source\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003esrc/backend/utils/adt/like.c:160-163\u003c/code\u003e (\u003ca href=\"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/utils/adt/like.c#L160\" rel=\"nofollow\"\u003efixed source\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003esrc/backend/utils/adt/like.c:191-194\u003c/code\u003e (\u003ca href=\"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/utils/adt/like.c#L191\" rel=\"nofollow\"\u003efixed source\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003esrc/backend/utils/adt/varchar.c:735-738\u003c/code\u003e (\u003ca href=\"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/utils/adt/varchar.c#L735\" rel=\"nofollow\"\u003efixed source\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003esrc/backend/utils/adt/formatting.c:1654-1658\u003c/code\u003e (\u003ca href=\"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/utils/adt/formatting.c#L1654\" rel=\"nofollow\"\u003efixed source\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n","SourceRevision":"english-manuals:52b2e0b9b3b04d5291109d551d813d26f8cdff9daca2dde464a31e08fad33e2b","ContentHash":"d15dc4942b7c41d536296a3bd74d076995a8490fa3281e6755c5fbf40e866312","Payload":{"body_md":"# 42P22 — Indeterminate collation\n\n## At a glance {#at-a-glance}\n\n`42P22` (**indeterminate_collation**) An operation that needs one collation has no unambiguous collation to use.\n\n\n## Meaning {#meaning}\n\n`42P22` is emitted when a selected operation requires a usable collation but derivation produced none, often represented by `InvalidOid`. This is different from `42P21`: the caller-specific message names the operation that cannot proceed instead of presenting two explicit collation names. Fixed core callers include string hashing or comparison, index and partition expressions, CTAS and view output columns, regular expressions, `LIKE`/`ILIKE`, and formatting functions.\n\n## Diagnosis {#diagnosis}\n\nRead the operation named by the primary message and trace its string expression to the point where collation should be chosen. Hashing or comparison points to the operator or value expression; an index or partition message points to the definition expression; a CTAS or view-column message points to the output column; regex, `LIKE`, and `ILIKE` point to the pattern operands; a `%s function` message names the formatting function. The fixed callers supply the caller-specific HINT `Use the COLLATE clause to set the collation explicitly.`. Choose the expression or declared-column boundary deliberately, and distinguish this no-collation requirement from a `42P21` conflict between known choices.\n\n## Response {#response}\n\nApply `COLLATE` at the expression or output-column boundary that owns the semantic choice, then recreate the affected index, partition, view, or CTAS definition when required. Verify comparison, hashing, pattern, regex, and formatting behavior under that collation; do not change the database locale globally just to silence one caller. If this `ERROR` occurs inside an explicit transaction, issue `ROLLBACK` or `ROLLBACK TO` a pre-error savepoint before retrying; autocommit can submit the corrected statement after returning to idle.\n\n## Messages {#messages}\n\nRepresentative fixed-source messages include:\n\n- **ERROR** message: `could not determine which collation to use for string hashing`; HINT: `Use the COLLATE clause to set the collation explicitly.`\n- **ERROR** message: `no collation was derived for column \"%s\" with collatable type %s`; HINT: `Use the COLLATE clause to set the collation explicitly.`\n- **ERROR** message: `could not determine which collation to use for index expression`; HINT: `Use the COLLATE clause to set the collation explicitly.`\n- **ERROR** message: `could not determine which collation to use for partition expression`; HINT: `Use the COLLATE clause to set the collation explicitly.`\n- **ERROR** message: `could not determine which collation to use for view column \"%s\"`; HINT: `Use the COLLATE clause to set the collation explicitly.`\n- **ERROR** message: `could not determine which collation to use for regular expression`; HINT: `Use the COLLATE clause to set the collation explicitly.`\n- **ERROR** message: `could not determine which collation to use for %s function`; HINT: `Use the COLLATE clause to set the collation explicitly.`\n- **ERROR** message: `could not determine which collation to use for LIKE`; HINT: `Use the COLLATE clause to set the collation explicitly.`\n- **ERROR** message: `could not determine which collation to use for ILIKE`; HINT: `Use the COLLATE clause to set the collation explicitly.`\n- **ERROR** message: `could not determine which collation to use for string comparison`; HINT: `Use the COLLATE clause to set the collation explicitly.`\n\nPlaceholders are filled by the actual object, column, or parameter.\n\n## Versions {#versions}\n\nThe locked catalogue shows this condition by PostgreSQL 9.1.0; behavior here is fixed to PostgreSQL 18.6 source. Catalogue presence is a range boundary, not proof that every message or feature began in that release.\n\n## Related {#related}\n\n- [`42P21`](/wiki/sqlstate/42P21/)\n- [`42P16`](/wiki/sqlstate/42P16/)\n\n## Sources {#sources}\n\nSource messages, line anchors, and evidence limits are recorded in [authored evidence](#sources).\n\n- `src/backend/access/hash/hashfunc.c:278-281` ([fixed source](https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/access/hash/hashfunc.c#L278))\n- `src/backend/commands/createas.c:198-203` ([fixed source](https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/commands/createas.c#L198))\n- `src/backend/commands/indexcmds.c:2105-2108` ([fixed source](https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/commands/indexcmds.c#L2105))\n- `src/backend/commands/tablecmds.c:20041-20044` ([fixed source](https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/commands/tablecmds.c#L20041))\n- `src/backend/commands/view.c:76-80` ([fixed source](https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/commands/view.c#L76))\n- `src/backend/regex/regc_pg_locale.c:239-242` ([fixed source](https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/regex/regc_pg_locale.c#L239))\n- `src/backend/utils/adt/like.c:160-163` ([fixed source](https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/utils/adt/like.c#L160))\n- `src/backend/utils/adt/like.c:191-194` ([fixed source](https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/utils/adt/like.c#L191))\n- `src/backend/utils/adt/varchar.c:735-738` ([fixed source](https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/utils/adt/varchar.c#L735))\n- `src/backend/utils/adt/formatting.c:1654-1658` ([fixed source](https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/utils/adt/formatting.c#L1654))\n","description":"Source-backed reference for PostgreSQL SQLSTATE 42P22.","is_stale":false,"name":"","sections":[{"anchor":"","heading":"","html":"\u0026lt;h1\u0026gt;42P22 — Indeterminate collation\u0026lt;/h1\u0026gt;"},{"anchor":"at-a-glance","heading":"At a glance","html":"\u003cp\u003e\u003ccode\u003e42P22\u003c/code\u003e (\u003cstrong\u003eindeterminate_collation\u003c/strong\u003e) An operation that needs one collation has no unambiguous collation to use.\u003c/p\u003e"},{"anchor":"meaning","heading":"Meaning","html":"\u003cp\u003e\u003ccode\u003e42P22\u003c/code\u003e is emitted when a selected operation requires a usable collation but derivation produced none, often represented by \u003ccode\u003eInvalidOid\u003c/code\u003e. This is different from \u003ccode\u003e42P21\u003c/code\u003e: the caller-specific message names the operation that cannot proceed instead of presenting two explicit collation names. Fixed core callers include string hashing or comparison, index and partition expressions, CTAS and view output columns, regular expressions, \u003ccode\u003eLIKE\u003c/code\u003e/\u003ccode\u003eILIKE\u003c/code\u003e, and formatting functions.\u003c/p\u003e"},{"anchor":"diagnosis","heading":"Diagnosis","html":"\u003cp\u003eRead the operation named by the primary message and trace its string expression to the point where collation should be chosen. Hashing or comparison points to the operator or value expression; an index or partition message points to the definition expression; a CTAS or view-column message points to the output column; regex, \u003ccode\u003eLIKE\u003c/code\u003e, and \u003ccode\u003eILIKE\u003c/code\u003e point to the pattern operands; a \u003ccode\u003e%s function\u003c/code\u003e message names the formatting function. The fixed callers supply the caller-specific HINT \u003ccode\u003eUse the COLLATE clause to set the collation explicitly.\u003c/code\u003e. Choose the expression or declared-column boundary deliberately, and distinguish this no-collation requirement from a \u003ccode\u003e42P21\u003c/code\u003e conflict between known choices.\u003c/p\u003e"},{"anchor":"response","heading":"Response","html":"\u003cp\u003eApply \u003ccode\u003eCOLLATE\u003c/code\u003e at the expression or output-column boundary that owns the semantic choice, then recreate the affected index, partition, view, or CTAS definition when required. Verify comparison, hashing, pattern, regex, and formatting behavior under that collation; do not change the database locale globally just to silence one caller. If this \u003ccode\u003eERROR\u003c/code\u003e occurs inside an explicit transaction, issue \u003ccode\u003eROLLBACK\u003c/code\u003e or \u003ccode\u003eROLLBACK TO\u003c/code\u003e a pre-error savepoint before retrying; autocommit can submit the corrected statement after returning to idle.\u003c/p\u003e"},{"anchor":"messages","heading":"Messages","html":"\u003cp\u003eRepresentative fixed-source messages include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eERROR\u003c/strong\u003e message: \u003ccode\u003ecould not determine which collation to use for string hashing\u003c/code\u003e; HINT: \u003ccode\u003eUse the COLLATE clause to set the collation explicitly.\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eERROR\u003c/strong\u003e message: \u003ccode\u003eno collation was derived for column \"%s\" with collatable type %s\u003c/code\u003e; HINT: \u003ccode\u003eUse the COLLATE clause to set the collation explicitly.\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eERROR\u003c/strong\u003e message: \u003ccode\u003ecould not determine which collation to use for index expression\u003c/code\u003e; HINT: \u003ccode\u003eUse the COLLATE clause to set the collation explicitly.\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eERROR\u003c/strong\u003e message: \u003ccode\u003ecould not determine which collation to use for partition expression\u003c/code\u003e; HINT: \u003ccode\u003eUse the COLLATE clause to set the collation explicitly.\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eERROR\u003c/strong\u003e message: \u003ccode\u003ecould not determine which collation to use for view column \"%s\"\u003c/code\u003e; HINT: \u003ccode\u003eUse the COLLATE clause to set the collation explicitly.\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eERROR\u003c/strong\u003e message: \u003ccode\u003ecould not determine which collation to use for regular expression\u003c/code\u003e; HINT: \u003ccode\u003eUse the COLLATE clause to set the collation explicitly.\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eERROR\u003c/strong\u003e message: \u003ccode\u003ecould not determine which collation to use for %s function\u003c/code\u003e; HINT: \u003ccode\u003eUse the COLLATE clause to set the collation explicitly.\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eERROR\u003c/strong\u003e message: \u003ccode\u003ecould not determine which collation to use for LIKE\u003c/code\u003e; HINT: \u003ccode\u003eUse the COLLATE clause to set the collation explicitly.\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eERROR\u003c/strong\u003e message: \u003ccode\u003ecould not determine which collation to use for ILIKE\u003c/code\u003e; HINT: \u003ccode\u003eUse the COLLATE clause to set the collation explicitly.\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eERROR\u003c/strong\u003e message: \u003ccode\u003ecould not determine which collation to use for string comparison\u003c/code\u003e; HINT: \u003ccode\u003eUse the COLLATE clause to set the collation explicitly.\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003ePlaceholders are filled by the actual object, column, or parameter.\u003c/p\u003e"},{"anchor":"versions","heading":"Versions","html":"\u003cp\u003eThe locked catalogue shows this condition by PostgreSQL 9.1.0; behavior here is fixed to PostgreSQL 18.6 source. Catalogue presence is a range boundary, not proof that every message or feature began in that release.\u003c/p\u003e"},{"anchor":"related","heading":"Related","html":"\u003cul\u003e\n\u003cli\u003e\u003ca href=\"/wiki/sqlstate/42P21/\"\u003e\u003ccode\u003e42P21\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"/wiki/sqlstate/42P16/\"\u003e\u003ccode\u003e42P16\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e"},{"anchor":"sources","heading":"Sources","html":"\u003cp\u003eSource messages, line anchors, and evidence limits are recorded in \u003ca href=\"#sources\"\u003eauthored evidence\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003esrc/backend/access/hash/hashfunc.c:278-281\u003c/code\u003e (\u003ca href=\"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/access/hash/hashfunc.c#L278\"\u003efixed source\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003esrc/backend/commands/createas.c:198-203\u003c/code\u003e (\u003ca href=\"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/commands/createas.c#L198\"\u003efixed source\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003esrc/backend/commands/indexcmds.c:2105-2108\u003c/code\u003e (\u003ca href=\"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/commands/indexcmds.c#L2105\"\u003efixed source\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003esrc/backend/commands/tablecmds.c:20041-20044\u003c/code\u003e (\u003ca href=\"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/commands/tablecmds.c#L20041\"\u003efixed source\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003esrc/backend/commands/view.c:76-80\u003c/code\u003e (\u003ca href=\"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/commands/view.c#L76\"\u003efixed source\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003esrc/backend/regex/regc_pg_locale.c:239-242\u003c/code\u003e (\u003ca href=\"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/regex/regc_pg_locale.c#L239\"\u003efixed source\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003esrc/backend/utils/adt/like.c:160-163\u003c/code\u003e (\u003ca href=\"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/utils/adt/like.c#L160\"\u003efixed source\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003esrc/backend/utils/adt/like.c:191-194\u003c/code\u003e (\u003ca href=\"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/utils/adt/like.c#L191\"\u003efixed source\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003esrc/backend/utils/adt/varchar.c:735-738\u003c/code\u003e (\u003ca href=\"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/utils/adt/varchar.c#L735\"\u003efixed source\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003esrc/backend/utils/adt/formatting.c:1654-1658\u003c/code\u003e (\u003ca href=\"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/utils/adt/formatting.c#L1654\"\u003efixed source\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e"}],"summary":"42P22 (indeterminate_collation) An operation that needs one collation has no unambiguous collation to use.","title":"42P22 — Indeterminate collation","translation_source_rev":"637beb799e7b25917075560a238393cf0bdac712caf423a5dc4ce006e559a942"}},"RequestedLocale":"en","Fallback":false,"Versions":["10","11","12","13","14","15","16","17","18","19","20","9.1","9.2","9.3","9.4","9.5","9.6"],"Locales":["en","zh-Hans"],"Signatures":null,"Spellings":null,"SQLState":{"aliases":[],"catalogue_notes":{"earliest_observed":"9.1.0","formal_scope":"9.0.0..18.6","latest_observed":"18.6","matrix_scope":["9.0.23","9.1.24","9.2.24","9.3.25","9.4.26","9.5.25","9.6.24","10.23","11.22","12.22","13.23","14.24","15.19","16.15","17.11","18.6"],"pre9_scope":{"formal_tag_count":191,"maximum_release":"8.4.22","minimum_release":"7.0.0","source_definition_count":153,"source_doc_count":153,"source_file_count":306,"source_scope":"7.4..8.4 definition files; 7.0..7.3 candidate-path source gap probes","source_tag_count":153},"pre9_status":"not_observed","preview_scope":["19beta3"]},"class":"42","class_name":"Syntax Error or Access Rule Violation","condition_name":"indeterminate_collation","condition_names":["indeterminate_collation"],"definition_changes":[],"english_manuals":{"10":{"aliases":[],"class_name":"Syntax Error or Access Rule Violation","condition_name":"indeterminate_collation","doc":{"anchor":"ERRCODES-APPENDIX","file":"errcodes-appendix.html","lang":"en","sha256":"9607b57e9f639b61785677ba4d226f5889fe1d19c8bf55a3337691899a9073cd","slug":"10"},"lang":"en","sqlstate":"42P22"},"11":{"aliases":[],"class_name":"Syntax Error or Access Rule Violation","condition_name":"indeterminate_collation","doc":{"anchor":"ERRCODES-APPENDIX","file":"errcodes-appendix.html","lang":"en","sha256":"3a024e38263ad77de228eed7930b842b42dc1d5cab9ca3727be8eed872ec9539","slug":"11"},"lang":"en","sqlstate":"42P22"},"12":{"aliases":[],"class_name":"Syntax Error or Access Rule Violation","condition_name":"indeterminate_collation","doc":{"anchor":"ERRCODES-APPENDIX","file":"errcodes-appendix.html","lang":"en","sha256":"1444bd6a138537cd75be88a220ee9472ac528f0cfc58758e49636d85455efe98","slug":"12"},"lang":"en","sqlstate":"42P22"},"13":{"aliases":[],"class_name":"Syntax Error or Access Rule Violation","condition_name":"indeterminate_collation","doc":{"anchor":"ERRCODES-APPENDIX","file":"errcodes-appendix.html","lang":"en","sha256":"4a3ef8af218e5736dfde8660ba609e84233b6b3bac7e0210ff8724cf1b27b2db","slug":"13"},"lang":"en","sqlstate":"42P22"},"14":{"aliases":[],"class_name":"Syntax Error or Access Rule Violation","condition_name":"indeterminate_collation","doc":{"anchor":"ERRCODES-APPENDIX","file":"errcodes-appendix.html","lang":"en","sha256":"1c12e83304e0f4ff64c9d98ca5e3007df6756932ed19867a4fa0e0650f6c5751","slug":"14"},"lang":"en","sqlstate":"42P22"},"15":{"aliases":[],"class_name":"Syntax Error or Access Rule Violation","condition_name":"indeterminate_collation","doc":{"anchor":"ERRCODES-APPENDIX","file":"errcodes-appendix.html","lang":"en","sha256":"2161f58f6e87f6535b3b1f3d4661427bb6765f4f6b074fcc16fac97594b50599","slug":"15"},"lang":"en","sqlstate":"42P22"},"16":{"aliases":[],"class_name":"Syntax Error or Access Rule Violation","condition_name":"indeterminate_collation","doc":{"anchor":"ERRCODES-APPENDIX","file":"errcodes-appendix.html","lang":"en","sha256":"928e705933d7c3d018ae3fba9d800b34e6325746d157339dce878473c519d100","slug":"16"},"lang":"en","sqlstate":"42P22"},"17":{"aliases":[],"class_name":"Syntax Error or Access Rule Violation","condition_name":"indeterminate_collation","doc":{"anchor":"ERRCODES-APPENDIX","file":"errcodes-appendix.html","lang":"en","sha256":"868135520af87351e3ea1ba42656111cbd2d157d98e1fef05ea158ac5729d8b1","slug":"17"},"lang":"en","sqlstate":"42P22"},"18":{"aliases":[],"class_name":"Syntax Error or Access Rule Violation","condition_name":"indeterminate_collation","doc":{"anchor":"ERRCODES-APPENDIX","file":"errcodes-appendix.html","lang":"en","sha256":"56dacf78e618ff0fd8c533e05db597b80d7ebbad7f8e512a888217d0640aa328","slug":"18"},"lang":"en","sqlstate":"42P22"},"19":{"aliases":[],"class_name":"Syntax Error or Access Rule Violation","condition_name":"indeterminate_collation","doc":{"anchor":"ERRCODES-APPENDIX","file":"errcodes-appendix.html","lang":"en","sha256":"63fb8d1aa9f494eeab9d0f8542a2b673f7746ee41ae2689d19403cb3cc425a5c","slug":"19"},"lang":"en","sqlstate":"42P22"},"20":{"aliases":[],"class_name":"Syntax Error or Access Rule Violation","condition_name":"indeterminate_collation","doc":{"anchor":"ERRCODES-APPENDIX","file":"errcodes-appendix.html","lang":"en","sha256":"0d3f602127cd137cf343b32d5fa78f175eeb6cdcb6353b1f6f998ede6cb7b911","slug":"devel"},"lang":"en","sqlstate":"42P22"},"9.1":{"aliases":[],"class_name":"Syntax Error or Access Rule Violation","condition_name":"indeterminate_collation","doc":{"anchor":"ERRCODES-APPENDIX","file":"errcodes-appendix.html","lang":"en","sha256":"2d118b06c3b644c28b3ddefe9e4bef99a180321582209332372a5318f5bf8d1c","slug":"9.1"},"lang":"en","sqlstate":"42P22"},"9.2":{"aliases":[],"class_name":"Syntax Error or Access Rule Violation","condition_name":"indeterminate_collation","doc":{"anchor":"ERRCODES-APPENDIX","file":"errcodes-appendix.html","lang":"en","sha256":"2a37575b39c858d37c58fc4de6a16109554fd3306602294180d78faa1170d2cd","slug":"9.2"},"lang":"en","sqlstate":"42P22"},"9.3":{"aliases":[],"class_name":"Syntax Error or Access Rule Violation","condition_name":"indeterminate_collation","doc":{"anchor":"ERRCODES-APPENDIX","file":"errcodes-appendix.html","lang":"en","sha256":"2214b6869d764f7fba7221aefcdf1ab049b55ad51d63aa52054f3cd2c2533ae9","slug":"9.3"},"lang":"en","sqlstate":"42P22"},"9.4":{"aliases":[],"class_name":"Syntax Error or Access Rule Violation","condition_name":"indeterminate_collation","doc":{"anchor":"ERRCODES-APPENDIX","file":"errcodes-appendix.html","lang":"en","sha256":"7243e2d653befe88733222ede67958f0c4b7fae967b58eb97807aeb3f32b4096","slug":"9.4"},"lang":"en","sqlstate":"42P22"},"9.5":{"aliases":[],"class_name":"Syntax Error or Access Rule Violation","condition_name":"indeterminate_collation","doc":{"anchor":"ERRCODES-APPENDIX","file":"errcodes-appendix.html","lang":"en","sha256":"d40bc67cb331f1e4ccc0821ff57832c6c230edb0dce3ba4249defd21ae7ea29d","slug":"9.5"},"lang":"en","sqlstate":"42P22"},"9.6":{"aliases":[],"class_name":"Syntax Error or Access Rule Violation","condition_name":"indeterminate_collation","doc":{"anchor":"ERRCODES-APPENDIX","file":"errcodes-appendix.html","lang":"en","sha256":"2ab55e487571c8998ec39b3d1bbae29ac6fc5c310875bee422d9a7b8b3fde5b3","slug":"9.6"},"lang":"en","sqlstate":"42P22"}},"history_boundary":{"earliest_observed":"9.1.0","formal_tag_count":351,"gaps":[{"after":"18.6","before":"18.4","reason":"Non-adjacent release tags or a source gap; no removal is inferred."}],"latest_observed":"18.6","pre_range":{"first_observed":null,"known_lower_bound":null,"last_observed":null,"notes":"No occurrence was observed in the locked 7.4..8.4 definition files. Source gaps for 7.0..7.3 prevent a claim that the code was absent before 7.4.","scanned_formal_release_count":153,"scanned_source_scope":"7.4..8.4 definition files; 7.0..7.3 candidate-path source gap probes","source_gap_majors":["7.0","7.1","7.2","7.3"],"status":"partially_scanned"},"preview_snapshots":["19beta3"],"scanned_from":"9.0.0","scanned_to":"18.6"},"introduced":null,"known_present_by":"9.1.0","macros":["ERRCODE_INDETERMINATE_COLLATION"],"manual_presence":["9.1","9.2","9.3","9.4","9.5","9.6","10","11","12","13","14","15","16","17","18","19","20"],"pre9_first_observed":null,"pre9_introduction_boundary":null,"pre9_last_observed":null,"pre9_presence_intervals":[],"pre9_status":"not_observed","presence_intervals":[{"end":"9.1.24","end_major":"9.1","end_tag":"REL9_1_24","evidence_count":25,"position":0,"start":"9.1.0","start_major":"9.1","start_tag":"REL9_1_0"},{"end":"9.2.24","end_major":"9.2","end_tag":"REL9_2_24","evidence_count":25,"position":1,"start":"9.2.0","start_major":"9.2","start_tag":"REL9_2_0"},{"end":"9.3.25","end_major":"9.3","end_tag":"REL9_3_25","evidence_count":26,"position":2,"start":"9.3.0","start_major":"9.3","start_tag":"REL9_3_0"},{"end":"9.4.26","end_major":"9.4","end_tag":"REL9_4_26","evidence_count":27,"position":3,"start":"9.4.0","start_major":"9.4","start_tag":"REL9_4_0"},{"end":"9.5.25","end_major":"9.5","end_tag":"REL9_5_25","evidence_count":26,"position":4,"start":"9.5.0","start_major":"9.5","start_tag":"REL9_5_0"},{"end":"9.6.24","end_major":"9.6","end_tag":"REL9_6_24","evidence_count":25,"position":5,"start":"9.6.0","start_major":"9.6","start_tag":"REL9_6_0"},{"end":"10.23","end_major":"10","end_tag":"REL_10_23","evidence_count":24,"position":6,"start":"10.0","start_major":"10","start_tag":"REL_10_0"},{"end":"11.22","end_major":"11","end_tag":"REL_11_22","evidence_count":23,"position":7,"start":"11.0","start_major":"11","start_tag":"REL_11_0"},{"end":"12.22","end_major":"12","end_tag":"REL_12_22","evidence_count":23,"position":8,"start":"12.0","start_major":"12","start_tag":"REL_12_0"},{"end":"13.23","end_major":"13","end_tag":"REL_13_23","evidence_count":24,"position":9,"start":"13.0","start_major":"13","start_tag":"REL_13_0"},{"end":"14.24","end_major":"14","end_tag":"REL_14_24","evidence_count":25,"position":10,"start":"14.0","start_major":"14","start_tag":"REL_14_0"},{"end":"15.19","end_major":"15","end_tag":"REL_15_19","evidence_count":20,"position":11,"start":"15.0","start_major":"15","start_tag":"REL_15_0"},{"end":"16.15","end_major":"16","end_tag":"REL_16_15","evidence_count":16,"position":12,"start":"16.0","start_major":"16","start_tag":"REL_16_0"},{"end":"17.11","end_major":"17","end_tag":"REL_17_11","evidence_count":12,"position":13,"start":"17.0","start_major":"17","start_tag":"REL_17_0"},{"end":"18.4","end_major":"18","end_tag":"REL_18_4","evidence_count":5,"position":14,"start":"18.0","start_major":"18","start_tag":"REL_18_0"},{"end":"18.6","end_major":"18","end_tag":"REL_18_6","evidence_count":1,"position":15,"start":"18.6","start_major":"18","start_tag":"REL_18_6"}],"present_in_snapshots":["9.1.24","9.2.24","9.3.25","9.4.26","9.5.25","9.6.24","10.23","11.22","12.22","13.23","14.24","15.19","16.15","17.11","18.6","19beta3"],"preview_in_snapshots":["19beta3"],"primary_macro":"ERRCODE_INDETERMINATE_COLLATION","removed":null,"schema_version":2,"severity_classes":["E"],"sources":[{"blob_id":"sha256:2b1d71c453a82488c4e95df84a9ee18dc8fdcb2532a7c56f44f1e8c4265a8132","channel":"formal","code_count":228,"commit":"1f43001424a9da624a89b213d0be606a8212a50a","id":"postgresql:REL9_1_0:src/backend/utils/errcodes.txt","major":"9.1","parsed_path":"raw/definitions/REL9_1_0.parsed.json","path":"src/backend/utils/errcodes.txt","raw_path":"raw/definitions/REL9_1_0.txt","raw_url":"https://raw.githubusercontent.com/postgres/postgres/1f43001424a9da624a89b213d0be606a8212a50a/src/backend/utils/errcodes.txt","record_count":234,"release":"9.1.0","release_date":null,"repository":"https://github.com/postgres/postgres.git","sha256":"2b1d71c453a82488c4e95df84a9ee18dc8fdcb2532a7c56f44f1e8c4265a8132","size":29355,"source_format":"errcodes.txt","source_role":"primary_definition","tag":"REL9_1_0","url":"https://github.com/postgres/postgres/blob/1f43001424a9da624a89b213d0be606a8212a50a/src/backend/utils/errcodes.txt","version":"9.1.0"},{"blob_id":"sha256:271a522fcd18ec45ebe4c1235af0e27a0e9bf0376fda4073b9f4a9c0a00fc711","channel":"formal","code_count":232,"commit":"ef47adb414e46099155c34529a2a5caeea02fc41","id":"postgresql:REL9_2_0:src/backend/utils/errcodes.txt","major":"9.2","parsed_path":"raw/definitions/REL9_2_0.parsed.json","path":"src/backend/utils/errcodes.txt","raw_path":"raw/definitions/REL9_2_0.txt","raw_url":"https://raw.githubusercontent.com/postgres/postgres/ef47adb414e46099155c34529a2a5caeea02fc41/src/backend/utils/errcodes.txt","record_count":238,"release":"9.2.0","release_date":null,"repository":"https://github.com/postgres/postgres.git","sha256":"271a522fcd18ec45ebe4c1235af0e27a0e9bf0376fda4073b9f4a9c0a00fc711","size":30387,"source_format":"errcodes.txt","source_role":"primary_definition","tag":"REL9_2_0","url":"https://github.com/postgres/postgres/blob/ef47adb414e46099155c34529a2a5caeea02fc41/src/backend/utils/errcodes.txt","version":"9.2.0"},{"blob_id":"sha256:f90d801e724191c84e94ae33483e71b4e3c4de5730474d316df4c722a149897d","channel":"formal","code_count":232,"commit":"da645b3a73580ac30cf02e932b42d06157b98229","id":"postgresql:REL9_3_0:src/backend/utils/errcodes.txt","major":"9.3","parsed_path":"raw/definitions/REL9_3_0.parsed.json","path":"src/backend/utils/errcodes.txt","raw_path":"raw/definitions/REL9_3_0.txt","raw_url":"https://raw.githubusercontent.com/postgres/postgres/da645b3a73580ac30cf02e932b42d06157b98229/src/backend/utils/errcodes.txt","record_count":238,"release":"9.3.0","release_date":null,"repository":"https://github.com/postgres/postgres.git","sha256":"f90d801e724191c84e94ae33483e71b4e3c4de5730474d316df4c722a149897d","size":30387,"source_format":"errcodes.txt","source_role":"primary_definition","tag":"REL9_3_0","url":"https://github.com/postgres/postgres/blob/da645b3a73580ac30cf02e932b42d06157b98229/src/backend/utils/errcodes.txt","version":"9.3.0"},{"blob_id":"sha256:1695ec274fb29f0b0875ff674405e775334243835a6f6008e007dfe3a8260bf5","channel":"formal","code_count":232,"commit":"8ca336f4ac3f08a5f23e76c6e9a5f2c8064f5883","id":"postgresql:REL9_4_0:src/backend/utils/errcodes.txt","major":"9.4","parsed_path":"raw/definitions/REL9_4_0.parsed.json","path":"src/backend/utils/errcodes.txt","raw_path":"raw/definitions/REL9_4_0.txt","raw_url":"https://raw.githubusercontent.com/postgres/postgres/8ca336f4ac3f08a5f23e76c6e9a5f2c8064f5883/src/backend/utils/errcodes.txt","record_count":238,"release":"9.4.0","release_date":null,"repository":"https://github.com/postgres/postgres.git","sha256":"1695ec274fb29f0b0875ff674405e775334243835a6f6008e007dfe3a8260bf5","size":30387,"source_format":"errcodes.txt","source_role":"primary_definition","tag":"REL9_4_0","url":"https://github.com/postgres/postgres/blob/8ca336f4ac3f08a5f23e76c6e9a5f2c8064f5883/src/backend/utils/errcodes.txt","version":"9.4.0"},{"blob_id":"sha256:37f728a7e034ef0b05b060a4b82c7dd95c900e4a5501c80bfefd8d679889253b","channel":"formal","code_count":236,"commit":"cdd4ed5449bf317cc71b45a8deee0173822e7592","id":"postgresql:REL9_5_0:src/backend/utils/errcodes.txt","major":"9.5","parsed_path":"raw/definitions/REL9_5_0.parsed.json","path":"src/backend/utils/errcodes.txt","raw_path":"raw/definitions/REL9_5_0.txt","raw_url":"https://raw.githubusercontent.com/postgres/postgres/cdd4ed5449bf317cc71b45a8deee0173822e7592/src/backend/utils/errcodes.txt","record_count":242,"release":"9.5.0","release_date":null,"repository":"https://github.com/postgres/postgres.git","sha256":"37f728a7e034ef0b05b060a4b82c7dd95c900e4a5501c80bfefd8d679889253b","size":30798,"source_format":"errcodes.txt","source_role":"primary_definition","tag":"REL9_5_0","url":"https://github.com/postgres/postgres/blob/cdd4ed5449bf317cc71b45a8deee0173822e7592/src/backend/utils/errcodes.txt","version":"9.5.0"},{"blob_id":"sha256:bf4d94d84c7cfe695cb80e8f009872444574719a80a72e347eb66ef3686b86ef","channel":"formal","code_count":238,"commit":"a721a1ba9cf6c86cb52f1bf325d5a27b64e870d6","id":"postgresql:REL9_6_0:src/backend/utils/errcodes.txt","major":"9.6","parsed_path":"raw/definitions/REL9_6_0.parsed.json","path":"src/backend/utils/errcodes.txt","raw_path":"raw/definitions/REL9_6_0.txt","raw_url":"https://raw.githubusercontent.com/postgres/postgres/a721a1ba9cf6c86cb52f1bf325d5a27b64e870d6/src/backend/utils/errcodes.txt","record_count":244,"release":"9.6.0","release_date":null,"repository":"https://github.com/postgres/postgres.git","sha256":"bf4d94d84c7cfe695cb80e8f009872444574719a80a72e347eb66ef3686b86ef","size":31135,"source_format":"errcodes.txt","source_role":"primary_definition","tag":"REL9_6_0","url":"https://github.com/postgres/postgres/blob/a721a1ba9cf6c86cb52f1bf325d5a27b64e870d6/src/backend/utils/errcodes.txt","version":"9.6.0"},{"blob_id":"sha256:e5d829b24fe63aa69429fa1deb9675051fc8ffd4a8a4651861907a8f12ccb144","channel":"formal","code_count":240,"commit":"5df0e99bea1c3e5fbffa7fbd0982da88ea149bb6","id":"postgresql:REL_10_0:src/backend/utils/errcodes.txt","major":"10","parsed_path":"raw/definitions/REL_10_0.parsed.json","path":"src/backend/utils/errcodes.txt","raw_path":"raw/definitions/REL_10_0.txt","raw_url":"https://raw.githubusercontent.com/postgres/postgres/5df0e99bea1c3e5fbffa7fbd0982da88ea149bb6/src/backend/utils/errcodes.txt","record_count":246,"release":"10.0","release_date":null,"repository":"https://github.com/postgres/postgres.git","sha256":"e5d829b24fe63aa69429fa1deb9675051fc8ffd4a8a4651861907a8f12ccb144","size":31340,"source_format":"errcodes.txt","source_role":"primary_definition","tag":"REL_10_0","url":"https://github.com/postgres/postgres/blob/5df0e99bea1c3e5fbffa7fbd0982da88ea149bb6/src/backend/utils/errcodes.txt","version":"10.0"},{"blob_id":"sha256:8518be6de92ae135765e295c631c5f525120ca2b132453404b620f9aa595cab4","channel":"formal","code_count":241,"commit":"19f20081df059fef87e14c8e953669bd173dd7f1","id":"postgresql:REL_11_0:src/backend/utils/errcodes.txt","major":"11","parsed_path":"raw/definitions/REL_11_0.parsed.json","path":"src/backend/utils/errcodes.txt","raw_path":"raw/definitions/REL_11_0.txt","raw_url":"https://raw.githubusercontent.com/postgres/postgres/19f20081df059fef87e14c8e953669bd173dd7f1/src/backend/utils/errcodes.txt","record_count":247,"release":"11.0","release_date":null,"repository":"https://github.com/postgres/postgres.git","sha256":"8518be6de92ae135765e295c631c5f525120ca2b132453404b620f9aa595cab4","size":31453,"source_format":"errcodes.txt","source_role":"primary_definition","tag":"REL_11_0","url":"https://github.com/postgres/postgres/blob/19f20081df059fef87e14c8e953669bd173dd7f1/src/backend/utils/errcodes.txt","version":"11.0"},{"blob_id":"sha256:943259f3e36af1343dd0f090f7c7cec0e8c762b038d68c178aaa9b1b11999bfb","channel":"formal","code_count":257,"commit":"ad1f2885b8c82e0c2d56d7974f012cbecce17a17","id":"postgresql:REL_12_0:src/backend/utils/errcodes.txt","major":"12","parsed_path":"raw/definitions/REL_12_0.parsed.json","path":"src/backend/utils/errcodes.txt","raw_path":"raw/definitions/REL_12_0.txt","raw_url":"https://raw.githubusercontent.com/postgres/postgres/ad1f2885b8c82e0c2d56d7974f012cbecce17a17/src/backend/utils/errcodes.txt","record_count":263,"release":"12.0","release_date":null,"repository":"https://github.com/postgres/postgres.git","sha256":"943259f3e36af1343dd0f090f7c7cec0e8c762b038d68c178aaa9b1b11999bfb","size":33114,"source_format":"errcodes.txt","source_role":"primary_definition","tag":"REL_12_0","url":"https://github.com/postgres/postgres/blob/ad1f2885b8c82e0c2d56d7974f012cbecce17a17/src/backend/utils/errcodes.txt","version":"12.0"},{"blob_id":"sha256:9a464a3c3c99d2488782d4cdd0d46ce261085a944cb0c21e2d884586fbc8204d","channel":"formal","code_count":258,"commit":"29be9983a64c011eac0b9ee29895cce71e15ea77","id":"postgresql:REL_13_0:src/backend/utils/errcodes.txt","major":"13","parsed_path":"raw/definitions/REL_13_0.parsed.json","path":"src/backend/utils/errcodes.txt","raw_path":"raw/definitions/REL_13_0.txt","raw_url":"https://raw.githubusercontent.com/postgres/postgres/29be9983a64c011eac0b9ee29895cce71e15ea77/src/backend/utils/errcodes.txt","record_count":264,"release":"13.0","release_date":null,"repository":"https://github.com/postgres/postgres.git","sha256":"9a464a3c3c99d2488782d4cdd0d46ce261085a944cb0c21e2d884586fbc8204d","size":33239,"source_format":"errcodes.txt","source_role":"primary_definition","tag":"REL_13_0","url":"https://github.com/postgres/postgres/blob/29be9983a64c011eac0b9ee29895cce71e15ea77/src/backend/utils/errcodes.txt","version":"13.0"},{"blob_id":"sha256:c3c967fa20577f7ded946cb99e1a4706b85bb2476fd32d7e4a133c971a603552","channel":"formal","code_count":259,"commit":"86a4dc1e6f29d1992a2afa3fac1a0b0a6e84568c","id":"postgresql:REL_14_0:src/backend/utils/errcodes.txt","major":"14","parsed_path":"raw/definitions/REL_14_0.parsed.json","path":"src/backend/utils/errcodes.txt","raw_path":"raw/definitions/REL_14_0.txt","raw_url":"https://raw.githubusercontent.com/postgres/postgres/86a4dc1e6f29d1992a2afa3fac1a0b0a6e84568c/src/backend/utils/errcodes.txt","record_count":265,"release":"14.0","release_date":null,"repository":"https://github.com/postgres/postgres.git","sha256":"c3c967fa20577f7ded946cb99e1a4706b85bb2476fd32d7e4a133c971a603552","size":33337,"source_format":"errcodes.txt","source_role":"primary_definition","tag":"REL_14_0","url":"https://github.com/postgres/postgres/blob/86a4dc1e6f29d1992a2afa3fac1a0b0a6e84568c/src/backend/utils/errcodes.txt","version":"14.0"},{"blob_id":"sha256:a34b5fccd8a27c92817314dd942b79e76896cd1d9a8d4be21c81b02227850b4a","channel":"formal","code_count":260,"commit":"2a7ce2e2ce474504a707ec03e128fde66cfb8b48","id":"postgresql:REL_15_0:src/backend/utils/errcodes.txt","major":"15","parsed_path":"raw/definitions/REL_15_0.parsed.json","path":"src/backend/utils/errcodes.txt","raw_path":"raw/definitions/REL_15_0.txt","raw_url":"https://raw.githubusercontent.com/postgres/postgres/2a7ce2e2ce474504a707ec03e128fde66cfb8b48/src/backend/utils/errcodes.txt","record_count":266,"release":"15.0","release_date":null,"repository":"https://github.com/postgres/postgres.git","sha256":"a34b5fccd8a27c92817314dd942b79e76896cd1d9a8d4be21c81b02227850b4a","size":33458,"source_format":"errcodes.txt","source_role":"primary_definition","tag":"REL_15_0","url":"https://github.com/postgres/postgres/blob/2a7ce2e2ce474504a707ec03e128fde66cfb8b48/src/backend/utils/errcodes.txt","version":"15.0"},{"blob_id":"sha256:1d1d741b7b7c6dfd8275287e31c79befed75f3b9349e1a42ef0ca147c429ff88","channel":"formal","code_count":260,"commit":"c372fbbd8e911f2412b80a8c39d7079366565d67","id":"postgresql:REL_16_0:src/backend/utils/errcodes.txt","major":"16","parsed_path":"raw/definitions/REL_16_0.parsed.json","path":"src/backend/utils/errcodes.txt","raw_path":"raw/definitions/REL_16_0.txt","raw_url":"https://raw.githubusercontent.com/postgres/postgres/c372fbbd8e911f2412b80a8c39d7079366565d67/src/backend/utils/errcodes.txt","record_count":266,"release":"16.0","release_date":null,"repository":"https://github.com/postgres/postgres.git","sha256":"1d1d741b7b7c6dfd8275287e31c79befed75f3b9349e1a42ef0ca147c429ff88","size":33458,"source_format":"errcodes.txt","source_role":"primary_definition","tag":"REL_16_0","url":"https://github.com/postgres/postgres/blob/c372fbbd8e911f2412b80a8c39d7079366565d67/src/backend/utils/errcodes.txt","version":"16.0"},{"blob_id":"sha256:bb53279934510355eb4135a807c90d989f07650bd90f87026a4441f11d3296b1","channel":"formal","code_count":260,"commit":"d7ec59a63d745ba74fba0e280bbf85dc6d1caa3e","id":"postgresql:REL_17_0:src/backend/utils/errcodes.txt","major":"17","parsed_path":"raw/definitions/REL_17_0.parsed.json","path":"src/backend/utils/errcodes.txt","raw_path":"raw/definitions/REL_17_0.txt","raw_url":"https://raw.githubusercontent.com/postgres/postgres/d7ec59a63d745ba74fba0e280bbf85dc6d1caa3e/src/backend/utils/errcodes.txt","record_count":266,"release":"17.0","release_date":null,"repository":"https://github.com/postgres/postgres.git","sha256":"bb53279934510355eb4135a807c90d989f07650bd90f87026a4441f11d3296b1","size":33392,"source_format":"errcodes.txt","source_role":"primary_definition","tag":"REL_17_0","url":"https://github.com/postgres/postgres/blob/d7ec59a63d745ba74fba0e280bbf85dc6d1caa3e/src/backend/utils/errcodes.txt","version":"17.0"},{"blob_id":"sha256:6e8de346643ba84aa3c9c6a73360acfc7b2dfb89162c06c08ce9bf5bcd5bbcba","channel":"formal","code_count":262,"commit":"3d6a828938a5fa0444275d3d2f67b64ec3199eb7","id":"postgresql:REL_18_0:src/backend/utils/errcodes.txt","major":"18","parsed_path":"raw/definitions/REL_18_0.parsed.json","path":"src/backend/utils/errcodes.txt","raw_path":"raw/definitions/REL_18_0.txt","raw_url":"https://raw.githubusercontent.com/postgres/postgres/3d6a828938a5fa0444275d3d2f67b64ec3199eb7/src/backend/utils/errcodes.txt","record_count":268,"release":"18.0","release_date":null,"repository":"https://github.com/postgres/postgres.git","sha256":"6e8de346643ba84aa3c9c6a73360acfc7b2dfb89162c06c08ce9bf5bcd5bbcba","size":33739,"source_format":"errcodes.txt","source_role":"primary_definition","tag":"REL_18_0","url":"https://github.com/postgres/postgres/blob/3d6a828938a5fa0444275d3d2f67b64ec3199eb7/src/backend/utils/errcodes.txt","version":"18.0"},{"blob_id":"sha256:cadb9e83cde9a8699a7e74448891ca623af8579ccc8e11c7e533fb47cbc42f89","channel":"preview","code_count":262,"commit":"3638289fb57bdabec00deda98ee9624a35f5d66a","id":"postgresql:REL_19_BETA3:src/backend/utils/errcodes.txt","major":"19","parsed_path":"raw/definitions/REL_19_BETA3.parsed.json","path":"src/backend/utils/errcodes.txt","raw_path":"raw/definitions/REL_19_BETA3.txt","raw_url":"https://raw.githubusercontent.com/postgres/postgres/3638289fb57bdabec00deda98ee9624a35f5d66a/src/backend/utils/errcodes.txt","record_count":268,"release":"19beta3","release_date":"2026-08-13","repository":"https://github.com/postgres/postgres.git","sha256":"cadb9e83cde9a8699a7e74448891ca623af8579ccc8e11c7e533fb47cbc42f89","size":33739,"source_format":"errcodes.txt","source_role":"primary_definition","tag":"REL_19_BETA3","url":"https://github.com/postgres/postgres/blob/3638289fb57bdabec00deda98ee9624a35f5d66a/src/backend/utils/errcodes.txt","version":"19beta3"}],"sqlstate":"42P22","status":"active","usage_evidence":[{"evidence_ids":["postgresql:REL9_1_0:src/backend/utils/errcodes.txt","postgresql:REL9_1_10:src/backend/utils/errcodes.txt","postgresql:REL9_1_11:src/backend/utils/errcodes.txt","postgresql:REL9_1_12:src/backend/utils/errcodes.txt","postgresql:REL9_1_13:src/backend/utils/errcodes.txt","postgresql:REL9_1_14:src/backend/utils/errcodes.txt","postgresql:REL9_1_15:src/backend/utils/errcodes.txt","postgresql:REL9_1_16:src/backend/utils/errcodes.txt","postgresql:REL9_1_17:src/backend/utils/errcodes.txt","postgresql:REL9_1_18:src/backend/utils/errcodes.txt","postgresql:REL9_1_19:src/backend/utils/errcodes.txt","postgresql:REL9_1_1:src/backend/utils/errcodes.txt","postgresql:REL9_1_20:src/backend/utils/errcodes.txt","postgresql:REL9_1_21:src/backend/utils/errcodes.txt","postgresql:REL9_1_22:src/backend/utils/errcodes.txt","postgresql:REL9_1_23:src/backend/utils/errcodes.txt","postgresql:REL9_1_24:src/backend/utils/errcodes.txt","postgresql:REL9_1_2:src/backend/utils/errcodes.txt","postgresql:REL9_1_3:src/backend/utils/errcodes.txt","postgresql:REL9_1_4:src/backend/utils/errcodes.txt","postgresql:REL9_1_5:src/backend/utils/errcodes.txt","postgresql:REL9_1_6:src/backend/utils/errcodes.txt","postgresql:REL9_1_7:src/backend/utils/errcodes.txt","postgresql:REL9_1_8:src/backend/utils/errcodes.txt","postgresql:REL9_1_9:src/backend/utils/errcodes.txt","postgresql:REL9_2_0:src/backend/utils/errcodes.txt","postgresql:REL9_2_10:src/backend/utils/errcodes.txt","postgresql:REL9_2_11:src/backend/utils/errcodes.txt","postgresql:REL9_2_12:src/backend/utils/errcodes.txt","postgresql:REL9_2_13:src/backend/utils/errcodes.txt","postgresql:REL9_2_14:src/backend/utils/errcodes.txt","postgresql:REL9_2_15:src/backend/utils/errcodes.txt","postgresql:REL9_2_16:src/backend/utils/errcodes.txt","postgresql:REL9_2_17:src/backend/utils/errcodes.txt","postgresql:REL9_2_18:src/backend/utils/errcodes.txt","postgresql:REL9_2_19:src/backend/utils/errcodes.txt","postgresql:REL9_2_1:src/backend/utils/errcodes.txt","postgresql:REL9_2_20:src/backend/utils/errcodes.txt","postgresql:REL9_2_21:src/backend/utils/errcodes.txt","postgresql:REL9_2_22:src/backend/utils/errcodes.txt","postgresql:REL9_2_23:src/backend/utils/errcodes.txt","postgresql:REL9_2_24:src/backend/utils/errcodes.txt","postgresql:REL9_2_2:src/backend/utils/errcodes.txt","postgresql:REL9_2_3:src/backend/utils/errcodes.txt","postgresql:REL9_2_4:src/backend/utils/errcodes.txt","postgresql:REL9_2_5:src/backend/utils/errcodes.txt","postgresql:REL9_2_6:src/backend/utils/errcodes.txt","postgresql:REL9_2_7:src/backend/utils/errcodes.txt","postgresql:REL9_2_8:src/backend/utils/errcodes.txt","postgresql:REL9_2_9:src/backend/utils/errcodes.txt","postgresql:REL9_3_0:src/backend/utils/errcodes.txt","postgresql:REL9_3_10:src/backend/utils/errcodes.txt","postgresql:REL9_3_11:src/backend/utils/errcodes.txt","postgresql:REL9_3_12:src/backend/utils/errcodes.txt","postgresql:REL9_3_13:src/backend/utils/errcodes.txt","postgresql:REL9_3_14:src/backend/utils/errcodes.txt","postgresql:REL9_3_15:src/backend/utils/errcodes.txt","postgresql:REL9_3_16:src/backend/utils/errcodes.txt","postgresql:REL9_3_17:src/backend/utils/errcodes.txt","postgresql:REL9_3_18:src/backend/utils/errcodes.txt","postgresql:REL9_3_19:src/backend/utils/errcodes.txt","postgresql:REL9_3_1:src/backend/utils/errcodes.txt","postgresql:REL9_3_20:src/backend/utils/errcodes.txt","postgresql:REL9_3_21:src/backend/utils/errcodes.txt","postgresql:REL9_3_22:src/backend/utils/errcodes.txt","postgresql:REL9_3_23:src/backend/utils/errcodes.txt","postgresql:REL9_3_24:src/backend/utils/errcodes.txt","postgresql:REL9_3_25:src/backend/utils/errcodes.txt","postgresql:REL9_3_2:src/backend/utils/errcodes.txt","postgresql:REL9_3_3:src/backend/utils/errcodes.txt","postgresql:REL9_3_4:src/backend/utils/errcodes.txt","postgresql:REL9_3_5:src/backend/utils/errcodes.txt","postgresql:REL9_3_6:src/backend/utils/errcodes.txt","postgresql:REL9_3_7:src/backend/utils/errcodes.txt","postgresql:REL9_3_8:src/backend/utils/errcodes.txt","postgresql:REL9_3_9:src/backend/utils/errcodes.txt","postgresql:REL9_4_0:src/backend/utils/errcodes.txt","postgresql:REL9_4_10:src/backend/utils/errcodes.txt","postgresql:REL9_4_11:src/backend/utils/errcodes.txt","postgresql:REL9_4_12:src/backend/utils/errcodes.txt","postgresql:REL9_4_13:src/backend/utils/errcodes.txt","postgresql:REL9_4_14:src/backend/utils/errcodes.txt","postgresql:REL9_4_15:src/backend/utils/errcodes.txt","postgresql:REL9_4_16:src/backend/utils/errcodes.txt","postgresql:REL9_4_17:src/backend/utils/errcodes.txt","postgresql:REL9_4_18:src/backend/utils/errcodes.txt","postgresql:REL9_4_19:src/backend/utils/errcodes.txt","postgresql:REL9_4_1:src/backend/utils/errcodes.txt","postgresql:REL9_4_20:src/backend/utils/errcodes.txt","postgresql:REL9_4_21:src/backend/utils/errcodes.txt","postgresql:REL9_4_22:src/backend/utils/errcodes.txt","postgresql:REL9_4_23:src/backend/utils/errcodes.txt","postgresql:REL9_4_24:src/backend/utils/errcodes.txt","postgresql:REL9_4_25:src/backend/utils/errcodes.txt","postgresql:REL9_4_26:src/backend/utils/errcodes.txt","postgresql:REL9_4_2:src/backend/utils/errcodes.txt","postgresql:REL9_4_3:src/backend/utils/errcodes.txt","postgresql:REL9_4_4:src/backend/utils/errcodes.txt","postgresql:REL9_4_5:src/backend/utils/errcodes.txt","postgresql:REL9_4_6:src/backend/utils/errcodes.txt","postgresql:REL9_4_7:src/backend/utils/errcodes.txt","postgresql:REL9_4_8:src/backend/utils/errcodes.txt","postgresql:REL9_4_9:src/backend/utils/errcodes.txt","postgresql:REL9_5_0:src/backend/utils/errcodes.txt","postgresql:REL9_5_10:src/backend/utils/errcodes.txt","postgresql:REL9_5_11:src/backend/utils/errcodes.txt","postgresql:REL9_5_12:src/backend/utils/errcodes.txt","postgresql:REL9_5_13:src/backend/utils/errcodes.txt","postgresql:REL9_5_14:src/backend/utils/errcodes.txt","postgresql:REL9_5_15:src/backend/utils/errcodes.txt","postgresql:REL9_5_16:src/backend/utils/errcodes.txt","postgresql:REL9_5_17:src/backend/utils/errcodes.txt","postgresql:REL9_5_18:src/backend/utils/errcodes.txt","postgresql:REL9_5_19:src/backend/utils/errcodes.txt","postgresql:REL9_5_1:src/backend/utils/errcodes.txt","postgresql:REL9_5_20:src/backend/utils/errcodes.txt","postgresql:REL9_5_21:src/backend/utils/errcodes.txt","postgresql:REL9_5_22:src/backend/utils/errcodes.txt","postgresql:REL9_5_23:src/backend/utils/errcodes.txt","postgresql:REL9_5_24:src/backend/utils/errcodes.txt","postgresql:REL9_5_25:src/backend/utils/errcodes.txt","postgresql:REL9_5_2:src/backend/utils/errcodes.txt","postgresql:REL9_5_3:src/backend/utils/errcodes.txt","postgresql:REL9_5_4:src/backend/utils/errcodes.txt","postgresql:REL9_5_5:src/backend/utils/errcodes.txt","postgresql:REL9_5_6:src/backend/utils/errcodes.txt","postgresql:REL9_5_7:src/backend/utils/errcodes.txt","postgresql:REL9_5_8:src/backend/utils/errcodes.txt","postgresql:REL9_5_9:src/backend/utils/errcodes.txt","postgresql:REL9_6_0:src/backend/utils/errcodes.txt","postgresql:REL9_6_10:src/backend/utils/errcodes.txt","postgresql:REL9_6_11:src/backend/utils/errcodes.txt","postgresql:REL9_6_12:src/backend/utils/errcodes.txt","postgresql:REL9_6_13:src/backend/utils/errcodes.txt","postgresql:REL9_6_14:src/backend/utils/errcodes.txt","postgresql:REL9_6_15:src/backend/utils/errcodes.txt","postgresql:REL9_6_16:src/backend/utils/errcodes.txt","postgresql:REL9_6_17:src/backend/utils/errcodes.txt","postgresql:REL9_6_18:src/backend/utils/errcodes.txt","postgresql:REL9_6_19:src/backend/utils/errcodes.txt","postgresql:REL9_6_1:src/backend/utils/errcodes.txt","postgresql:REL9_6_20:src/backend/utils/errcodes.txt","postgresql:REL9_6_21:src/backend/utils/errcodes.txt","postgresql:REL9_6_22:src/backend/utils/errcodes.txt","postgresql:REL9_6_23:src/backend/utils/errcodes.txt","postgresql:REL9_6_24:src/backend/utils/errcodes.txt","postgresql:REL9_6_2:src/backend/utils/errcodes.txt","postgresql:REL9_6_3:src/backend/utils/errcodes.txt","postgresql:REL9_6_4:src/backend/utils/errcodes.txt","postgresql:REL9_6_5:src/backend/utils/errcodes.txt","postgresql:REL9_6_6:src/backend/utils/errcodes.txt","postgresql:REL9_6_7:src/backend/utils/errcodes.txt","postgresql:REL9_6_8:src/backend/utils/errcodes.txt","postgresql:REL9_6_9:src/backend/utils/errcodes.txt","postgresql:REL_10_0:src/backend/utils/errcodes.txt","postgresql:REL_10_10:src/backend/utils/errcodes.txt","postgresql:REL_10_11:src/backend/utils/errcodes.txt","postgresql:REL_10_12:src/backend/utils/errcodes.txt","postgresql:REL_10_13:src/backend/utils/errcodes.txt","postgresql:REL_10_14:src/backend/utils/errcodes.txt","postgresql:REL_10_15:src/backend/utils/errcodes.txt","postgresql:REL_10_16:src/backend/utils/errcodes.txt","postgresql:REL_10_17:src/backend/utils/errcodes.txt","postgresql:REL_10_18:src/backend/utils/errcodes.txt","postgresql:REL_10_19:src/backend/utils/errcodes.txt","postgresql:REL_10_1:src/backend/utils/errcodes.txt","postgresql:REL_10_20:src/backend/utils/errcodes.txt","postgresql:REL_10_21:src/backend/utils/errcodes.txt","postgresql:REL_10_22:src/backend/utils/errcodes.txt","postgresql:REL_10_23:src/backend/utils/errcodes.txt","postgresql:REL_10_2:src/backend/utils/errcodes.txt","postgresql:REL_10_3:src/backend/utils/errcodes.txt","postgresql:REL_10_4:src/backend/utils/errcodes.txt","postgresql:REL_10_5:src/backend/utils/errcodes.txt","postgresql:REL_10_6:src/backend/utils/errcodes.txt","postgresql:REL_10_7:src/backend/utils/errcodes.txt","postgresql:REL_10_8:src/backend/utils/errcodes.txt","postgresql:REL_10_9:src/backend/utils/errcodes.txt","postgresql:REL_11_0:src/backend/utils/errcodes.txt","postgresql:REL_11_10:src/backend/utils/errcodes.txt","postgresql:REL_11_11:src/backend/utils/errcodes.txt","postgresql:REL_11_12:src/backend/utils/errcodes.txt","postgresql:REL_11_13:src/backend/utils/errcodes.txt","postgresql:REL_11_14:src/backend/utils/errcodes.txt","postgresql:REL_11_15:src/backend/utils/errcodes.txt","postgresql:REL_11_16:src/backend/utils/errcodes.txt","postgresql:REL_11_17:src/backend/utils/errcodes.txt","postgresql:REL_11_18:src/backend/utils/errcodes.txt","postgresql:REL_11_19:src/backend/utils/errcodes.txt","postgresql:REL_11_1:src/backend/utils/errcodes.txt","postgresql:REL_11_20:src/backend/utils/errcodes.txt","postgresql:REL_11_21:src/backend/utils/errcodes.txt","postgresql:REL_11_22:src/backend/utils/errcodes.txt","postgresql:REL_11_2:src/backend/utils/errcodes.txt","postgresql:REL_11_3:src/backend/utils/errcodes.txt","postgresql:REL_11_4:src/backend/utils/errcodes.txt","postgresql:REL_11_5:src/backend/utils/errcodes.txt","postgresql:REL_11_6:src/backend/utils/errcodes.txt","postgresql:REL_11_7:src/backend/utils/errcodes.txt","postgresql:REL_11_8:src/backend/utils/errcodes.txt","postgresql:REL_11_9:src/backend/utils/errcodes.txt","postgresql:REL_12_0:src/backend/utils/errcodes.txt","postgresql:REL_12_10:src/backend/utils/errcodes.txt","postgresql:REL_12_11:src/backend/utils/errcodes.txt","postgresql:REL_12_12:src/backend/utils/errcodes.txt","postgresql:REL_12_13:src/backend/utils/errcodes.txt","postgresql:REL_12_14:src/backend/utils/errcodes.txt","postgresql:REL_12_15:src/backend/utils/errcodes.txt","postgresql:REL_12_16:src/backend/utils/errcodes.txt","postgresql:REL_12_17:src/backend/utils/errcodes.txt","postgresql:REL_12_18:src/backend/utils/errcodes.txt","postgresql:REL_12_19:src/backend/utils/errcodes.txt","postgresql:REL_12_1:src/backend/utils/errcodes.txt","postgresql:REL_12_20:src/backend/utils/errcodes.txt","postgresql:REL_12_21:src/backend/utils/errcodes.txt","postgresql:REL_12_22:src/backend/utils/errcodes.txt","postgresql:REL_12_2:src/backend/utils/errcodes.txt","postgresql:REL_12_3:src/backend/utils/errcodes.txt","postgresql:REL_12_4:src/backend/utils/errcodes.txt","postgresql:REL_12_5:src/backend/utils/errcodes.txt","postgresql:REL_12_6:src/backend/utils/errcodes.txt","postgresql:REL_12_7:src/backend/utils/errcodes.txt","postgresql:REL_12_8:src/backend/utils/errcodes.txt","postgresql:REL_12_9:src/backend/utils/errcodes.txt","postgresql:REL_13_0:src/backend/utils/errcodes.txt","postgresql:REL_13_10:src/backend/utils/errcodes.txt","postgresql:REL_13_11:src/backend/utils/errcodes.txt","postgresql:REL_13_12:src/backend/utils/errcodes.txt","postgresql:REL_13_13:src/backend/utils/errcodes.txt","postgresql:REL_13_14:src/backend/utils/errcodes.txt","postgresql:REL_13_15:src/backend/utils/errcodes.txt","postgresql:REL_13_16:src/backend/utils/errcodes.txt","postgresql:REL_13_17:src/backend/utils/errcodes.txt","postgresql:REL_13_18:src/backend/utils/errcodes.txt","postgresql:REL_13_19:src/backend/utils/errcodes.txt","postgresql:REL_13_1:src/backend/utils/errcodes.txt","postgresql:REL_13_20:src/backend/utils/errcodes.txt","postgresql:REL_13_21:src/backend/utils/errcodes.txt","postgresql:REL_13_22:src/backend/utils/errcodes.txt","postgresql:REL_13_23:src/backend/utils/errcodes.txt","postgresql:REL_13_2:src/backend/utils/errcodes.txt","postgresql:REL_13_3:src/backend/utils/errcodes.txt","postgresql:REL_13_4:src/backend/utils/errcodes.txt","postgresql:REL_13_5:src/backend/utils/errcodes.txt","postgresql:REL_13_6:src/backend/utils/errcodes.txt","postgresql:REL_13_7:src/backend/utils/errcodes.txt","postgresql:REL_13_8:src/backend/utils/errcodes.txt","postgresql:REL_13_9:src/backend/utils/errcodes.txt","postgresql:REL_14_0:src/backend/utils/errcodes.txt","postgresql:REL_14_10:src/backend/utils/errcodes.txt","postgresql:REL_14_11:src/backend/utils/errcodes.txt","postgresql:REL_14_12:src/backend/utils/errcodes.txt","postgresql:REL_14_13:src/backend/utils/errcodes.txt","postgresql:REL_14_14:src/backend/utils/errcodes.txt","postgresql:REL_14_15:src/backend/utils/errcodes.txt","postgresql:REL_14_16:src/backend/utils/errcodes.txt","postgresql:REL_14_17:src/backend/utils/errcodes.txt","postgresql:REL_14_18:src/backend/utils/errcodes.txt","postgresql:REL_14_19:src/backend/utils/errcodes.txt","postgresql:REL_14_1:src/backend/utils/errcodes.txt","postgresql:REL_14_20:src/backend/utils/errcodes.txt","postgresql:REL_14_21:src/backend/utils/errcodes.txt","postgresql:REL_14_22:src/backend/utils/errcodes.txt","postgresql:REL_14_23:src/backend/utils/errcodes.txt","postgresql:REL_14_24:src/backend/utils/errcodes.txt","postgresql:REL_14_2:src/backend/utils/errcodes.txt","postgresql:REL_14_3:src/backend/utils/errcodes.txt","postgresql:REL_14_4:src/backend/utils/errcodes.txt","postgresql:REL_14_5:src/backend/utils/errcodes.txt","postgresql:REL_14_6:src/backend/utils/errcodes.txt","postgresql:REL_14_7:src/backend/utils/errcodes.txt","postgresql:REL_14_8:src/backend/utils/errcodes.txt","postgresql:REL_14_9:src/backend/utils/errcodes.txt","postgresql:REL_15_0:src/backend/utils/errcodes.txt","postgresql:REL_15_10:src/backend/utils/errcodes.txt","postgresql:REL_15_11:src/backend/utils/errcodes.txt","postgresql:REL_15_12:src/backend/utils/errcodes.txt","postgresql:REL_15_13:src/backend/utils/errcodes.txt","postgresql:REL_15_14:src/backend/utils/errcodes.txt","postgresql:REL_15_15:src/backend/utils/errcodes.txt","postgresql:REL_15_16:src/backend/utils/errcodes.txt","postgresql:REL_15_17:src/backend/utils/errcodes.txt","postgresql:REL_15_18:src/backend/utils/errcodes.txt","postgresql:REL_15_19:src/backend/utils/errcodes.txt","postgresql:REL_15_1:src/backend/utils/errcodes.txt","postgresql:REL_15_2:src/backend/utils/errcodes.txt","postgresql:REL_15_3:src/backend/utils/errcodes.txt","postgresql:REL_15_4:src/backend/utils/errcodes.txt","postgresql:REL_15_5:src/backend/utils/errcodes.txt","postgresql:REL_15_6:src/backend/utils/errcodes.txt","postgresql:REL_15_7:src/backend/utils/errcodes.txt","postgresql:REL_15_8:src/backend/utils/errcodes.txt","postgresql:REL_15_9:src/backend/utils/errcodes.txt","postgresql:REL_16_0:src/backend/utils/errcodes.txt","postgresql:REL_16_10:src/backend/utils/errcodes.txt","postgresql:REL_16_11:src/backend/utils/errcodes.txt","postgresql:REL_16_12:src/backend/utils/errcodes.txt","postgresql:REL_16_13:src/backend/utils/errcodes.txt","postgresql:REL_16_14:src/backend/utils/errcodes.txt","postgresql:REL_16_15:src/backend/utils/errcodes.txt","postgresql:REL_16_1:src/backend/utils/errcodes.txt","postgresql:REL_16_2:src/backend/utils/errcodes.txt","postgresql:REL_16_3:src/backend/utils/errcodes.txt","postgresql:REL_16_4:src/backend/utils/errcodes.txt","postgresql:REL_16_5:src/backend/utils/errcodes.txt","postgresql:REL_16_6:src/backend/utils/errcodes.txt","postgresql:REL_16_7:src/backend/utils/errcodes.txt","postgresql:REL_16_8:src/backend/utils/errcodes.txt","postgresql:REL_16_9:src/backend/utils/errcodes.txt","postgresql:REL_17_0:src/backend/utils/errcodes.txt","postgresql:REL_17_10:src/backend/utils/errcodes.txt","postgresql:REL_17_11:src/backend/utils/errcodes.txt","postgresql:REL_17_1:src/backend/utils/errcodes.txt","postgresql:REL_17_2:src/backend/utils/errcodes.txt","postgresql:REL_17_3:src/backend/utils/errcodes.txt","postgresql:REL_17_4:src/backend/utils/errcodes.txt","postgresql:REL_17_5:src/backend/utils/errcodes.txt","postgresql:REL_17_6:src/backend/utils/errcodes.txt","postgresql:REL_17_7:src/backend/utils/errcodes.txt","postgresql:REL_17_8:src/backend/utils/errcodes.txt","postgresql:REL_17_9:src/backend/utils/errcodes.txt","postgresql:REL_18_0:src/backend/utils/errcodes.txt","postgresql:REL_18_1:src/backend/utils/errcodes.txt","postgresql:REL_18_2:src/backend/utils/errcodes.txt","postgresql:REL_18_3:src/backend/utils/errcodes.txt","postgresql:REL_18_4:src/backend/utils/errcodes.txt","postgresql:REL_18_6:src/backend/utils/errcodes.txt","postgresql:REL_19_BETA3:src/backend/utils/errcodes.txt"],"notes":"Presence in a PostgreSQL release definition file is established; runtime throw/use scanning is maintained separately.","scope":"release-definition-catalogue","status":"definition_only"},{"evidence_ids":[],"notes":"No occurrence was found in the locked 7.4..8.4 definition files; 7.0..7.3 source gaps remain explicit.","scope":"pre9-definition-history","status":"unknown"}]},"Evidence":[{"Kind":"claims","Ordinal":0,"ID":"identity.class-and-condition","ServerVersion":null,"Status":null,"Payload":{"claim_id":"identity.class-and-condition","limits":"Identity does not enumerate all source branches or client failures.","method":"Read fixed REL_18_6 errcodes.txt and locked facts.","position":0,"runtime":[],"sources":["src.errcodes.42P22.18.6"],"statement":"42P22 is the indeterminate_collation condition in Class 42."}},{"Kind":"claims","Ordinal":1,"ID":"mechanism.selected-source-path","ServerVersion":null,"Status":null,"Payload":{"claim_id":"mechanism.selected-source-path","limits":"Representative confirmed core paths only; not exhaustive historical or extension coverage.","method":"Read selected resolved report groups and the surrounding fixed caller guards, preserving each caller-specific primary and COLLATE hint.","position":1,"runtime":[],"sources":["src.call.42P22.9663977b60d9074ca1246b2e","src.call.42P22.de5cfc36b17b669d27e71821","src.call.42P22.9001b972a28a8028eebe7eae","src.call.42P22.b8ebf0f4bd61f9bcbbfdb513","src.call.42P22.fcf0f384dd027c687389c530","src.call.42P22.b60a368090edbb3ad28c2b74","src.call.42P22.584d77b09f81511c429fd3bc","src.call.42P22.c024a0dd3694f6694d2b94fc","src.call.42P22.3baebb248e633d9c8e75f53f","src.call.42P22.0c130e4570c3138a788409e1"],"statement":"Selected fixed 18.6 callers raise 42P22 when a required operation has no determinate collation: string hashing or comparison, index or partition expressions, CTAS or view output columns, regular expressions, LIKE or ILIKE, and formatting functions."}},{"Kind":"claims","Ordinal":2,"ID":"boundary.caller-specific-hint","ServerVersion":null,"Status":null,"Payload":{"claim_id":"boundary.caller-specific-hint","limits":"Selected message-role comparison only; no runtime execution is claimed.","method":"Compare the message roles across the selected hash, DDL, regex, pattern, comparison, and formatting report groups.","position":2,"runtime":[],"sources":["src.call.42P22.9663977b60d9074ca1246b2e","src.call.42P22.de5cfc36b17b669d27e71821","src.call.42P22.9001b972a28a8028eebe7eae","src.call.42P22.b8ebf0f4bd61f9bcbbfdb513","src.call.42P22.fcf0f384dd027c687389c530","src.call.42P22.b60a368090edbb3ad28c2b74","src.call.42P22.584d77b09f81511c429fd3bc","src.call.42P22.c024a0dd3694f6694d2b94fc","src.call.42P22.3baebb248e633d9c8e75f53f","src.call.42P22.0c130e4570c3138a788409e1"],"statement":"The fixed callers attach the same explicit-COLLATE hint while naming the operation that lacks a usable collation; the primary message determines which expression or definition boundary to inspect."}},{"Kind":"claims","Ordinal":3,"ID":"versions.catalogue-boundary","ServerVersion":null,"Status":null,"Payload":{"claim_id":"versions.catalogue-boundary","limits":"First observed release is a lower bound, not precise behavioral introduction.","method":"Read locked catalogue facts and definition snapshot.","position":3,"runtime":[],"sources":["src.errcodes.42P22.18.6"],"statement":"Locked catalogue snapshots show this condition by PostgreSQL 9.1.0; source behavior here is fixed at PostgreSQL 18.6."}},{"Kind":"messages","Ordinal":0,"ID":"message.variant-1","ServerVersion":null,"Status":null,"Payload":{"limits":"Placeholders remain dynamic source fields; no concrete runtime value is claimed.","message_id":"message.variant-1","path":"","position":0,"raw":{"detail_templates":[],"hint_templates":["Use the COLLATE clause to set the collation explicitly."],"id":"message.variant-1","limits":"Placeholders remain dynamic source fields; no concrete runtime value is claimed.","primary_template":"could not determine which collation to use for string hashing","roles":[{"role":"errmsg","template":"could not determine which collation to use for string hashing"},{"role":"errhint","template":"Use the COLLATE clause to set the collation explicitly."}],"severity_source":"ERROR","sources":["src.call.42P22.9663977b60d9074ca1246b2e"],"sqlstate":"42P22"},"severity":"ERROR","sources":["src.call.42P22.9663977b60d9074ca1246b2e"],"templates":[{"kind":"primary","literal":"could not determine which collation to use for string hashing","position":0,"role":"","template":"could not determine which collation to use for string hashing"},{"kind":"hint","literal":"Use the COLLATE clause to set the collation explicitly.","position":1,"role":"","template":"Use the COLLATE clause to set the collation explicitly."},{"kind":"primary","literal":"Use the COLLATE clause to set the collation explicitly.","position":2,"role":"errhint","template":"Use the COLLATE clause to set the collation explicitly."}]}},{"Kind":"messages","Ordinal":1,"ID":"message.variant-2","ServerVersion":null,"Status":null,"Payload":{"limits":"Placeholders remain dynamic source fields; no concrete runtime value is claimed.","message_id":"message.variant-2","path":"","position":1,"raw":{"detail_templates":[],"hint_templates":["Use the COLLATE clause to set the collation explicitly."],"id":"message.variant-2","limits":"Placeholders remain dynamic source fields; no concrete runtime value is claimed.","primary_template":"no collation was derived for column \"%s\" with collatable type %s","roles":[{"role":"errmsg","template":"no collation was derived for column \"%s\" with collatable type %s"},{"role":"errhint","template":"Use the COLLATE clause to set the collation explicitly."}],"severity_source":"ERROR","sources":["src.call.42P22.de5cfc36b17b669d27e71821"],"sqlstate":"42P22"},"severity":"ERROR","sources":["src.call.42P22.de5cfc36b17b669d27e71821"],"templates":[{"kind":"primary","literal":"no collation was derived for column \" \" with collatable type","position":0,"role":"","template":"no collation was derived for column \"%s\" with collatable type %s"},{"kind":"hint","literal":"Use the COLLATE clause to set the collation explicitly.","position":1,"role":"","template":"Use the COLLATE clause to set the collation explicitly."},{"kind":"primary","literal":"Use the COLLATE clause to set the collation explicitly.","position":2,"role":"errhint","template":"Use the COLLATE clause to set the collation explicitly."}]}},{"Kind":"messages","Ordinal":2,"ID":"message.variant-3","ServerVersion":null,"Status":null,"Payload":{"limits":"Placeholders remain dynamic source fields; no concrete runtime value is claimed.","message_id":"message.variant-3","path":"","position":2,"raw":{"detail_templates":[],"hint_templates":["Use the COLLATE clause to set the collation explicitly."],"id":"message.variant-3","limits":"Placeholders remain dynamic source fields; no concrete runtime value is claimed.","primary_template":"could not determine which collation to use for index expression","roles":[{"role":"errmsg","template":"could not determine which collation to use for index expression"},{"role":"errhint","template":"Use the COLLATE clause to set the collation explicitly."}],"severity_source":"ERROR","sources":["src.call.42P22.9001b972a28a8028eebe7eae"],"sqlstate":"42P22"},"severity":"ERROR","sources":["src.call.42P22.9001b972a28a8028eebe7eae"],"templates":[{"kind":"primary","literal":"could not determine which collation to use for index expression","position":0,"role":"","template":"could not determine which collation to use for index expression"},{"kind":"hint","literal":"Use the COLLATE clause to set the collation explicitly.","position":1,"role":"","template":"Use the COLLATE clause to set the collation explicitly."},{"kind":"primary","literal":"Use the COLLATE clause to set the collation explicitly.","position":2,"role":"errhint","template":"Use the COLLATE clause to set the collation explicitly."}]}},{"Kind":"messages","Ordinal":3,"ID":"message.variant-4","ServerVersion":null,"Status":null,"Payload":{"limits":"Placeholders remain dynamic source fields; no concrete runtime value is claimed.","message_id":"message.variant-4","path":"","position":3,"raw":{"detail_templates":[],"hint_templates":["Use the COLLATE clause to set the collation explicitly."],"id":"message.variant-4","limits":"Placeholders remain dynamic source fields; no concrete runtime value is claimed.","primary_template":"could not determine which collation to use for partition expression","roles":[{"role":"errmsg","template":"could not determine which collation to use for partition expression"},{"role":"errhint","template":"Use the COLLATE clause to set the collation explicitly."}],"severity_source":"ERROR","sources":["src.call.42P22.b8ebf0f4bd61f9bcbbfdb513"],"sqlstate":"42P22"},"severity":"ERROR","sources":["src.call.42P22.b8ebf0f4bd61f9bcbbfdb513"],"templates":[{"kind":"primary","literal":"could not determine which collation to use for partition expression","position":0,"role":"","template":"could not determine which collation to use for partition expression"},{"kind":"hint","literal":"Use the COLLATE clause to set the collation explicitly.","position":1,"role":"","template":"Use the COLLATE clause to set the collation explicitly."},{"kind":"primary","literal":"Use the COLLATE clause to set the collation explicitly.","position":2,"role":"errhint","template":"Use the COLLATE clause to set the collation explicitly."}]}},{"Kind":"messages","Ordinal":4,"ID":"message.variant-5","ServerVersion":null,"Status":null,"Payload":{"limits":"Placeholders remain dynamic source fields; no concrete runtime value is claimed.","message_id":"message.variant-5","path":"","position":4,"raw":{"detail_templates":[],"hint_templates":["Use the COLLATE clause to set the collation explicitly."],"id":"message.variant-5","limits":"Placeholders remain dynamic source fields; no concrete runtime value is claimed.","primary_template":"could not determine which collation to use for view column \"%s\"","roles":[{"role":"errmsg","template":"could not determine which collation to use for view column \"%s\""},{"role":"errhint","template":"Use the COLLATE clause to set the collation explicitly."}],"severity_source":"ERROR","sources":["src.call.42P22.fcf0f384dd027c687389c530"],"sqlstate":"42P22"},"severity":"ERROR","sources":["src.call.42P22.fcf0f384dd027c687389c530"],"templates":[{"kind":"primary","literal":"could not determine which collation to use for view column \" \"","position":0,"role":"","template":"could not determine which collation to use for view column \"%s\""},{"kind":"hint","literal":"Use the COLLATE clause to set the collation explicitly.","position":1,"role":"","template":"Use the COLLATE clause to set the collation explicitly."},{"kind":"primary","literal":"Use the COLLATE clause to set the collation explicitly.","position":2,"role":"errhint","template":"Use the COLLATE clause to set the collation explicitly."}]}},{"Kind":"messages","Ordinal":5,"ID":"message.variant-6","ServerVersion":null,"Status":null,"Payload":{"limits":"Placeholders remain dynamic source fields; no concrete runtime value is claimed.","message_id":"message.variant-6","path":"","position":5,"raw":{"detail_templates":[],"hint_templates":["Use the COLLATE clause to set the collation explicitly."],"id":"message.variant-6","limits":"Placeholders remain dynamic source fields; no concrete runtime value is claimed.","primary_template":"could not determine which collation to use for regular expression","roles":[{"role":"errmsg","template":"could not determine which collation to use for regular expression"},{"role":"errhint","template":"Use the COLLATE clause to set the collation explicitly."}],"severity_source":"ERROR","sources":["src.call.42P22.b60a368090edbb3ad28c2b74"],"sqlstate":"42P22"},"severity":"ERROR","sources":["src.call.42P22.b60a368090edbb3ad28c2b74"],"templates":[{"kind":"primary","literal":"could not determine which collation to use for regular expression","position":0,"role":"","template":"could not determine which collation to use for regular expression"},{"kind":"hint","literal":"Use the COLLATE clause to set the collation explicitly.","position":1,"role":"","template":"Use the COLLATE clause to set the collation explicitly."},{"kind":"primary","literal":"Use the COLLATE clause to set the collation explicitly.","position":2,"role":"errhint","template":"Use the COLLATE clause to set the collation explicitly."}]}},{"Kind":"messages","Ordinal":6,"ID":"message.variant-7","ServerVersion":null,"Status":null,"Payload":{"limits":"Placeholders remain dynamic source fields; no concrete runtime value is claimed.","message_id":"message.variant-7","path":"","position":6,"raw":{"detail_templates":[],"hint_templates":["Use the COLLATE clause to set the collation explicitly."],"id":"message.variant-7","limits":"Placeholders remain dynamic source fields; no concrete runtime value is claimed.","primary_template":"could not determine which collation to use for %s function","roles":[{"role":"errmsg","template":"could not determine which collation to use for %s function"},{"role":"errhint","template":"Use the COLLATE clause to set the collation explicitly."}],"severity_source":"ERROR","sources":["src.call.42P22.584d77b09f81511c429fd3bc"],"sqlstate":"42P22"},"severity":"ERROR","sources":["src.call.42P22.584d77b09f81511c429fd3bc"],"templates":[{"kind":"primary","literal":"could not determine which collation to use for function","position":0,"role":"","template":"could not determine which collation to use for %s function"},{"kind":"hint","literal":"Use the COLLATE clause to set the collation explicitly.","position":1,"role":"","template":"Use the COLLATE clause to set the collation explicitly."},{"kind":"primary","literal":"Use the COLLATE clause to set the collation explicitly.","position":2,"role":"errhint","template":"Use the COLLATE clause to set the collation explicitly."}]}},{"Kind":"messages","Ordinal":7,"ID":"message.variant-8","ServerVersion":null,"Status":null,"Payload":{"limits":"Placeholders remain dynamic source fields; no concrete runtime value is claimed.","message_id":"message.variant-8","path":"","position":7,"raw":{"detail_templates":[],"hint_templates":["Use the COLLATE clause to set the collation explicitly."],"id":"message.variant-8","limits":"Placeholders remain dynamic source fields; no concrete runtime value is claimed.","primary_template":"could not determine which collation to use for LIKE","roles":[{"role":"errmsg","template":"could not determine which collation to use for LIKE"},{"role":"errhint","template":"Use the COLLATE clause to set the collation explicitly."}],"severity_source":"ERROR","sources":["src.call.42P22.c024a0dd3694f6694d2b94fc"],"sqlstate":"42P22"},"severity":"ERROR","sources":["src.call.42P22.c024a0dd3694f6694d2b94fc"],"templates":[{"kind":"primary","literal":"could not determine which collation to use for LIKE","position":0,"role":"","template":"could not determine which collation to use for LIKE"},{"kind":"hint","literal":"Use the COLLATE clause to set the collation explicitly.","position":1,"role":"","template":"Use the COLLATE clause to set the collation explicitly."},{"kind":"primary","literal":"Use the COLLATE clause to set the collation explicitly.","position":2,"role":"errhint","template":"Use the COLLATE clause to set the collation explicitly."}]}},{"Kind":"messages","Ordinal":8,"ID":"message.variant-9","ServerVersion":null,"Status":null,"Payload":{"limits":"Placeholders remain dynamic source fields; no concrete runtime value is claimed.","message_id":"message.variant-9","path":"","position":8,"raw":{"detail_templates":[],"hint_templates":["Use the COLLATE clause to set the collation explicitly."],"id":"message.variant-9","limits":"Placeholders remain dynamic source fields; no concrete runtime value is claimed.","primary_template":"could not determine which collation to use for ILIKE","roles":[{"role":"errmsg","template":"could not determine which collation to use for ILIKE"},{"role":"errhint","template":"Use the COLLATE clause to set the collation explicitly."}],"severity_source":"ERROR","sources":["src.call.42P22.3baebb248e633d9c8e75f53f"],"sqlstate":"42P22"},"severity":"ERROR","sources":["src.call.42P22.3baebb248e633d9c8e75f53f"],"templates":[{"kind":"primary","literal":"could not determine which collation to use for ILIKE","position":0,"role":"","template":"could not determine which collation to use for ILIKE"},{"kind":"hint","literal":"Use the COLLATE clause to set the collation explicitly.","position":1,"role":"","template":"Use the COLLATE clause to set the collation explicitly."},{"kind":"primary","literal":"Use the COLLATE clause to set the collation explicitly.","position":2,"role":"errhint","template":"Use the COLLATE clause to set the collation explicitly."}]}},{"Kind":"messages","Ordinal":9,"ID":"message.variant-10","ServerVersion":null,"Status":null,"Payload":{"limits":"Placeholders remain dynamic source fields; no concrete runtime value is claimed.","message_id":"message.variant-10","path":"","position":9,"raw":{"detail_templates":[],"hint_templates":["Use the COLLATE clause to set the collation explicitly."],"id":"message.variant-10","limits":"Placeholders remain dynamic source fields; no concrete runtime value is claimed.","primary_template":"could not determine which collation to use for string comparison","roles":[{"role":"errmsg","template":"could not determine which collation to use for string comparison"},{"role":"errhint","template":"Use the COLLATE clause to set the collation explicitly."}],"severity_source":"ERROR","sources":["src.call.42P22.0c130e4570c3138a788409e1"],"sqlstate":"42P22"},"severity":"ERROR","sources":["src.call.42P22.0c130e4570c3138a788409e1"],"templates":[{"kind":"primary","literal":"could not determine which collation to use for string comparison","position":0,"role":"","template":"could not determine which collation to use for string comparison"},{"kind":"hint","literal":"Use the COLLATE clause to set the collation explicitly.","position":1,"role":"","template":"Use the COLLATE clause to set the collation explicitly."},{"kind":"primary","literal":"Use the COLLATE clause to set the collation explicitly.","position":2,"role":"errhint","template":"Use the COLLATE clause to set the collation explicitly."}]}},{"Kind":"sources","Ordinal":0,"ID":"src.errcodes.42P22.18.6","ServerVersion":null,"Status":null,"Payload":{"commit":"724edf9bde9d356724ad384a2e196edc3c9f80f7","docs_url":"","kind":"upstream_source","location":"line 353","path":"src/backend/utils/errcodes.txt","position":0,"sha256":"6e8de346643ba84aa3c9c6a73360acfc7b2dfb89162c06c08ce9bf5bcd5bbcba","source_id":"src.errcodes.42P22.18.6","tag":"REL_18_6","url":"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/utils/errcodes.txt#L353"}},{"Kind":"sources","Ordinal":1,"ID":"src.call.42P22.9663977b60d9074ca1246b2e","ServerVersion":null,"Status":null,"Payload":{"commit":"724edf9bde9d356724ad384a2e196edc3c9f80f7","docs_url":"","kind":"upstream_source","location":"lines 278-281","path":"src/backend/access/hash/hashfunc.c","position":1,"sha256":"ada1fcc9863e6f9c91b4aed90c37cbc50717a74a1ebdd050c3eb33db46f24f22","source_id":"src.call.42P22.9663977b60d9074ca1246b2e","tag":"REL_18_6","url":"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/access/hash/hashfunc.c#L278-L281"}},{"Kind":"sources","Ordinal":2,"ID":"src.call.42P22.de5cfc36b17b669d27e71821","ServerVersion":null,"Status":null,"Payload":{"commit":"724edf9bde9d356724ad384a2e196edc3c9f80f7","docs_url":"","kind":"upstream_source","location":"lines 198-203","path":"src/backend/commands/createas.c","position":2,"sha256":"f484080c0ec3d303040d94c15817d7dd86aed8e716afd81b45718d4b4443e9c7","source_id":"src.call.42P22.de5cfc36b17b669d27e71821","tag":"REL_18_6","url":"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/commands/createas.c#L198-L203"}},{"Kind":"sources","Ordinal":3,"ID":"src.call.42P22.9001b972a28a8028eebe7eae","ServerVersion":null,"Status":null,"Payload":{"commit":"724edf9bde9d356724ad384a2e196edc3c9f80f7","docs_url":"","kind":"upstream_source","location":"lines 2105-2108","path":"src/backend/commands/indexcmds.c","position":3,"sha256":"0bdae365f207ab82865806c5983cac94c5c062e7a61ab7c883ccb7e2015fad36","source_id":"src.call.42P22.9001b972a28a8028eebe7eae","tag":"REL_18_6","url":"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/commands/indexcmds.c#L2105-L2108"}},{"Kind":"sources","Ordinal":4,"ID":"src.call.42P22.b8ebf0f4bd61f9bcbbfdb513","ServerVersion":null,"Status":null,"Payload":{"commit":"724edf9bde9d356724ad384a2e196edc3c9f80f7","docs_url":"","kind":"upstream_source","location":"lines 20041-20044","path":"src/backend/commands/tablecmds.c","position":4,"sha256":"422dc8e833df4940755973c757e338295822ba3e4c7266c40669f49f96eb15a9","source_id":"src.call.42P22.b8ebf0f4bd61f9bcbbfdb513","tag":"REL_18_6","url":"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/commands/tablecmds.c#L20041-L20044"}},{"Kind":"sources","Ordinal":5,"ID":"src.call.42P22.fcf0f384dd027c687389c530","ServerVersion":null,"Status":null,"Payload":{"commit":"724edf9bde9d356724ad384a2e196edc3c9f80f7","docs_url":"","kind":"upstream_source","location":"lines 76-80","path":"src/backend/commands/view.c","position":5,"sha256":"53c9efccdefa62fa522cd16315ad925779da1bd76a92324df3ba340c967d953c","source_id":"src.call.42P22.fcf0f384dd027c687389c530","tag":"REL_18_6","url":"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/commands/view.c#L76-L80"}},{"Kind":"sources","Ordinal":6,"ID":"src.call.42P22.b60a368090edbb3ad28c2b74","ServerVersion":null,"Status":null,"Payload":{"commit":"724edf9bde9d356724ad384a2e196edc3c9f80f7","docs_url":"","kind":"upstream_source","location":"lines 239-242","path":"src/backend/regex/regc_pg_locale.c","position":6,"sha256":"3dab816f911f623d39966e5b3a8f1d82d4f2ff8b697496d754aba52848c54c4e","source_id":"src.call.42P22.b60a368090edbb3ad28c2b74","tag":"REL_18_6","url":"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/regex/regc_pg_locale.c#L239-L242"}},{"Kind":"sources","Ordinal":7,"ID":"src.call.42P22.584d77b09f81511c429fd3bc","ServerVersion":null,"Status":null,"Payload":{"commit":"724edf9bde9d356724ad384a2e196edc3c9f80f7","docs_url":"","kind":"upstream_source","location":"lines 1654-1658","path":"src/backend/utils/adt/formatting.c","position":7,"sha256":"a22651cc223e93c1879420004027325579fc79a3ba8684408496149164a2220c","source_id":"src.call.42P22.584d77b09f81511c429fd3bc","tag":"REL_18_6","url":"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/utils/adt/formatting.c#L1654-L1658"}},{"Kind":"sources","Ordinal":8,"ID":"src.call.42P22.c024a0dd3694f6694d2b94fc","ServerVersion":null,"Status":null,"Payload":{"commit":"724edf9bde9d356724ad384a2e196edc3c9f80f7","docs_url":"","kind":"upstream_source","location":"lines 160-163","path":"src/backend/utils/adt/like.c","position":8,"sha256":"7665cf5399a9090f2bd864c7442ae22af68d2bc9368bf06b8ebef48613a1ed08","source_id":"src.call.42P22.c024a0dd3694f6694d2b94fc","tag":"REL_18_6","url":"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/utils/adt/like.c#L160-L163"}},{"Kind":"sources","Ordinal":9,"ID":"src.call.42P22.3baebb248e633d9c8e75f53f","ServerVersion":null,"Status":null,"Payload":{"commit":"724edf9bde9d356724ad384a2e196edc3c9f80f7","docs_url":"","kind":"upstream_source","location":"lines 191-194","path":"src/backend/utils/adt/like.c","position":9,"sha256":"7665cf5399a9090f2bd864c7442ae22af68d2bc9368bf06b8ebef48613a1ed08","source_id":"src.call.42P22.3baebb248e633d9c8e75f53f","tag":"REL_18_6","url":"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/utils/adt/like.c#L191-L194"}},{"Kind":"sources","Ordinal":10,"ID":"src.call.42P22.0c130e4570c3138a788409e1","ServerVersion":null,"Status":null,"Payload":{"commit":"724edf9bde9d356724ad384a2e196edc3c9f80f7","docs_url":"","kind":"upstream_source","location":"lines 735-738","path":"src/backend/utils/adt/varchar.c","position":10,"sha256":"aee29b2c745b34a7299d158b8e8c60b2c6c4900a5e3751fd211acea81b431f42","source_id":"src.call.42P22.0c130e4570c3138a788409e1","tag":"REL_18_6","url":"https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/utils/adt/varchar.c#L735-L738"}},{"Kind":"sources","Ordinal":11,"ID":"src.calls.REL_18_6.42P22","ServerVersion":null,"Status":null,"Payload":{"commit":"","docs_url":"","kind":"local_artifact","location":"","path":"raw/calls/REL_18_6.jsonl","position":11,"sha256":"9ee8a0e81d8f0825c5c1ae45583439859a26e602bdd4ce2f2a62aa278867ccbf","source_id":"src.calls.REL_18_6.42P22","tag":"","url":""}}]}
