Skip to content

2200G — most_specific_type_mismatch

Source-backed reference for PostgreSQL SQLSTATE 2200G.

2200G

At a glance

This condition names a most-specific-type mismatch during type resolution. No fixed PostgreSQL 18.6 emitting path was resolved in the bounded call scan, so the page stays conditional and does not turn a generic cast or operator error into 2200G.

Field Value
SQLSTATE 2200G
Condition most_specific_type_mismatch
Status active
Known present by 7.4
Locked snapshots 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, 19beta3
Macros ERRCODE_MOST_SPECIFIC_TYPE_MISMATCH
Aliases

Meaning

This condition concerns type selection when the most specific common type cannot be chosen for the operation.

Diagnosis

Use the full message and the expression or routine signature involved. Inspect unknown literals, polymorphic arguments, overloaded operators, and explicit casts at the point named by the diagnostic. If the server reports 42804 or 42846 instead, follow that actual code; a type mismatch by itself is not evidence for 2200G.

Response

Correct the named expression’s type resolution by making the intended type explicit or fixing the routine signature, after confirming the server’s actual SQLSTATE.

Versions

The locked catalogue records this condition from 7.4; fixed source coverage is PostgreSQL 18.6.

22003, 42804

Sources

The fixed definition is confirmed; this bounded scan did not resolve a native emitting function to cite. The structured evidence record retains the definition, message, and scope boundaries. The catalogue definition is confirmed; an emitting function and message template were not resolved in this scan. A wrapper or extension may own a use, so preserve its actual context when investigating.