postgresql/src/backend
Alvaro Herrera f54106f77e Fix full-table-vacuum request mechanism for MultiXactIds
While autovacuum dutifully launched anti-multixact-wraparound vacuums
when the multixact "age" was reached, the vacuum code was not aware that
it needed to make them be full table vacuums.  As the resulting
partial-table vacuums aren't capable of actually increasing relminmxid,
autovacuum continued to launch anti-wraparound vacuums that didn't have
the intended effect, until age of relfrozenxid caused the vacuum to
finally be a full table one via vacuum_freeze_table_age.

To fix, introduce logic for multixacts similar to that for plain
TransactionIds, using the same GUCs.

Backpatch to 9.3, where permanent MultiXactIds were introduced.

Andres Freund, some cleanup by Álvaro
2013-11-29 21:47:13 -03:00
..
access Fix full-table-vacuum request mechanism for MultiXactIds 2013-11-29 21:47:13 -03:00
bootstrap Prevent memory leaks from accumulating across printtup() calls. 2013-11-03 11:33:05 -05:00
catalog Refine our definition of what constitutes a system relation. 2013-11-28 20:57:20 -05:00
commands Fix full-table-vacuum request mechanism for MultiXactIds 2013-11-29 21:47:13 -03:00
executor Support multi-argument UNNEST(), and TABLE() syntax for multiple functions. 2013-11-21 19:37:20 -05:00
foreign Arrange to cache FdwRoutine structs in foreign tables' relcache entries. 2013-03-06 23:48:09 -05:00
lib Use improved vsnprintf calling logic in more places. 2013-10-24 21:43:57 -04:00
libpq Fix new and latent bugs with errno handling in secure_read/secure_write. 2013-11-24 13:09:38 -05:00
main Renovate display of non-ASCII messages on Windows. 2013-06-26 11:17:33 -04:00
nodes Support multi-argument UNNEST(), and TABLE() syntax for multiple functions. 2013-11-21 19:37:20 -05:00
optimizer Refine our definition of what constitutes a system relation. 2013-11-28 20:57:20 -05:00
parser Fix array slicing of int2vector and oidvector values. 2013-11-23 20:03:56 -05:00
po Translation updates 2013-10-07 16:51:52 -04:00
port Remove IRIX port. 2013-10-18 08:14:21 -04:00
postmaster Fix assorted race conditions in the new timeout infrastructure. 2013-11-29 16:41:00 -05:00
regex Fix regex match failures for backrefs combined with non-greedy quantifiers. 2013-07-18 21:22:37 -04:00
replication Fix typo in comment. 2013-09-03 13:17:09 +03:00
rewrite Refine our definition of what constitutes a system relation. 2013-11-28 20:57:20 -05:00
snowball Update copyrights for 2013 2013-01-01 17:15:01 -05:00
storage Be sure to release proc->backendLock after SetupLockInTable() failure. 2013-11-29 17:35:09 -05:00
tcop Fix assorted race conditions in the new timeout infrastructure. 2013-11-29 16:41:00 -05:00
tsearch pgindent run for release 9.3 2013-05-29 16:58:43 -04:00
utils Fix assorted race conditions in the new timeout infrastructure. 2013-11-29 16:41:00 -05:00
.gitignore Add gitignore for mingw/cygwin build outputs 2011-06-09 18:11:47 +02:00
Makefile Move relpath() to libpgcommon 2013-02-21 22:46:17 -03:00
common.mk Remove maintainer-check target, fold into normal build 2013-10-10 20:11:56 -04:00
nls.mk Add libpgcommon to backend gettext source files 2013-10-19 13:49:05 -04:00