On Wed, 21 Jan 2004, Christopher Kings-Lynne wrote: > This is what we did: > > 0. BEGIN; > > 1. ALTER TABLE ... SET WITHOUT OIDS
> 12. ROLLBACK; > > 13. VACUUM FULL forums_posts; The problem here is that this conditional doesn't take into account the change in state which the above transaction causes: if (onerel->rd_rel->relhasoids && !OidIsValid(HeapTupleGetOid(&tuple))) Tuples inserted after step one have no (valid) OID. However, since we rollback, the change to pg_class.relhasoids => 'f' is rolled back. The only solution I can think of is removing the test or storing relhasoids as a per tuple flag (argh). Gavin ---------------------------(end of broadcast)--------------------------- TIP 2: you can get off all lists at once with the unregister command (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])