Skip to content

Commit aade69d

Browse files
MDBF-1195: Use clang-22 for increased coverage
1 parent e60edc7 commit aade69d

File tree

4 files changed

+31
-39
lines changed

4 files changed

+31
-39
lines changed

configuration/builders/definitions/connectors/conodbc.py

Lines changed: 6 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,7 @@ def generate_bintar_sqs(
5656
ops,
5757
version,
5858
upload_packages_to_ci=True,
59-
with_asan=False,
60-
with_ubsan=False,
59+
with_asan_ubsan=False,
6160
):
6261
return [
6362
get_source_package(
@@ -70,8 +69,7 @@ def generate_bintar_sqs(
7069
bintar_path=BINTAR_PATH,
7170
package_platform_suffix=f"{ops}{version}",
7271
jobs=util.Property("jobs"),
73-
with_asan=with_asan,
74-
with_ubsan=with_ubsan,
72+
with_asan_ubsan=with_asan_ubsan,
7573
),
7674
] + (
7775
[
@@ -240,30 +238,16 @@ def generate_deb_release_sq(ops, version):
240238
)
241239
RELEASE_BUILDERS_BY_ARCH[arch].append(builder)
242240

243-
ASAN_BUILDER = GenericBuilder(
244-
name="codbc-debian-13-asan",
241+
UBASAN_BUILDER = GenericBuilder(
242+
name="codbc-debian-13-ubasan-clang-22",
245243
sidecar=SIDECAR,
246244
sequences=generate_bintar_sqs(
247245
build_environment=docker_config(
248-
image="debian13",
246+
image="debian13-msan-clang-22",
249247
),
250248
ops="debian",
251249
version="13",
252250
upload_packages_to_ci=False,
253-
with_asan=True,
254-
),
255-
)
256-
257-
UBSAN_BUILDER = GenericBuilder(
258-
name="codbc-debian-13-ubsan",
259-
sidecar=SIDECAR,
260-
sequences=generate_bintar_sqs(
261-
build_environment=docker_config(
262-
image="debian13",
263-
),
264-
ops="debian",
265-
version="13",
266-
upload_packages_to_ci=False,
267-
with_ubsan=True,
251+
with_asan_ubsan=True,
268252
),
269253
)

configuration/builders/sequences/connectors/conodbc.py

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -648,20 +648,29 @@ def bintar(
648648
package_platform_suffix: str,
649649
bintar_path: str,
650650
source_path: str,
651-
with_asan=False,
652-
with_ubsan=False,
651+
with_asan_ubsan=False,
653652
):
654653

654+
env_vars = None
655655
flags = [
656656
CMakeOption(OTHER.CONC_WITH_UNIT_TESTS, False),
657657
CMakeOption(CMAKE.BUILD_TYPE, BuildType.RELWITHDEBUG),
658658
CMakeOption(OTHER.PACKAGE_PLATFORM_SUFFIX, package_platform_suffix),
659659
]
660660

661-
if with_asan:
661+
if with_asan_ubsan:
662662
flags.append(CMakeOption(WITH.ASAN, True))
663-
if with_ubsan:
664663
flags.append(CMakeOption(WITH.UBSAN, True))
664+
env_vars = [
665+
(
666+
"ASAN_OPTIONS",
667+
"detect_stack_use_after_return=1:detect_leaks=1:abort_on_error=1:atexit=0:detect_invalid_pointer_pairs=3:dump_instruction_bytes=1:allocator_may_return_null=1",
668+
),
669+
(
670+
"UBSAN_OPTIONS",
671+
"print_stacktrace=1:report_error_type=1:halt_on_error=1",
672+
),
673+
]
665674

666675
sequence = BuildSequence()
667676
sequence.add_step(
@@ -676,6 +685,7 @@ def bintar(
676685
flags=flags,
677686
),
678687
),
688+
env_vars=env_vars,
679689
options=StepOptions(
680690
description="Bintar - Configure CMake",
681691
descriptionDone="Bintar - CMake configured",
@@ -693,6 +703,7 @@ def bintar(
693703
target=MAKE.PACKAGE,
694704
jobs=jobs,
695705
),
706+
env_vars=env_vars,
696707
options=StepOptions(
697708
description="Bintar - Compile",
698709
descriptionDone="Bintar - Compile done",
@@ -722,7 +733,8 @@ def bintar(
722733
("TEST_VERBOSE", "true"),
723734
("TEST_DRIVER", "maodbc_test"),
724735
("TEST_DSN", "maodbc_test"),
725-
],
736+
]
737+
+ (env_vars if env_vars else []),
726738
options=StepOptions(
727739
description="Bintar - Run ODBC ctest",
728740
descriptionDone="Bintar - ODBC ctest done",

configuration/schedulers/connectors.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@
4040
for builder in builders
4141
)
4242
]
43-
+ [odbc_builders.UBSAN_BUILDER.name, odbc_builders.ASAN_BUILDER.name],
43+
+ [odbc_builders.UBASAN_BUILDER.name],
4444
),
4545
]
4646

master-migration/master.cfg

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -309,18 +309,14 @@ for arch, builders in conc_odbc_builders.RELEASE_BUILDERS_BY_ARCH.items():
309309
)
310310
)
311311

312-
# Connector/ODBC ASAN/UBSAN builders
313-
for b in [
314-
conc_odbc_builders.ASAN_BUILDER,
315-
conc_odbc_builders.UBSAN_BUILDER,
316-
]:
317-
c["builders"].append(
318-
b.get_config(
319-
workers=CONNECTORS_WORKERS_BY_ARCH.get("amd64", []),
320-
tags=["connector", "odbc", "sanitizer"],
321-
jobs=1,
322-
)
312+
# Connector/ODBC ASAN/UBSAN builder
313+
c["builders"].append(
314+
conc_odbc_builders.UBASAN_BUILDER.get_config(
315+
workers=CONNECTORS_WORKERS_BY_ARCH.get("amd64", []),
316+
tags=["connector", "odbc", "sanitizer", "asan", "ubsan", "clang"],
317+
jobs=1,
323318
)
319+
)
324320

325321
## ------------------------------------------------------------------- ##
326322
## REPORTERS ##

0 commit comments

Comments
 (0)