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: Alvaro Herrera <alvherre@2ndquadrant.com>
Cc: John Naylor <john.naylor@2ndquadrant.com>,
Andres Freund <andres@anarazel.de>, Tom Lane <tgl@sss.pgh.pa.us>,
PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2019-05-02T03:24:47Z
Lists: pgsql-hackers
On Thu, May 2, 2019 at 3:42 AM Alvaro Herrera <alvherre@2ndquadrant.com> wrote: > > On 2019-May-01, Amit Kapila wrote: > > > On Tue, Apr 30, 2019 at 7:52 PM Alvaro Herrera <alvherre@2ndquadrant.com> wrote: > > > > Hmm ... so, if vacuum runs and frees up any space from any of the pages, > > > then it should send out an invalidation -- it doesn't matter what the > > > FSM had, just that there is more free space now. That means every other > > > process will need to determine a fresh FSM, > > > > I think you intend to say the local space map because once FSM is > > created we will send invalidation and we won't further build relcache > > entry having local space map. > > Yeah, I mean the map that records free space. > > > > but that seems correct. Sounds better than keeping outdated entries > > > indicating no-space-available. > > > > Agreed, but as mentioned in one of the above emails, I am also bit > > scared that it should not lead to many invalidation messages for small > > relations, so may be we should send the invalidation message only when > > the entire page is empty. > > I don't think that's a concern, is it? You typically won't be running > multiple vacuums per second, or even multiple vacuums per minute. > That's right. So let's try by adding invalidation call whenever space is reduced. Is there a good way to test whether the new invalidation calls added by this patch has any significant impact? -- 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