Skip to content

Commit 1ead32c

Browse files
committed
motd update
1 parent ba45fbc commit 1ead32c

1 file changed

Lines changed: 28 additions & 21 deletions

File tree

ci_build_images/msan.motd

Lines changed: 28 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -2,51 +2,58 @@ This is a container for ASAN, UBSAN and MSAN building.
22

33
It can also be used as a basic build/test that contains rr.
44

5+
rr is available if the container is started with --privileged.
6+
7+
The following assumed that /source is a mounted volume of the
8+
MariaDB source code.
9+
510
A basic MSAN build can be configured with:
611

7-
cmake \
8-
-DWITH_MSAN=ON \
9-
-DCMAKE_{EXE,MODULE}_LINKER_FLAGS="-L${MSAN_LIBDIR} -Wl,-rpath=${MSAN_LIBDIR}" \
10-
-DWITH_INNODB_{BZIP2,LZ4,LZMA,LZO,SNAPPY}=OFF \
11-
-DCMAKE_DISABLE_FIND_PACKAGE_URING=1 \
12-
-DUPDATE_SUBMODULES=OFF \
13-
-DPLUGIN_COLUMNSTORE=NO \
14-
-DWITH_UNIT_TESTS=OFF \
15-
-DWITH_ZLIB=bundled \
16-
-DWITH_SYSTEMD=no \
17-
-DWITH_DBUG_TRACE=OFF \
18-
/source
12+
cmake \
13+
-DWITH_MSAN=ON \
14+
-DCMAKE_{EXE,MODULE}_LINKER_FLAGS="-L${MSAN_LIBDIR} -Wl,-rpath=${MSAN_LIBDIR}" \
15+
-DWITH_INNODB_{BZIP2,LZ4,LZMA,LZO,SNAPPY}=OFF \
16+
-DCMAKE_DISABLE_FIND_PACKAGE_URING=1 \
17+
-DUPDATE_SUBMODULES=OFF \
18+
-DPLUGIN_COLUMNSTORE=NO \
19+
-DWITH_UNIT_TESTS=OFF \
20+
-DWITH_ZLIB=bundled \
21+
-DWITH_SYSTEMD=no \
22+
-DWITH_DBUG_TRACE=OFF \
23+
/source
1924

2025
A basic combined UBSAN/ASAN build can be configured with:
2126

22-
cmake -DWITH_ASAN=ON -DWITH_ASAN_SCOPED=ON -DWITH_UBSAN=ON -DWITH_UNIT_TESTS=OFF /source
27+
cmake -DWITH_ASAN=ON -DWITH_ASAN_SCOPED=ON -DWITH_UBSAN=ON -DWITH_UNIT_TESTS=OFF -DUPDATE_SUBMODULES=OFF /source
2328

2429
Build with:
2530

26-
cmake --build .
31+
cmake --build .
2732

2833
Test with:
2934

30-
mysql-test/mtr --parallel=auto
35+
mysql-test/mtr --parallel=auto
36+
37+
Add --rr to record a specific MTR test. To replay:
38+
39+
rr replay mysql-test/var/log/mysqld.1.rr/mariadb-0
3140

3241
There are UBSAN filters covering currently unfixed bugs within
33-
the server that can be used to direct your development, or validate if a
34-
observed failure is known.
42+
the server that can be used to direct your development, or validate
43+
if a observed failure is known.
3544

3645
Perform the following to download/inspect them:
3746

38-
curl https://raw.githubusercontent.com/mariadb-corporation/mariadb-qa/refs/heads/master/UBSAN.filter -o /build/UBSAN.filter
47+
curl https://raw.githubusercontent.com/mariadb-corporation/mariadb-qa/refs/heads/master/UBSAN.filter -o /build/UBSAN.filter
3948

4049
After this, add suppressions to UBSAN_OPTIONS with
4150

42-
export UBSAN_OPTIONS=$UBSAN_OPTIONS:suppressions=/build/UBSAN.filter
51+
export UBSAN_OPTIONS=$UBSAN_OPTIONS:suppressions=/build/UBSAN.filter
4352

4453
To mark a function as unoptimized use the attribute:
4554

4655
__attribute__((optnone))
4756

48-
rr is available if the container is started with --privileged.
49-
5057
ref sanitizer flags documents:
5158
* https://github.com/google/sanitizers/wiki/AddressSanitizerFlags
5259
* https://clang.llvm.org/docs/UndefinedBehaviorSanitizer.html

0 commit comments

Comments
 (0)