Skip to content

MDBF-741 Add new UBSAN/ASAN builder for 10.11+ - #732

Closed
grooverdan wants to merge 1 commit into
MariaDB:devfrom
grooverdan:MDBF-741-ubsan-bb-config
Closed

MDBF-741 Add new UBSAN/ASAN builder for 10.11+#732
grooverdan wants to merge 1 commit into
MariaDB:devfrom
grooverdan:MDBF-741-ubsan-bb-config

Conversation

@grooverdan

Copy link
Copy Markdown
Member

Using the MSAN builder

Add New Build template

Checklist

  • [N/A] Make changes os_info.yaml
  • [*] Schedule the builder for the appropriate branch in constants.py
  • [*] Add builder configuration

@grooverdan
grooverdan force-pushed the MDBF-741-ubsan-bb-config branch from 477bc30 to 60f46d4 Compare April 2, 2025 23:36
@grooverdan
grooverdan force-pushed the MDBF-741-ubsan-bb-config branch 2 times, most recently from 08ef17d to 6a91cd5 Compare April 16, 2025 07:38
Comment thread master-docker-nonstandard-2/master.cfg Outdated
-DCMAKE_C_COMPILER=%(kw:c_compiler)s \\
-DCMAKE_CXX_COMPILER=%(kw:cxx_compiler)s \\
-DWITH_EMBEDDED_SERVER=OFF \\
-DPLUGIN_PERFSCHEMA=NO \\

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

note to self, change PERFSCHEMA disable to WITH_UNIT_TESTS=OFF. The perfschema (non-unit) tests are probably more valuable the unit tests.

Using the MSAN builder as its a modern clang version
and its MSAN instrumentation is non-impacting on a
generic UBSAN/ASAN build.

Added a separate Debug builder too.

Combined PERFSCHEMA/UNITTEST blocked due to MDEV-22940
so UNITTEST are disabled as their testing value is less.

Retire amd64-debian-12-asan-ubsan builder.
@grooverdan
grooverdan force-pushed the MDBF-741-ubsan-bb-config branch from 6a91cd5 to 3b0ddd7 Compare July 29, 2025 03:49
@grooverdan grooverdan changed the title MDBF-741 Add new UBSAN/ASAN builder for 10.6+ MDBF-741 Add new UBSAN/ASAN builder for 10.11+ Jul 29, 2025
@RazvanLiviuVarzaru

RazvanLiviuVarzaru commented Jul 29, 2025

Copy link
Copy Markdown
Collaborator

Hi,

Strongly recommend to port the builders to master-migration but if there's a sense or urgency, we can leave this for later.
Aim for code that is reusable and easy to read. If a hack cannot be avoided better ping me. The framework is still fresh and might need updates.

In https://github.com/MariaDB/buildbot/tree/dev/configuration/builders/sequences
can have a sanitizers.py where:

  • define an asan_ubsan() function that will return a sequence implementing all the steps.

In master-migration/master.cfg

  • define the new builders
  • import the function from sanitzers.py and use it as a sequence

If you come across MTR or CMAKE options that are not defined please update:

If you come across commands you don't have please see: https://github.com/MariaDB/buildbot/tree/dev/configuration/steps/commands
Scripts used in commands go in: https://github.com/MariaDB/buildbot/tree/dev/configuration/steps/commands/scripts

To run in container:

@grooverdan

Copy link
Copy Markdown
Member Author

should be all in #815

@grooverdan grooverdan closed this Jul 30, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants