From: | Robert Haas <rhaas(at)postgresql(dot)org> |
---|---|
To: | pgsql-committers(at)postgresql(dot)org |
Subject: | pgsql: hash: Implement page-at-a-time scan. |
Date: | 2017-09-22 17:59:40 |
Message-ID: | E1dvSEm-0004Y3-LB@gemulon.postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-committers |
hash: Implement page-at-a-time scan.
Commit 09cb5c0e7d6fbc9dee26dc429e4fc0f2a88e5272 added a similar
optimization to btree back in 2006, but nobody bothered to implement
the same thing for hash indexes, probably because they weren't
WAL-logged and had lots of other performance problems as well. As
with the corresponding btree case, this eliminates the problem of
potentially needing to refind our position within the page, and cuts
down on pin/unpin traffic as well.
Ashutosh Sharma, reviewed by Alexander Korotkov, Jesper Pedersen,
Amit Kapila, and me. Some final edits to comments and README by
me.
Discussion: http://postgr.es/m/CAE9k0Pm3KTx93K8_5j6VMzG4h5F+SyknxUwXrN-zqSZ9X8ZS3w@mail.gmail.com
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/7c75ef571579a3ad7a1d3ee909f11dba5e0b9440
Modified Files
--------------
src/backend/access/hash/README | 79 +++--
src/backend/access/hash/hash.c | 165 ++--------
src/backend/access/hash/hashpage.c | 10 +-
src/backend/access/hash/hashsearch.c | 569 ++++++++++++++++++++++-------------
src/backend/access/hash/hashutil.c | 67 ++++-
src/include/access/hash.h | 70 ++++-
6 files changed, 562 insertions(+), 398 deletions(-)
From | Date | Subject | |
---|---|---|---|
Next Message | Robert Haas | 2017-09-22 18:35:13 | pgsql: For wal_consistency_checking, mask page checksum as well as page |
Previous Message | Andres Freund | 2017-09-22 17:36:30 | Re: pgsql: Accept that server might not be able to send error in crash reco |