Re: A bug with ALTER TABLE SET WITHOUT OIDS in CVS HEAD

Поиск
Список
Период
Сортировка
От Heikki Linnakangas
Тема Re: A bug with ALTER TABLE SET WITHOUT OIDS in CVS HEAD
Дата
Msg-id 491205E4.5020006@enterprisedb.com
обсуждение исходный текст
Ответ на Re: A bug with ALTER TABLE SET WITHOUT OIDS in CVS HEAD  (Alvaro Herrera <alvherre@commandprompt.com>)
Список pgsql-hackers
Alvaro Herrera wrote:
> Heikki Linnakangas wrote:
> 
>> made this test case crash:
>>
>> CREATE TABLE xtable (padding char(2000)) WITH OIDS;
>> INSERT INTO xtable  VALUES('1');
>> ALTER TABLE xtable SET WITHOUT OIDS;
>> INSERT INTO xtable (SELECT * FROM xtable);
>>
>> with assertion failure:
>>
>> TRAP: FailedAssertion("!(!(tup->t_data->t_infomask & 0x0008))", File:  
>> "heapam.c", Line: 1782)

That line number is wrong on CVS HEAD, BTW. I think I copy-pasted that 
from an old checkout. It's really:

TRAP: FailedAssertion("!(!(tup->t_data->t_infomask & 0x0008))", File: 
"heapam.c", Line: 1855)

> I think the fix is to just remove the Assert() ...

I don't think we want to insert tuples with OIDs to a table after SET 
WITHOUT OIDS. It would be a waste of space. And bizarre.

--   Heikki Linnakangas  EnterpriseDB   http://www.enterprisedb.com


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

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: [WIP] In-place upgrade
Следующее
От: Heikki Linnakangas
Дата:
Сообщение: Re: Toast bug in CVS HEAD