]> granicus.if.org Git - postgresql/commit
Improve the -l (limit) option recently added to contrib/vacuumlo.
authorTom Lane <tgl@sss.pgh.pa.us>
Tue, 20 Mar 2012 23:05:08 +0000 (19:05 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Tue, 20 Mar 2012 23:05:44 +0000 (19:05 -0400)
commit64c604898e812aa93c124c666e8709fff1b8dd26
tree77fad7849276fa6c8e3396b256279222c81ec509
parent9d23a70d513aa1312135d6cedd444e7e3e933edb
Improve the -l (limit) option recently added to contrib/vacuumlo.

Instead of just stopping after removing an arbitrary subset of orphaned
large objects, commit and start a new transaction after each -l objects.
This is just as effective as the original patch at limiting the number of
locks used, and it doesn't require doing the OID collection process
repeatedly to get everything.  Since the option no longer changes the
fundamental behavior of vacuumlo, and it avoids a known server-side
limitation, enable it by default (with a default limit of 1000 LOs per
transaction).

In passing, be more careful about properly quoting the names of tables
and fields, and do some other cosmetic cleanup.
contrib/vacuumlo/vacuumlo.c
doc/src/sgml/vacuumlo.sgml