Re: tableam vs. TOAST
Alvaro Herrera <alvherre@2ndquadrant.com>
From: Alvaro Herrera <alvherre@2ndquadrant.com>
To: Robert Haas <robertmhaas@gmail.com>
Cc: Andres Freund <andres@anarazel.de>, Prabhat Sahu <prabhat.sahu@enterprisedb.com>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2019-09-05T14:52:25Z
Lists: pgsql-hackers
Attachments
- 0001-Split-tuptoaster.c-into-three-separate-files.patch (text/x-diff)
On 2019-Aug-05, Robert Haas wrote: > > Shouldn't this condition be the other way round? > > I had to fight pretty hard to stop myself from tinkering with the > algorithm -- this can clearly be done better, but I wanted to make it > match the existing structure as far as possible. It also only needs to > be tested once, not on every loop iteration, so if we're going to > start changing things, we should go further than just swapping the > order of the tests. For now I prefer to draw a line in the sand and > change nothing. I agree, and can we move forward with this 0001? The idea here is to change no code (as also suggested by Tom elsewhere), and it's the largest patch in this series by a mile. I checked --color-moved=zebra and I think the patch looks fine, and also it compiles fine. I ran src/tools/pginclude/headerscheck on it and found no complaints. So here's a rebased version, where the DETOAST_H whitespace has been removed. No other changes from your original. Will you please push soon? -- Álvaro Herrera https://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
Commits
-
tableam: New callback relation_fetch_toast_slice.
- ce242ae154dd 13.0 landed
-
tableam: Allow choice of toast AM.
- 83322e38da1a 13.0 landed
-
Move heap-specific detoasting logic into a separate function.
- e9fd0415e6e2 13.0 landed
-
Code cleanup for toast_fetch_datum and toast_fetch_datum_slice.
- d5406dea25b6 13.0 landed
-
Rename some toasting functions based on whether they are heap-specific.
- 2e8b6bfa90b2 13.0 landed
-
Create an API for inserting and deleting rows in TOAST tables.
- bd124996ef0d 13.0 landed
-
Split tuptoaster.c into three separate files.
- 8b94dab06617 13.0 landed
-
tableam: Move heap-specific logic from needs_toast_table below tableam.
- 1171d7d58545 12.0 cited