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


Reply via email to