Peter Eisentraut <[EMAIL PROTECTED]> writes: > The following happens in latest CVS and a fresh database: > create table test (a int); > insert into test values (1); > alter table test add column b text check (b <> '');
This bug's been there awhile I fear. The failure occurs when AlterTableAddColumn needs to add a check constraint AND the new column causes AlterTableCreateToastTable to do its thing. The reason there is a bug is that AlterTableCreateToastTable gratuitously does a heap_mark4update, thereby selecting the un-updated version of the pg_class tuple as its basis for modification (and ignoring the HeapTupleSelfUpdated return code that warned that there was a problem). I've said before that I do not like heap_mark4update in catalog manipulations, and here's a perfect example of why it's a bad idea. regards, tom lane ---------------------------(end of broadcast)--------------------------- TIP 2: you can get off all lists at once with the unregister command (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])