Re: Page Scan Mode in Hash Index
Amit Kapila <amit.kapila16@gmail.com>
From: Amit Kapila <amit.kapila16@gmail.com>
To: Robert Haas <robertmhaas@gmail.com>
Cc: Jesper Pedersen <jesper.pedersen@redhat.com>,
Ashutosh Sharma <ashu.coek88@gmail.com>, pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2017-09-20T11:45:20Z
Lists: pgsql-hackers
On Wed, Sep 20, 2017 at 4:56 PM, Robert Haas <robertmhaas@gmail.com> wrote: > On Wed, Sep 20, 2017 at 7:19 AM, Amit Kapila <amit.kapila16@gmail.com> wrote: >>> Page-at-a-time index vacuum as in _hash_vacuum_one_page doesn't matter >>> because such an operation doesn't allow TIDs to be reused. >> >> Page-at-a-time index vacuum also allows TIDs to be reused but this is >> done only for already marked dead items whereas vacuum can make the >> non-dead entries to be removed. We don't have a problem with >> page-at-a-time vacuum as it won't remove any items which the scan is >> going to mark as dead. > > I don't think page-at-a-time index vacuum allows heap TIDs to be > reused. > Right, I was thinking from the perspective of the index entry. Before marking index entry as dead, we do check for heaptid. So, as heaptid can't be reused via Page-at-a-time index vacuum, scan won't mark index entry as dead. -- With Regards, Amit Kapila. EnterpriseDB: http://www.enterprisedb.com
Commits
-
Remove lsn from HashScanPosData.
- 22c5e73562c5 11.0 landed
-
Fix trivial mistake in README.
- 79a4a665c046 11.0 landed
-
hash: Implement page-at-a-time scan.
- 7c75ef571579 11.0 landed
-
Reduce pinning and buffer content locking for btree scans.
- 2ed5b87f96d4 9.5.0 cited