Clean up a number of autovacuum loose ends. Make the stats collector
Tom Lane <tgl@sss.pgh.pa.us>
Clean up a number of autovacuum loose ends. Make the stats collector track shared relations in a separate hashtable, so that operations done from different databases are counted correctly. Add proper support for anti-XID-wraparound vacuuming, even in databases that are never connected to and so have no stats entries. Miscellaneous other bug fixes. Alvaro Herrera, some additional fixes by Tom Lane.
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/access/transam/xlog.c | modified | +31 −1 |
| src/backend/commands/analyze.c | modified | +7 −4 |
| src/backend/commands/vacuum.c | modified | +9 −7 |
| src/backend/commands/vacuumlazy.c | modified | +3 −3 |
| src/backend/libpq/hba.c | modified | +6 −4 |
| src/backend/postmaster/autovacuum.c | modified | +167 −148 |
| src/backend/postmaster/pgstat.c | modified | +174 −82 |
| src/backend/postmaster/postmaster.c | modified | +6 −6 |
| src/backend/utils/init/postinit.c | modified | +7 −4 |
| src/backend/utils/misc/guc.c | modified | +2 −2 |
| src/include/access/xlog.h | modified | +2 −1 |
| src/include/libpq/hba.h | modified | +3 −3 |
| src/include/pgstat.h | modified | +6 −5 |