| From: | Michael Paquier <michael(at)paquier(dot)xyz> |
|---|---|
| To: | pgsql-committers(at)lists(dot)postgresql(dot)org |
| Subject: | pgsql: Add tests for low-level PGLZ [de]compression routines |
| Date: | 2026-04-14 20:12:49 |
| Message-ID: | E1wCk7t-000z5L-0J@gemulon.postgresql.org |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-committers |
Add tests for low-level PGLZ [de]compression routines
The goal of this module is to provide an entry point for the coverage of
the low-level compression and decompression PGLZ routines. The new test
is moved to a new parallel group, with all the existing
compression-related tests added to it.
This includes tests for the cases detected by fuzzing that emulate
corrupted compressed data, as fixed by 2b5ba2a0a141:
- Set control bit with read of a match tag, where no data follows.
- Set control bit with read of a match tag, where 1 byte follows.
- Set control bit with match tag where length nibble is 3 bytes
(extended case).
While on it, some tests are added for compress/decompress roundtrips,
and for check_complete=false/true. Like 2b5ba2a0a141, backpatch to all
the stable branches.
Discussion: https://postgr.es/m/adw647wuGjh1oU6p@paquier.xyz
Backpatch-through: 14
Branch
------
REL_17_STABLE
Details
-------
https://git.postgresql.org/pg/commitdiff/c78947badc701ffda625455ddac98bad9bd4109b
Modified Files
--------------
src/test/regress/expected/compression_pglz.out | 65 +++++++++++++++++++++++++
src/test/regress/parallel_schedule | 7 ++-
src/test/regress/regress.c | 66 ++++++++++++++++++++++++++
src/test/regress/sql/compression_pglz.sql | 53 +++++++++++++++++++++
4 files changed, 190 insertions(+), 1 deletion(-)
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Jeff Davis | 2026-04-14 21:47:41 | pgsql: Check for unterminated strings when calling uloc_getLanguage(). |
| Previous Message | Aleksander Alekseev | 2026-04-14 14:55:53 | Re: pgsql: Separate out bytea sort support from varlena.c |