This patch fixes a regression caused by my recent changes to heap
Bruce Momjian <bruce@momjian.us>
This patch fixes a regression caused by my recent changes to heap tuple header. The fix is based on the thought that HEAP_MOVED_IN is not needed any more as soon as HEAP_XMIN_COMMITTED has been set. So in tqual.c and vacuum.c the HEAP_MOVED bits are cleared when HEAP_XMIN_COMMITTED is set. Vacuum robustness is enhanced by rearranging ifs, so that we have a chance to elog(ERROR, ...) before an assertion fails. A new regression test is included. Manfred Koizar
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/commands/vacuum.c | modified | +16 −13 |
| src/backend/utils/time/tqual.c | modified | +28 −1 |
| src/test/regress/parallel_schedule | modified | +1 −1 |
| src/test/regress/serial_schedule | modified | +2 −1 |