diff options
author | Robert Haas <rhaas@postgresql.org> | 2017-03-20 15:55:27 -0400 |
---|---|---|
committer | Robert Haas <rhaas@postgresql.org> | 2017-03-20 15:55:27 -0400 |
commit | 9abbf4727de746222ad8fc15b17348065389ae43 (patch) | |
tree | 08575583e6c5d22a931945a4086489ef0e312e58 /src | |
parent | 953477ca3526e28f9aeeb41d23b16eed0084c7d2 (diff) | |
download | postgresql-9abbf4727de746222ad8fc15b17348065389ae43.tar.gz postgresql-9abbf4727de746222ad8fc15b17348065389ae43.zip |
Another fix for single-page hash index vacuum.
The WAL consistency checking code needed to be updated for the new
page status bit, but that didn't get done previously.
Ashutosh Sharma, reviewed by Amit Kapila
Discussion: http://postgr.es/m/CAA4eK1LP_oz4EfMen14OjJuzN5CqPdfRkFFuA-MfkcfeE8zGyg@mail.gmail.com
Diffstat (limited to 'src')
-rw-r--r-- | src/backend/access/hash/hash_xlog.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/backend/access/hash/hash_xlog.c b/src/backend/access/hash/hash_xlog.c index ac82092ab24..de7522ea01f 100644 --- a/src/backend/access/hash/hash_xlog.c +++ b/src/backend/access/hash/hash_xlog.c @@ -1250,8 +1250,14 @@ hash_mask(char *pagedata, BlockNumber blkno) /* * In hash bucket and overflow pages, it is possible to modify the * LP_FLAGS without emitting any WAL record. Hence, mask the line - * pointer flags. See hashgettuple() for details. + * pointer flags. See hashgettuple(), _hash_kill_items() for details. */ mask_lp_flags(page); } + + /* + * It is possible that the hint bit LH_PAGE_HAS_DEAD_TUPLES may remain + * unlogged. So, mask it. See _hash_kill_items() for details. + */ + opaque->hasho_flag &= ~LH_PAGE_HAS_DEAD_TUPLES; } |