Re: BUG #17465: Wrong error message while trying to change system column type.

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: BUG #17465: Wrong error message while trying to change system column type.
Дата
Msg-id 2283491.1650296211@sss.pgh.pa.us
обсуждение исходный текст
Ответ на BUG #17465: Wrong error message while trying to change system column type.  (PG Bug reporting form <noreply@postgresql.org>)
Список pgsql-bugs
PG Bug reporting form <noreply@postgresql.org> writes:
> accidentally I tried to change a system column data type on Windows and got
> a strange error message "no owned sequence found":

> postgres=# alter table t1 alter column cmin type text;
> ERROR:  no owned sequence found
> postgres=# alter table t1 alter column cmax type text;
> ERROR:  cannot alter system column "cmax"

Yeah, same here.

> I think the ATParseTransformCmd() function needs the same check as the check
> in the ATPrepAlterColumnType() function.

That seems pretty duplicative.  I think it's sufficient to do something
like

-                    if (TupleDescAttr(tupdesc, attnum - 1)->attidentity)
+                    if (attnum > 0 &&
+                        TupleDescAttr(tupdesc, attnum - 1)->attidentity)

in the faulty code, and let the actual error message come out where
it does now.

Will fix, thanks for the report!

            regards, tom lane



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

Предыдущее
От: PG Bug reporting form
Дата:
Сообщение: BUG #17465: Wrong error message while trying to change system column type.
Следующее
От: PG Bug reporting form
Дата:
Сообщение: BUG #17466: Is it possible to supplement the default compilation options of CFLAGS in configure file?