Re: [PATCH] reduce page overlap of GiST indexes built using sorted method

sergei sh. <sshoulbakov@kontur.io>

From: "sergei sh." <sshoulbakov@kontur.io>
To: Aliaksandr Kalenik <akalenik@kontur.io>
Cc: pgsql-hackers@lists.postgresql.org
Date: 2022-01-18T20:26:05Z
Lists: pgsql-hackers

Attachments

Hi,

I've addressed Andrey Borodin's concerns about v2 of this patch by 
Aliaksandr
Kalenik in attached version. Change list:
* Number of pages to collect moved to GUC parameter 
"gist_sorted_build_page_buffer_size".
* GistSortedBuildPageState type renamed to GistSortedBuildLevelState.
* Comments added.

Sorted build remaind deterministic as long as picksplit implementation 
for given
opclass is, which seem to be true for builtin types, so setting random 
seed is
not required for testing.

Andrey Borodin's GiST support patch for amcheck was used to verify built 
indexes:
https://commitfest.postgresql.org/25/1800/
PSA modified version working with current Postgres code (btree functions
removed).

Commits

  1. Reduce non-leaf keys overlap in GiST indexes produced by a sorted build