Re: field error on refreshed materialized view

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: field error on refreshed materialized view
Дата
Msg-id 456737.1706218724@sss.pgh.pa.us
обсуждение исходный текст
Ответ на field error on refreshed materialized view  (Michael Nolan <htfoot@gmail.com>)
Ответы Re: field error on refreshed materialized view
Список pgsql-general
Michael Nolan <htfoot@gmail.com> writes:
> On the 10.4 server this materialized view works, but on the 16.1
> server it fails:

> uscf=# refresh materialized view uscf_vip;
> refresh materialized view uscf_vip;
> ERROR: value too long for type character varying(255)

> Both materialized view tables appear to be identical.  (We did a
> restore from a recent database dump to populate the new server.)

> I don't see anything in the log files to help me determine which field
> or row is causing the error.  As far as I can tell, encoding is the
> same on both versions, but there could be issues in how the mysql
> server is coding non-ASCII characters.

Yeah, an encoding discrepancy could explain this, by causing the
server to count characters differently than before.  (Note that
we consider varchar(255) to allow 255 characters, not 255 bytes.)

One idea for tracking it down could be to remove or increase all the
varchar limits in the matview declaration, load the data, and then
probe for bad entries with something like "select * from matview where
length(some_varchar_field) > 255".

            regards, tom lane



В списке pgsql-general по дате отправления:

Предыдущее
От: Adrian Klaver
Дата:
Сообщение: Re: field error on refreshed materialized view
Следующее
От: Michael Nolan
Дата:
Сообщение: Re: field error on refreshed materialized view