Re: [HACKERS] [WIP] Effective storage of duplicates in B-tree index.
Anastasia Lubennikova <a.lubennikova@postgrespro.ru>
Attachments
- v8-0001-Deduplication-in-nbtree.patch (text/x-patch) patch v8-0001
20.08.2019 4:04, Peter Geoghegan wrote: > On Fri, Aug 16, 2019 at 8:56 AM Anastasia Lubennikova > <a.lubennikova@postgrespro.ru> wrote: > >> It seems that now all replace operations are crash-safe. The new patch passes >> all regression tests, so I think it's ready for review again. > I'm looking at it now. I'm going to spend a significant amount of time > on this tomorrow. > > I think that we should start to think about efficient WAL-logging now. Thank you for the review. The new version v8 is attached. Compared to previous version, this patch includes updated btree_xlog_insert() and btree_xlog_split() so that WAL records now only contain data about updated posting tuple and don't require full page writes. I haven't updated pg_waldump yet. It is postponed until we agree on nbtxlog changes. Also in this patch I renamed all 'compress' keywords to 'deduplicate' and did minor cleanup of outdated comments. I'm going to look through the patch once more to update nbtxlog comments, where needed and answer to your remarks that are still left in the comments. -- Anastasia Lubennikova Postgres Professional: http://www.postgrespro.com The Russian Postgres Company
Commits
-
Teach pageinspect about nbtree deduplication.
- 93ee38eade1b 13.0 landed
-
Doc: Fix deduplicate_items index term.
- e537aed61db7 13.0 landed
-
Revise BTP_HAS_GARBAGE nbtree VACUUM comments.
- 4b25f5d0ba01 13.0 cited
-
Remove unneeded "pin scan" nbtree VACUUM code.
- 9f83468b3536 13.0 landed
-
Cleanup code in reloptions.h regarding reloption handling
- 50d22de9325f 13.0 cited
-
Catch invalid typlens in a couple of places
- 8557a6f10ca6 13.0 cited
-
Compute XID horizon for page level index vacuum on primary.
- 558a9165e081 12.0 cited
-
Make heap TID a tiebreaker nbtree index column.
- dd299df8189b 12.0 cited
-
Avoid pin scan for replay of XLOG_BTREE_VACUUM in all cases
- 3e4b7d87988f 9.6.0 cited
-
Revert buggy optimization of index scans
- c7111d11b188 9.6.0 cited
-
Restructure index access method API to hide most of it at the C level.
- 65c5fcd353a8 9.6.0 cited
-
Reduce pinning and buffer content locking for btree scans.
- 2ed5b87f96d4 9.5.0 cited
-
Avoid scanning nulls at the beginning of a btree index scan.
- 1a77f8b63d15 9.2.0 cited