Am Montag, 27. Februar 2006 19:42 schrieb Tom Lane: > The free-space map is not the hard part of the problem. You still have > to VACUUM --- that is, wait until the dead tuple is not only committed > dead but is certainly dead to all onlooker transactions, and then remove > its index entries as well as the tuple itself. The first part of this > makes it impossible for a transaction to be responsible for vacuuming > its own detritus.
I'm not sure if I made myself clear. The idea is that you fill the free-space map early with opportunitistic entries in the hope that most updates and deletes go through "soon". That is, these entries will be invalid for a short time but hopefully by the time another write looks at them, the entries will have become valid. That way you don't actually have to run vacuum on these deleted rows. -- Peter Eisentraut http://developer.postgresql.org/~petere/ ---------------------------(end of broadcast)--------------------------- TIP 4: Have you searched our list archives? http://archives.postgresql.org