PREPARE(d) statements and modifying columns

Поиск
Список
Период
Сортировка
От Kris Jurka
Тема PREPARE(d) statements and modifying columns
Дата
Msg-id Pine.BSO.4.56.0406271751370.18065@leary.csoft.net
обсуждение исходный текст
Ответы Re: PREPARE(d) statements and modifying columns
Список pgsql-bugs
There are problems when a prepared statement's underlying table's column's
type is modified.  With 7.5 and using the new ALTER TYPE it causes a
backend crash.  Using the old ADD/UPDATE/DROP/RENAME method causes
incorrect data to be returned.

CREATE TABLE mytab (a int);
INSERT INTO mytab VALUES (1);
PREPARE mystat AS SELECT a FROM mytab;

and then:

ALTER TABLE mytab ALTER COLUMN a TYPE bigint USING (a+1);
EXECUTE mystat;

or:

ALTER TABLE mytab ADD COLUMN b bigint;
UPDATE mytab SET b = a+1;
ALTER TABLE mytab DROP COLUMN a;
ALTER TABLE mytab RENAME COLUMN b TO a;
EXECUTE mystat;


Kris Jurka

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

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: BUG #1184: listeners not cleaned on crash
Следующее
От: Michael Meskes
Дата:
Сообщение: Re: Embedded SQL library bug