Skip to content

MDBF-741 Sequence version of ubasan - #815

Merged
RazvanLiviuVarzaru merged 18 commits into
MariaDB:devfrom
grooverdan:MDBF-741-ubsan-seq
Aug 26, 2025
Merged

MDBF-741 Sequence version of ubasan#815
RazvanLiviuVarzaru merged 18 commits into
MariaDB:devfrom
grooverdan:MDBF-741-ubsan-seq

Conversation

@grooverdan

Copy link
Copy Markdown
Member

Add New Build template

Checklist

  • Make changes os_info.yaml
  • Schedule the builder for the appropriate branch in constants.py
  • Add builder configuration

Comment thread configuration/builders/sequences/sanitizers.py Outdated
@grooverdan
grooverdan force-pushed the MDBF-741-ubsan-seq branch from 6cd6bc0 to 59a0b3b Compare July 31, 2025 08:32
Comment thread configuration/steps/commands/download.py Outdated
Comment thread master-migration/master.cfg Outdated
Comment thread master-migration/master.cfg Outdated
Comment thread configuration/steps/commands/base.py Outdated
Comment thread configuration/steps/commands/base.py Outdated
@grooverdan
grooverdan force-pushed the MDBF-741-ubsan-seq branch 7 times, most recently from 93501a0 to 581cfd8 Compare August 1, 2025 04:15
Comment thread configuration/steps/commands/download.py Outdated
Comment thread configuration/builders/sequences/helpers.py Outdated
Comment thread master-migration/master.cfg Outdated
@RazvanLiviuVarzaru

Copy link
Copy Markdown
Collaborator

Thanks @grooverdan for your patience and re-work,
A few more comments to address then I can start testing this patch on dev and see if it needs more fixing.

Comment thread configuration/builders/sequences/sanitizers.py Outdated
Comment thread configuration/builders/sequences/sanitizers.py Outdated
Comment thread configuration/builders/sequences/sanitizers.py
Comment thread configuration/builders/sequences/sanitizers.py
Comment thread configuration/steps/commands/download.py Outdated
Comment thread configuration/builders/sequences/sanitizers.py Outdated
@RazvanLiviuVarzaru

RazvanLiviuVarzaru commented Aug 1, 2025

Copy link
Copy Markdown
Collaborator

@grooverdan I wrote a lot, I better provide a summary of what needs to be fixed:

  • remove mkdir bld step
  • remove container commit for compile step
  • fix FetchGitHub -> wrong value for branch
  • wrap get_mtr_normal_steps with InContainer
  • CompileCMakeCommand fix case when verbose is False
  • CMakeGenerator fix source path . Proposed "../src"
  • halt on failure = False for MTR steps . (so all MTR steps run)
  • you need save_mtr_logs after MTR steps

A latest 10.11 run:

Comment thread configuration/builders/sequences/sanitizers.py
Comment thread master-migration/master.cfg Outdated
@RazvanLiviuVarzaru

Copy link
Copy Markdown
Collaborator

@grooverdan I've made 3 new fixes on this patch, the second one being my fault.
I am ready to merge this patch but first I want to ask. Are you sure you don't want to address first the failing MTR tests (or at least report them)?
as in https://buildbot.dev.mariadb.org/#/builders/701/builds/10

@grooverdan

Copy link
Copy Markdown
Member Author

@grooverdan I've made 3 new fixes on this patch, the second one being my fault. I am ready to merge this patch but first I want to ask. Are you sure you don't want to address first the failing MTR tests (or at least report them)? as in https://buildbot.dev.mariadb.org/#/builders/701/builds/10

All are reported. 1 progress, 1 just provided solution for. Other two slightly stalled.

main.long_unique_bugs, innodb_fts.innodb-fts-ddl ctype-uca-scanner_next.inl:84 -> MDEV-36467
rpl.rpl_mixed_mixing_engines (and other annotate rpl bugs) -> MDEV-37356
main.derived_split_innodb -> MDEV-37438
roles.acl_load_mutex-5170 -> MDEV-36345

@RazvanLiviuVarzaru

Copy link
Copy Markdown
Collaborator

Quote reply

Perfect, thank you!
I will merge it then, it's good to have it running for any regressions or new bugs.

grooverdan and others added 18 commits August 26, 2025 10:23
To provide a mechanism to add a simple number of MTR options
the helper sequence functions gain an additional argument.

Additionally env_vars added as argument too, defaulting to
an empty list for simplicity of concatination.
This takes as a single command string and runs its
BB interpolated output as a command.
This fetches from a github repository withing a branch and saves a
file to the workdir..
asan_ubsan returns a sequence of steps for building and running
a ASAN/UBSAN build.
…ilders

In versions 10.11+.

Because of unported changes to 10.6, clang-20 needs to start at 10.11.

There's no value in testin on an old version and the clang version is
superiour in coverage compared to the old gcc version.
codebase need correcting before enabling:
* mroonga mecab - type mismatch
  https://github.com/MariaDB/server/pull/4145/files#diff-8ddee6ac5028513dbaa09ee8fb74308f4fab53b833cf31485fff019a6e971304
* client/mysql.cc
source/client/mysql.cc:3219:16: error: passing an object that undergoes default argument promotion to 'va_start' has undefined behavior [-Werror,-Wvarargs]
 3219 |   va_start(ap, type);
* strings/uca-dump --name-prefix=uca1400 hit leak sanitizer
This was the default anyway so no need to do this explicitly.
Removed 'amd64-ubasan-clang-20-debug' from the constants list.
Packages mount is required for saving MTR logs
@RazvanLiviuVarzaru
RazvanLiviuVarzaru merged commit 23394b4 into MariaDB:dev Aug 26, 2025
4 checks passed
@grooverdan
grooverdan deleted the MDBF-741-ubsan-seq branch August 26, 2025 21:50
@grooverdan

Copy link
Copy Markdown
Member Author

#4265 solving the rpl.rpl_*mixing_engines

@grooverdan

Copy link
Copy Markdown
Member Author

MariaDB/server#4266 for roles.acl_load_mutex-5170 -> MDEV-36345

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