pgsql: ci: Use -fsanitize=undefined,alignment,address in linux tasks - Mailing list pgsql-committers

From Andres Freund
Subject pgsql: ci: Use -fsanitize=undefined,alignment,address in linux tasks
Date
Msg-id E1oxFyy-000HKZ-Eu@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
ci: Use -fsanitize=undefined,alignment,address in linux tasks

We have coverage of the various sanitizers in the buildfarm. The sanitizers
however particularly interesting during the development of patches, where the
likelihood of bugs is even higher. There also have been complaints about only
seeing such failures on the buildfarm, rather than before commit.

This commit enables a reasonable set of sanitizers in CI. Use the linux task
for that, as it currently is one of the fastests tasks. Also several of the
sanitizers work best on linux.

The overhead of alignment sanitizer is low, undefined behaviour has moderate
overhead. Test alignment sanitizer in the meson task, as it does both 32 and
64 bit builds and is thus more likely to expose alignment bugs.

Address sanitizer in contrast somewhat expensive. Enable it in the autoconf
task, as the meson task tests both 32 and 64bit which would exacerbate the
cost.

Reviewed-by: Justin Pryzby <pryzby@telsasoft.com>
Discussion: https://postgr.es/m/20220323173537.ll7klrglnp4gn2um@alap3.anarazel.de
Discussion: https://postgr.es/m/20221121220903.kf5u7rokfzbmqskm@alap3.anarazel.de

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/bd82928625e7ebe40eaaa57f3b4d03bae19491de

Modified Files
--------------
.cirrus.yml | 28 ++++++++++++++++++++++++++--
1 file changed, 26 insertions(+), 2 deletions(-)


pgsql-committers by date:

Previous
From: Andres Freund
Date:
Subject: pgsql: ci: Clean up pre-meson cruft in windows task
Next
From: Michael Paquier
Date:
Subject: pgsql: doc: Fix description of pg_stat_all_tables.n_tup_upd