Re: File versioning (was: Big 7.1 open items)
От | Tom Lane |
---|---|
Тема | Re: File versioning (was: Big 7.1 open items) |
Дата | |
Msg-id | 17015.962030551@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | File versioning (was: Big 7.1 open items) (Zeugswetter Andreas SB <ZeugswetterA@wien.spardat.at>) |
Список | pgsql-hackers |
Zeugswetter Andreas SB <ZeugswetterA@Wien.Spardat.at> writes: > I do not think the only problem of a failing rename of "temp" to "new" > on startup rollforward is issue enough to justify the additional complexity > a version implys. If that were the only reason for it then I wouldn't feel it was so essential. However, it will also let us fix CLUSTER, vacuuming of indexes, ALTER TABLE DROP COLUMN with physical removal of the column, etc etc. Making the world safe for rollbackable RENAME/DROP/TRUNCATE TABLE is just one of the benefits. Versioning also eliminates a whole host of problems at the bufmgr/smgr level that are caused by having to cope with relation files getting renamed out from under you. We have painfully eliminated some of these problems over the past couple of years by ad-hoc, ugly techniques like flushing the buffer cache when doing a rename. But who's to say there are not more such bugs left? In short, I think versioning is far *less* complex, not to mention more reliable, than the kluges we need to use to work around the lack of it. regards, tom lane
В списке pgsql-hackers по дате отправления: