On Wed, 2022-10-19 at 09:50 +0300, Yavuz TANRIVERDİ wrote:
> i have an
> "ERROR: UNION types "char" and text cannot be matched CASE WHEN indisprimary THEN"
> error from
>
https://github.com/yiisoft/yii/blob/e7c298343bf1f76186d443b62ff853d2d36e19f0/framework/db/schema/pgsql/CPgsqlSchema.php#L233
> I read release notes, but can't find any related change,
> It works for PostgreSQL 14.5 but fails with PostgreSQL 15.0, a test sample below.
> Is this error expected ?
Yes, it is. See this paragraph from the release notes
(https://www.postgresql.org/docs/current/release-15.html#id-1.11.6.5.5.13):
- Create a new pg_type.typcategory value for "char" (Tom Lane)
Some other internal-use-only types have also been assigned to this category.
Perhaps that should have been listed as a potential compatibility break, but
the documentation explicity says that "char" is not intended for use by the
end user (https://www.postgresql.org/docs/current/datatype-character.html):
> These are not intended for general-purpose use, only for use in the internal system catalogs.
You will have to add an explicit type cast.
Yours,
Laurenz Albe