Re: Unhappy about API changes in the no-fsm-for-small-rels patch
Amit Kapila <amit.kapila16@gmail.com>
From: Amit Kapila <amit.kapila16@gmail.com>
To: John Naylor <john.naylor@2ndquadrant.com>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, Andres Freund <andres@anarazel.de>, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2019-04-19T02:37:59Z
Lists: pgsql-hackers
On Thu, Apr 18, 2019 at 2:10 PM John Naylor <john.naylor@2ndquadrant.com> wrote: > > On Thu, Apr 18, 2019 at 2:48 PM Amit Kapila <amit.kapila16@gmail.com> wrote: > > I respect and will follow whatever will be the consensus after > > discussion. However, I request you to wait for some time to let the > > discussion conclude. If we can't get to an > > agreement or one of John or me can't implement what is decided, then > > we can anyway revert it. > > Agreed. I suspect the most realistic way to address most of the > objections in a short amount of time would be to: > > 1. rip out the local map > 2. restore hio.c to only checking the last block in the relation if > there is no FSM (and lower the threshold to reduce wasted space) > 3. reduce calls to smgr_exists() > Won't you need an extra call to RelationGetNumberofBlocks to find the last block? Also won't it be less efficient in terms of dealing with bloat as compare to current patch? I think if we go this route, then we might need to revisit it in the future to optimize it, but maybe that is the best alternative as of now. I am thinking that we should at least give it a try to move the map to rel cache level to see how easy or difficult it is and also let's wait for a day or two to see if Andres/Tom has to say anything about this or on the response by me above to improve the current patch. -- With Regards, Amit Kapila. EnterpriseDB: http://www.enterprisedb.com
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