Re: pgsql: Avoid creation of the free space map for small heap relations, t
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>, Amit Kapila <akapila@postgresql.org>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2019-02-28T03:25:12Z
Lists: pgsql-hackers
Attachments
- fix_loc_map_clear_3.patch (application/octet-stream) patch
On Thu, Feb 28, 2019 at 8:10 AM Amit Kapila <amit.kapila16@gmail.com> wrote: > > On Thu, Feb 28, 2019 at 7:45 AM John Naylor <john.naylor@2ndquadrant.com> wrote: > > > > On Thu, Feb 28, 2019 at 7:24 AM Amit Kapila <amit.kapila16@gmail.com> wrote: > > > > The flaw in my thinking was treating extension too similarly too > > > > finding an existing block. With your patch clearing the local map in > > > > the correct place, it seems the call at hio.c:682 is now superfluous? > > > > > > What if get some valid block from the first call to > > > GetPageWithFreeSpace via local map which has required space? I think > > > in that case we will need the call at hio.c:682. Am I missing > > > something? > > > > Are you referring to the call at line 393? Then the map will be > > cleared on line 507 before we return that buffer. > > > > That's correct, I haven't looked at line number very carefully and > assumed that you are saying to remove the call at 507. I also think > that the call at line 682 doesn't seem to be required, but I would > prefer to keep it for the sake of consistency in this function and > safety purpose. However, I think we should add a comment on the lines > suggested by you. I will send the patch after making these > modifications. > Here's an updated patch based on comments by you. I will proceed with this unless you have any more comments. -- With Regards, Amit Kapila. EnterpriseDB: http://www.enterprisedb.com
Commits
-
Clear the local map when not used.
- 9c32e4c35026 12.0 landed
-
Remove unneeded argument from _bt_getstackbuf().
- 2ab23445bc6a 12.0 cited
-
Avoid creation of the free space map for small heap relations, take 2.
- b0eaa4c51bbf 12.0 cited