Change WAL-logging scheme for multixacts to be more like regular
Tom Lane <tgl@sss.pgh.pa.us>
Change WAL-logging scheme for multixacts to be more like regular transaction IDs, rather than like subtrans; in particular, the information now survives a database restart. Per previous discussion, this is essential for PITR log shipping and for 2PC.
Files
| Path | Change | +/− |
|---|---|---|
| doc/src/sgml/ref/pg_resetxlog.sgml | modified | +21 −7 |
| src/backend/access/heap/heapam.c | modified | +17 −7 |
| src/backend/access/transam/multixact.c | modified | +426 −195 |
| src/backend/access/transam/rmgr.c | modified | +3 −2 |
| src/backend/access/transam/xlog.c | modified | +18 −43 |
| src/bin/pg_controldata/pg_controldata.c | modified | +2 −1 |
| src/bin/pg_resetxlog/pg_resetxlog.c | modified | +25 −3 |
| src/include/access/htup.h | modified | +3 −1 |
| src/include/access/multixact.h | modified | +33 −4 |
| src/include/access/xlog.h | modified | +1 −2 |
| src/include/catalog/pg_control.h | modified | +3 −3 |
| src/include/c.h | modified | +3 −1 |