Can we remove extra memset in BloomInitPage, GinInitPage and SpGistInitPage when we have it in PageInit?
Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>
From: Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>
To: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2021-03-22T04:46:33Z
Lists: pgsql-hackers
Attachments
- v1-0001-Remove-extra-memset-in-BloomInitPage-GinInitPage-.patch (application/octet-stream) patch v1-0001
Hi, We are memset-ting the special space page that's already set to zeros by PageInit in BloomInitPage, GinInitPage and SpGistInitPage. We have already removed the memset after PageInit in gistinitpage (see the comment there). Unless I'm missing something, IMO they are redundant. I'm attaching a small patch that gets rid of the extra memset calls. While on it, I removed MAXALIGN(sizeof(SpGistPageOpaqueData)) in SpGistInitPage because the PageInit will anyways align the specialSize. This change is inline with other places (such as BloomInitPage, brin_page_init GinInitPage, gistinitpage, _hash_pageinit and so on) where we just pass the size of special space data structure. I didn't see any regression test failure on my dev system with the attached patch. Thoughts? With Regards, Bharath Rupireddy. EnterpriseDB: http://www.enterprisedb.com
Commits
-
Remove redundant memset(0) calls for page init of some index AMs
- 4c0239cb7a77 14.0 landed