From af4f0a99a29a1c5bc4d6414559afa3ca21cd9163 Mon Sep 17 00:00:00 2001 From: Kevin Albertson Date: Thu, 30 Oct 2025 08:33:05 -0400 Subject: [PATCH 1/6] build with ASan (expect failure due to test leak) --- .evergreen/config_generator/components/oidc.py | 8 +++++++- .evergreen/generated_configs/variants.yml | 7 ++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/.evergreen/config_generator/components/oidc.py b/.evergreen/config_generator/components/oidc.py index 5cc7a747042..deedd19e40f 100644 --- a/.evergreen/config_generator/components/oidc.py +++ b/.evergreen/config_generator/components/oidc.py @@ -66,9 +66,15 @@ def tasks(): def variants(): return [ BuildVariant( - name='oidc', + name='oidc-asan', display_name='OIDC', run_on=[find_small_distro('ubuntu2404').name], tasks=[EvgTaskRef(name='test-oidc-task-group')], + expansions = { + 'ASAN': 'on', + 'CFLAGS': '-fno-omit-frame-pointer', + 'CHECK_LOG': 'ON', + 'SANITIZE': 'address,undefined', + } ), ] diff --git a/.evergreen/generated_configs/variants.yml b/.evergreen/generated_configs/variants.yml index cc35dc56648..677d3f0692e 100644 --- a/.evergreen/generated_configs/variants.yml +++ b/.evergreen/generated_configs/variants.yml @@ -253,10 +253,15 @@ buildvariants: SANITIZE: address,undefined tasks: - name: mock-server-test - - name: oidc + - name: oidc-asan display_name: OIDC run_on: - ubuntu2404-small + expansions: + ASAN: "on" + CFLAGS: -fno-omit-frame-pointer + CHECK_LOG: "ON" + SANITIZE: address,undefined tasks: - name: test-oidc-task-group - name: openssl-compat-matrix From 3bd2f9c9748aaaf79d9b04f22fd37c590faf2282 Mon Sep 17 00:00:00 2001 From: Kevin Albertson Date: Thu, 30 Oct 2025 08:44:25 -0400 Subject: [PATCH 2/6] fix CC identifier --- .evergreen/config_generator/components/oidc.py | 2 +- .evergreen/generated_configs/tasks.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.evergreen/config_generator/components/oidc.py b/.evergreen/config_generator/components/oidc.py index deedd19e40f..6905865be90 100644 --- a/.evergreen/config_generator/components/oidc.py +++ b/.evergreen/config_generator/components/oidc.py @@ -49,7 +49,7 @@ def tasks(): SaslCyrusOpenSSLCompile.call(), expansions_update( updates=[ - KeyValueParam(key='CC', value='clang'), + KeyValueParam(key='CC', value='gcc'), # OIDC test servers support both OIDC and user/password. KeyValueParam(key='AUTH', value='auth'), # Use user/password for default test clients. KeyValueParam(key='OIDC', value='oidc'), # Enable OIDC tests. diff --git a/.evergreen/generated_configs/tasks.yml b/.evergreen/generated_configs/tasks.yml index e368108ddc3..7443eb71516 100644 --- a/.evergreen/generated_configs/tasks.yml +++ b/.evergreen/generated_configs/tasks.yml @@ -4215,7 +4215,7 @@ tasks: - command: expansions.update params: updates: - - { key: CC, value: clang } + - { key: CC, value: gcc } - { key: AUTH, value: auth } - { key: OIDC, value: oidc } - { key: MONGODB_VERSION, value: latest } From a23414514ed385921c48330455df3af38c068ce6 Mon Sep 17 00:00:00 2001 From: Kevin Albertson Date: Thu, 30 Oct 2025 10:48:11 -0400 Subject: [PATCH 3/6] fix test leak --- src/libmongoc/tests/test-mongoc-oidc.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/libmongoc/tests/test-mongoc-oidc.c b/src/libmongoc/tests/test-mongoc-oidc.c index 4e3a487f48a..c4138997a8d 100644 --- a/src/libmongoc/tests/test-mongoc-oidc.c +++ b/src/libmongoc/tests/test-mongoc-oidc.c @@ -269,8 +269,8 @@ test_oidc_bad_config(void *unused) // Expect error if callback is set twice on pool: { - mongoc_client_pool_t *pool = - mongoc_client_pool_new(mongoc_uri_new("mongodb://localhost/?authMechanism=MONGODB-OIDC")); + mongoc_uri_t *uri = mongoc_uri_new("mongodb://localhost/?authMechanism=MONGODB-OIDC"); + mongoc_client_pool_t *pool = mongoc_client_pool_new(uri); mongoc_oidc_callback_t *cb = mongoc_oidc_callback_new(oidc_callback_fn); ASSERT(mongoc_client_pool_set_oidc_callback(pool, cb)); capture_logs(true); @@ -278,6 +278,7 @@ test_oidc_bad_config(void *unused) ASSERT_CAPTURED_LOG("oidc", MONGOC_LOG_LEVEL_ERROR, "called once"); mongoc_oidc_callback_destroy(cb); mongoc_client_pool_destroy(pool); + mongoc_uri_destroy(uri); } } From 550698775905bfb80b37908e7dd55c62d0bca63b Mon Sep 17 00:00:00 2001 From: Kevin Albertson Date: Wed, 26 Nov 2025 14:16:42 -0500 Subject: [PATCH 4/6] remove unnecessary `CHECK_LOG` --- .evergreen/config_generator/components/oidc.py | 1 - .evergreen/generated_configs/variants.yml | 1 - 2 files changed, 2 deletions(-) diff --git a/.evergreen/config_generator/components/oidc.py b/.evergreen/config_generator/components/oidc.py index 6905865be90..d7b9cc3a88d 100644 --- a/.evergreen/config_generator/components/oidc.py +++ b/.evergreen/config_generator/components/oidc.py @@ -73,7 +73,6 @@ def variants(): expansions = { 'ASAN': 'on', 'CFLAGS': '-fno-omit-frame-pointer', - 'CHECK_LOG': 'ON', 'SANITIZE': 'address,undefined', } ), diff --git a/.evergreen/generated_configs/variants.yml b/.evergreen/generated_configs/variants.yml index 677d3f0692e..10258c039f5 100644 --- a/.evergreen/generated_configs/variants.yml +++ b/.evergreen/generated_configs/variants.yml @@ -260,7 +260,6 @@ buildvariants: expansions: ASAN: "on" CFLAGS: -fno-omit-frame-pointer - CHECK_LOG: "ON" SANITIZE: address,undefined tasks: - name: test-oidc-task-group From fd332f025958d03a7dd066fab141723345a98c5f Mon Sep 17 00:00:00 2001 From: Kevin Albertson Date: Wed, 26 Nov 2025 14:20:55 -0500 Subject: [PATCH 5/6] regenerate Evg config --- .evergreen/generated_configs/tasks.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.evergreen/generated_configs/tasks.yml b/.evergreen/generated_configs/tasks.yml index ec5ba933162..179029ad527 100644 --- a/.evergreen/generated_configs/tasks.yml +++ b/.evergreen/generated_configs/tasks.yml @@ -4159,16 +4159,19 @@ tasks: run_on: - ubuntu2404-small commands: - - func: fetch-source - - func: sasl-cyrus-openssl-compile - command: expansions.update params: updates: + - { key: ASAN, value: "on" } + - { key: CFLAGS, value: -fno-omit-frame-pointer } + - { key: SANITIZE, value: "address,undefined" } - { key: CC, value: gcc } - { key: AUTH, value: auth } - { key: OIDC, value: oidc } - { key: MONGODB_VERSION, value: latest } - { key: TOPOLOGY, value: replica_set } + - func: fetch-source + - func: sasl-cyrus-openssl-compile - func: run-tests - name: oidc-azure-auth-test-task run_on: From 57a0b2260739d77c4095d29e95c7fdb5dbc3e44b Mon Sep 17 00:00:00 2001 From: Kevin Albertson Date: Wed, 26 Nov 2025 14:22:07 -0500 Subject: [PATCH 6/6] reorder commands Expansions are not needed until compile step --- .evergreen/config_generator/components/oidc.py | 2 +- .evergreen/generated_configs/tasks.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.evergreen/config_generator/components/oidc.py b/.evergreen/config_generator/components/oidc.py index 64764c3ee00..06dbb925cb4 100644 --- a/.evergreen/config_generator/components/oidc.py +++ b/.evergreen/config_generator/components/oidc.py @@ -90,6 +90,7 @@ def tasks(): name='oidc-auth-test-task', run_on=[find_small_distro('ubuntu2404').name], commands=[ + FetchSource.call(), expansions_update( updates=[ KeyValueParam(key='ASAN', value='on'), @@ -103,7 +104,6 @@ def tasks(): KeyValueParam(key='TOPOLOGY', value='replica_set'), ] ), - FetchSource.call(), SaslCyrusOpenSSLCompile.call(), RunTests.call(), ], diff --git a/.evergreen/generated_configs/tasks.yml b/.evergreen/generated_configs/tasks.yml index 179029ad527..1e2d5296441 100644 --- a/.evergreen/generated_configs/tasks.yml +++ b/.evergreen/generated_configs/tasks.yml @@ -4159,6 +4159,7 @@ tasks: run_on: - ubuntu2404-small commands: + - func: fetch-source - command: expansions.update params: updates: @@ -4170,7 +4171,6 @@ tasks: - { key: OIDC, value: oidc } - { key: MONGODB_VERSION, value: latest } - { key: TOPOLOGY, value: replica_set } - - func: fetch-source - func: sasl-cyrus-openssl-compile - func: run-tests - name: oidc-azure-auth-test-task