Alvaro Herrera <[EMAIL PROTECTED]> writes: > So for you it would certainly help a lot to be able to vacuum the first > X pages of the big table, stop, release locks, create new transaction, > continue with the next X pages, lather, rinse, repeat.
> This is perfectly doable, it only needs enough motivation from a > knowledgeable person. Bruce and I were discussing this the other day; it'd be pretty easy to make plain VACUUM start a fresh transaction immediately after it finishes a scan heap/clean indexes/clean heap cycle. The infrastructure for this (in particular, session-level locks that won't be lost by closing the xact) is all there. You'd have to figure out how often to start a new xact ... every cycle is probably too often, at least for smaller maintenance_work_mem settings ... but it'd not be hard or involve any strange changes in system semantics. regards, tom lane ---------------------------(end of broadcast)--------------------------- TIP 4: Have you searched our list archives? http://archives.postgresql.org