From: | Tomas Vondra <tomas(dot)vondra(at)postgresql(dot)org> |
---|---|
To: | pgsql-committers(at)lists(dot)postgresql(dot)org |
Subject: | pgsql: Improve BRIN minmax-multi opclass test coverage |
Date: | 2023-07-02 08:34:54 |
Message-ID: | E1qFsXm-001Uqd-Tv@gemulon.postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-committers |
Improve BRIN minmax-multi opclass test coverage
Per the code coverage report, the existing regression tests did not
exercice some a couple important BRIN minmax-multi code paths.
- The tests focused on testing planning with a range of scan key
strategies, but not the execution. Fixed by adding queries that
actually test query execution for both equality and inequality.
- All tests created indexes after inserting data, but this only
exercises the CREATE INDEX strategy that sees all values at once, not
incremental summary updates. The new tests flip the order and create
the index before adding data.
- The assert check(s) validating correctness of expanded ranges were
present only in the "union" code path, which is not covered by
regression tests at all (as it requires concurrency etc.). Fixed by
adding the asserts to a couple more places.
Reviewed-by: Heikki Linnakangas
Discussion: https://postgr.es/m/57020b2e-d9c9-9bc7-4892-b36d9bb07563%40enterprisedb.com
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/0457109344b46f481f9bf09b85674695ba57c8e4
Modified Files
--------------
src/backend/access/brin/brin_minmax_multi.c | 9 +
src/test/regress/expected/brin_multi.out | 357 ++++++++++++++++++++++++++++
src/test/regress/sql/brin_multi.sql | 165 +++++++++++++
3 files changed, 531 insertions(+)
From | Date | Subject | |
---|---|---|---|
Next Message | Tomas Vondra | 2023-07-02 18:03:53 | pgsql: Fix memory leak in Incremental Sort rescans |
Previous Message | Tomas Vondra | 2023-07-02 08:25:34 | pgsql: Introduce bloom_filter_size for BRIN bloom opclass |