Re: Unhappy about API changes in the no-fsm-for-small-rels patch
John Naylor <john.naylor@2ndquadrant.com>
From: John Naylor <john.naylor@2ndquadrant.com>
To: Amit Kapila <amit.kapila16@gmail.com>
Cc: Andres Freund <andres@anarazel.de>, Tom Lane <tgl@sss.pgh.pa.us>, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2019-04-30T06:12:11Z
Lists: pgsql-hackers
Attachments
- clear-upon-fsm-creation.patch (application/octet-stream) patch
On Fri, Apr 26, 2019 at 11:52 AM Amit Kapila <amit.kapila16@gmail.com> wrote: > As discussed above, we need to issue an > invalidation for following points: (a) when vacuum finds there is no > FSM and page has more space now, I think you can detect this in > RecordPageWithFreeSpace I took a brief look and we'd have to know how much space was there before. That doesn't seem possible without first implementing the idea to save free space locally in the same way the FSM does. Even if we have consensus on that, there's no code for it, and we're running out of time. > (b) invalidation to notify the existence of > FSM, this can be done both by vacuum and backend. I still don't claim to be anything but naive in this area, but does the attached get us any closer? -- John Naylor https://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
Commits
-
Revert "Avoid the creation of the free space map for small heap relations".
- 7db0cde6b58e 12.0 landed
-
Improve code comments in b0eaa4c51b.
- 06c8a5090ed9 12.0 cited
-
During pg_upgrade, conditionally skip transfer of FSMs.
- 13e8643bfc29 12.0 cited
-
Add more tests for FSM.
- 6f918159a97a 12.0 cited
-
Fix typos in commit 8586bf7ed8.
- a6e48da08844 12.0 cited
-
tableam: introduce table AM infrastructure.
- 8586bf7ed888 12.0 cited
-
Clear the local map when not used.
- 9c32e4c35026 12.0 cited
-
Doc: Update the documentation for FSM behavior for small tables.
- 29d108cdecbe 12.0 cited
-
Make FSM test portable.
- 08ecdfe7e5e0 12.0 cited
-
Avoid creation of the free space map for small heap relations, take 2.
- b0eaa4c51bbf 12.0 cited