On Fri, Sep 8, 2017 at 5:24 AM, Tom Lane <t...@sss.pgh.pa.us> wrote: > This means that the premise of this patch is wrong. Adjusting pd_lower, > by itself, would accomplish precisely zip for WAL compression, because > we'd still not be telling the WAL code to compress out the hole. > > To get any benefit, I think we'd need to do all of the following: > > 1. Initialize pd_lower correctly in the metapage init functions, as here. > [...] > In short, this patch needs a significant rewrite, and more analysis than > you've done so far on whether there's actually any benefit to be gained. > It might not be worth messing with. > > I'll set the CF entry back to Waiting on Author.
I did some measurements of the compressibility of the GIN meta page, looking at its FPWs with and without wal_compression and you are right: there is no direct compressibility effect when setting pd_lower on the meta page. However, it seems to me that there is an argument still pleading on favor of this patch for wal_consistency_checking. On HEAD pd_lower gets set to 24 and pd_upper to 8184 for GIN meta pages. With the patch, it gets at 80. On top of cleaning up the masking functions GIN, BRIN and SpGist by removing some exceptions in their handling, we are able to get a better masked page because it is possible to mask a portion that we *know* is unused. So even if there are no compressibility benefits, I think that it actually helps in tracking down inconsistencies in meta pages by having a better precision lookup. So I would still vote for integrating the patch as-is, with the addition of a comment to mention that the compressibility optimization is not used yet, though this is helpful when masking the page. The same comment ought to be mentioned for btree. -- Michael -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers