Trying to add more tests to gistbuild.c
Matheus Alcantara <mths.dev@pm.me>
From: Matheus Alcantara <mths.dev@pm.me>
To: "pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>
Date: 2022-05-06T13:19:43Z
Lists: pgsql-hackers
Attachments
- new_gist_buffering_test_cases.patch (text/x-patch) patch
I'm studying how the gist index works trying to improve the test coverage of gistbuild.c. Reading the source code I noticed that the gistInitBuffering function is not covered, so I decided to start with it. Reading the documentation and the source I understood that for this function to be executed it is necessary to force bufferring=on when creating the index or the index to be created is big enough to not fit in the cache, am I correct? Considering the above, I added two new index creation statements in the gist regression test (patch attached) to create an index using buffering=on and another to try to simulate an index that does not fit in the cache. With these new tests the coverage went from 45.3% to 85.5%, but I have some doubts: - Does this test make sense? - Would there be a way to validate that the buffering was done correctly? - Is this test necessary? I've been studying Postgresql implementations and I'm just trying to start contributing the source code. -- Matheus Alcantara
Commits
-
Improve regression test coverage of GiST index building.
- 6a1f082abac9 16.0 landed