-
Notifications
You must be signed in to change notification settings - Fork 2
Comparing changes
Open a pull request
base repository: postgresql-cfbot/postgresql
base: cf/3733~1
head repository: postgresql-cfbot/postgresql
compare: cf/3733
- 7 commits
- 17 files changed
- 3 contributors
Commits on Mar 28, 2025
-
Author: Kirill Reshke <[email protected]> Discussion: https://postgr.es/m/CALdSSPgu9uAhVYojQ0yjG%3Dq5MaqmiSLUJPhz%2B-u7cA6K6Mc9UA%40mail.gmail.com
Configuration menu - View commit details
-
Copy full SHA for a1dd9b3 - Browse repository at this point
Copy the full SHA a1dd9b3View commit details -
amcheck: Move common routines into a separate module
Before performing checks on an index, we need to take some safety measures that apply to all index AMs. This includes: * verifying that the index can be checked - Only selected AMs are supported by amcheck (right now only B-Tree). The index has to be valid and not a temporary index from another session. * changing (and then restoring) user's security context * obtaining proper locks on the index (and table, if needed) * discarding GUC changes from the index functions Until now this was implemented in the B-Tree amcheck module, but it's something every AM will have to do. So relocate the code into a new module verify_common for reuse. The shared steps are implemented by amcheck_lock_relation_and_check(), receiving the AM-specific verification as a callback. Custom parameters may be supplied using a pointer. Author: Andrey Borodin <[email protected]> Reviewed-By: José Villanova <[email protected]> Reviewed-By: Aleksander Alekseev <[email protected]> Reviewed-By: Nikolay Samokhvalov <[email protected]> Reviewed-By: Andres Freund <[email protected]> Reviewed-By: Tomas Vondra <[email protected]> Reviewed-By: Mark Dilger <[email protected]> Reviewed-By: Peter Geoghegan <[email protected]> Reviewed-By: Kirill Reshke <[email protected]> Discussion: https://postgr.es/m/45AC9B0A-2B45-40EE-B08F-BDCF5739D1E1%40yandex-team.ru
Configuration menu - View commit details
-
Copy full SHA for 43f209a - Browse repository at this point
Copy the full SHA 43f209aView commit details -
amcheck: Add gin_index_check() to verify GIN index
The new functions validates two kinds of invariants on a GIN index: - parent-child consistency: Paths in a GIN graph have to contain consistent keys: tuples on parent pages consistently include tuples from children pages. That is, parent tuples must not require any adjustments. - balanced-tree / graph: Each internal page has at least one downlink, and can reference either only leaf pages or only internal pages. The GIN verification is based on work by Grigory Kryachko, reworked by Heikki Linnakangas and with various improvements by Andrey Borodin. Investigation and fixes for a couple bugs by Kirill Reshke. Author: Grigory Kryachko <[email protected]> Author: Heikki Linnakangas <[email protected]> Author: Andrey Borodin <[email protected]> Reviewed-By: José Villanova <[email protected]> Reviewed-By: Aleksander Alekseev <[email protected]> Reviewed-By: Nikolay Samokhvalov <[email protected]> Reviewed-By: Andres Freund <[email protected]> Reviewed-By: Tomas Vondra <[email protected]> Reviewed-By: Kirill Reshke <[email protected]> Reviewed-By: Mark Dilger <[email protected]> Reviewed-By: Peter Geoghegan <[email protected]> Discussion: https://postgr.es/m/45AC9B0A-2B45-40EE-B08F-BDCF5739D1E1%40yandex-team.ru
Configuration menu - View commit details
-
Copy full SHA for bf5e2a0 - Browse repository at this point
Copy the full SHA bf5e2a0View commit details -
amcheck: Add a test with GIN index on JSONB data
Extend the existing test of GIN checks to also include an index on JSONB data, using the jsonb_path_ops opclass. This is a common enough usage of GIN that it makes sense to have better test coverage for it. Author: Mark Dilger <[email protected]> Reviewed-By: Tomas Vondra <[email protected]> Reviewed-By: Kirill Reshke <[email protected]> Discussion: https://postgr.es/m/BC221A56-977C-418E-A1B8-9EFC881D80C5%40enterprisedb.com
Configuration menu - View commit details
-
Copy full SHA for 9cfeaa7 - Browse repository at this point
Copy the full SHA 9cfeaa7View commit details -
amcheck: Add a GIN index to the CREATE INDEX CONCURRENTLY tests
The existing CREATE INDEX CONCURRENTLY tests checking only B-Tree, but can be cheaply extended to also check GIN. This helps increasing test coverage for GIN amcheck, especially related to handling concurrent page splits and posting list trees. This already helped to identify several issues during development of the GIN amcheck support. Author: Mark Dilger <[email protected]> Reviewed-By: Tomas Vondra <[email protected]> Reviewed-By: Kirill Reshke <[email protected]> Discussion: https://postgr.es/m/BC221A56-977C-418E-A1B8-9EFC881D80C5%40enterprisedb.com
Configuration menu - View commit details
-
Copy full SHA for b43ee5a - Browse repository at this point
Copy the full SHA b43ee5aView commit details -
Stress test verify_gin() using pgbench
Add a tap test which inserts, updates, deletes, and checks in parallel. Like all pgbench based tap tests, this test contains race conditions between the operations, so Your Mileage May Vary. For me, on my laptop, I got failures like: index "ginidx" has wrong tuple order on entry tree page which I have not yet investigated. The test is included here for anybody interested in debugging this failure.
Configuration menu - View commit details
-
Copy full SHA for 48143f4 - Browse repository at this point
Copy the full SHA 48143f4View commit details -
[CF 3733] v20250328 - Amcheck verification of GiST and GIN
This branch was automatically generated by a robot using patches from an email thread registered at: https://commitfest.postgresql.org/patch/3733 The branch will be overwritten each time a new patch version is posted to the thread, and also periodically to check for bitrot caused by changes on the master branch. Patch(es): https://www.postgresql.org/message-id/[email protected] Author(s): Heikki Linnakangas, Andrey Borodin, Grigory Kryachko
Commitfest Bot committedMar 28, 2025 Configuration menu - View commit details
-
Copy full SHA for 218eb5c - Browse repository at this point
Copy the full SHA 218eb5cView commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff cf/3733~1...cf/3733