From 5d1ea40c8e8c21789b8f4248f18c5a12f2b19068 Mon Sep 17 00:00:00 2001 From: Michal Nowak Date: Thu, 2 May 2024 17:24:31 +0200 Subject: [PATCH 1/3] Revert "Drop parallel build from stress tests" This reverts commit 3fd7e7c81f81e21adebde2930fe511fe335f825e. In AWS this is no longer a concern. (cherry picked from commit 1d77a3b3c61c310c8b104aa2a68fcfcf53b3e083) --- .gitlab-ci.yml | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 43feefd4ae..e07e79241d 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1578,16 +1578,12 @@ shotgun:dot: when: delayed start_in: 5 minutes -# Parallel build in the "make" step is avoided since multiple jobs can be -# executed concurrently on the same runner. This may present problems when one -# job runs a performance-sensitive task of replying to queries while another -# takes all cores to build BIND. .stress: &stress_job stage: performance script: - *configure - *setup_interfaces - - make -k all V=1 + - make -j${BUILD_PARALLEL_JOBS:-1} -k all V=1 - make DESTDIR="${INSTALL_PATH}" install - git clone --depth 1 https://gitlab.isc.org/isc-projects/bind9-qa.git - cd bind9-qa/stress From 769dc2386249524e87e4cbdc811bc7eb3891df89 Mon Sep 17 00:00:00 2001 From: Michal Nowak Date: Thu, 2 May 2024 17:37:01 +0200 Subject: [PATCH 2/3] Rename "stress" tests to long "stress" tests (cherry picked from commit 58a1a50e76bf36c7d3675a3734d7ee1f0627e735) --- .gitlab-ci.yml | 41 ++++++++++++++++++++++------------------- 1 file changed, 22 insertions(+), 19 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e07e79241d..54c9685d14 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1578,7 +1578,7 @@ shotgun:dot: when: delayed start_in: 5 minutes -.stress: &stress_job +.stress-test: &stress_test stage: performance script: - *configure @@ -1591,6 +1591,9 @@ shotgun:dot: needs: - job: autoreconf artifacts: true + +.stress-test-long: &stress_test_long_job + <<: *stress_test artifacts: untracked: true expire_in: "1 week" @@ -1600,14 +1603,14 @@ shotgun:dot: stress:authoritative:fedora:39:amd64: <<: *fedora_39_amd64_image <<: *linux_amd64 - <<: *stress_job + <<: *stress_test_long_job variables: CC: gcc CFLAGS: "${CFLAGS_COMMON} -Og" FLAME: /usr/bin/flame MODE: authoritative RATE: 10000 - RUN_TIME: 1 + RUN_TIME: 60 only: variables: - $CI_COMMIT_TAG || ($BIND_STRESS_TEST_OS =~ /linux/i && $BIND_STRESS_TEST_MODE =~ /authoritative/i && $BIND_STRESS_TEST_ARCH =~ /amd64/i) @@ -1615,14 +1618,14 @@ stress:authoritative:fedora:39:amd64: stress:recursive:fedora:39:amd64: <<: *fedora_39_amd64_image <<: *linux_amd64 - <<: *stress_job + <<: *stress_test_long_job variables: CC: gcc CFLAGS: "${CFLAGS_COMMON} -Og" FLAME: /usr/bin/flame MODE: recursive RATE: 10000 - RUN_TIME: 1 + RUN_TIME: 60 only: variables: - $CI_COMMIT_TAG || ($BIND_STRESS_TEST_OS =~ /linux/i && $BIND_STRESS_TEST_MODE =~ /recursive/i && $BIND_STRESS_TEST_ARCH =~ /amd64/i) @@ -1630,14 +1633,14 @@ stress:recursive:fedora:39:amd64: stress:rpz:fedora:39:amd64: <<: *fedora_39_amd64_image <<: *linux_amd64 - <<: *stress_job + <<: *stress_test_long_job variables: CC: gcc CFLAGS: "${CFLAGS_COMMON} -Og" FLAME: /usr/bin/flame MODE: rpz RATE: 1500 - RUN_TIME: 1 + RUN_TIME: 60 only: variables: - $CI_COMMIT_TAG || ($BIND_STRESS_TEST_OS =~ /linux/i && $BIND_STRESS_TEST_MODE =~ /rpz/i && $BIND_STRESS_TEST_ARCH =~ /amd64/i) @@ -1645,14 +1648,14 @@ stress:rpz:fedora:39:amd64: stress:authoritative:fedora:39:arm64: <<: *fedora_39_arm64_image <<: *linux_arm64 - <<: *stress_job + <<: *stress_test_long_job variables: CC: gcc CFLAGS: "${CFLAGS_COMMON} -Og" FLAME: /usr/bin/flame MODE: authoritative RATE: 10000 - RUN_TIME: 1 + RUN_TIME: 60 only: variables: - $CI_COMMIT_TAG || ($BIND_STRESS_TEST_OS =~ /linux/i && $BIND_STRESS_TEST_MODE =~ /authoritative/i && $BIND_STRESS_TEST_ARCH =~ /arm64/i) @@ -1660,14 +1663,14 @@ stress:authoritative:fedora:39:arm64: stress:recursive:fedora:39:arm64: <<: *fedora_39_arm64_image <<: *linux_arm64 - <<: *stress_job + <<: *stress_test_long_job variables: CC: gcc CFLAGS: "${CFLAGS_COMMON} -Og" FLAME: /usr/bin/flame MODE: recursive RATE: 10000 - RUN_TIME: 1 + RUN_TIME: 60 only: variables: - $CI_COMMIT_TAG || ($BIND_STRESS_TEST_OS =~ /linux/i && $BIND_STRESS_TEST_MODE =~ /recursive/i && $BIND_STRESS_TEST_ARCH =~ /arm64/i) @@ -1675,56 +1678,56 @@ stress:recursive:fedora:39:arm64: stress:rpz:fedora:39:arm64: <<: *fedora_39_arm64_image <<: *linux_arm64 - <<: *stress_job + <<: *stress_test_long_job variables: CC: gcc CFLAGS: "${CFLAGS_COMMON} -Og" FLAME: /usr/bin/flame MODE: rpz RATE: 1500 - RUN_TIME: 1 + RUN_TIME: 60 only: variables: - $CI_COMMIT_TAG || ($BIND_STRESS_TEST_OS =~ /linux/i && $BIND_STRESS_TEST_MODE =~ /rpz/i && $BIND_STRESS_TEST_ARCH =~ /arm64/i) stress:authoritative:freebsd13:amd64: <<: *freebsd_stress_amd64 - <<: *stress_job + <<: *stress_test_long_job variables: CC: clang CFLAGS: "${CFLAGS_COMMON} -Og" FLAME: /usr/local/bin/flame MODE: authoritative RATE: 10000 - RUN_TIME: 1 + RUN_TIME: 60 only: variables: - $CI_COMMIT_TAG || ($BIND_STRESS_TEST_OS =~ /freebsd/i && $BIND_STRESS_TEST_MODE =~ /authoritative/i && $BIND_STRESS_TEST_ARCH =~ /amd64/i) stress:recursive:freebsd13:amd64: <<: *freebsd_stress_amd64 - <<: *stress_job + <<: *stress_test_long_job variables: CC: clang CFLAGS: "${CFLAGS_COMMON} -Og" FLAME: /usr/local/bin/flame MODE: recursive RATE: 10000 - RUN_TIME: 1 + RUN_TIME: 60 only: variables: - $CI_COMMIT_TAG || ($BIND_STRESS_TEST_OS =~ /freebsd/i && $BIND_STRESS_TEST_MODE =~ /recursive/i && $BIND_STRESS_TEST_ARCH =~ /amd64/i) stress:rpz:freebsd13:amd64: <<: *freebsd_stress_amd64 - <<: *stress_job + <<: *stress_test_long_job variables: CC: clang CFLAGS: "${CFLAGS_COMMON} -Og" FLAME: /usr/local/bin/flame MODE: rpz RATE: 1500 - RUN_TIME: 1 + RUN_TIME: 60 only: variables: - $CI_COMMIT_TAG || ($BIND_STRESS_TEST_OS =~ /freebsd/i && $BIND_STRESS_TEST_MODE =~ /rpz/i && $BIND_STRESS_TEST_ARCH =~ /amd64/i) From 8738a5841294ead84b9b22c02152f8587f6f2032 Mon Sep 17 00:00:00 2001 From: Michal Nowak Date: Thu, 2 May 2024 17:49:42 +0200 Subject: [PATCH 3/3] Add short "stress" test jobs (cherry picked from commit f33b746353116b581fc6c4f0b5d58aeea17da0be) --- .gitlab-ci.yml | 110 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 110 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 54c9685d14..55442f0cac 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1592,6 +1592,116 @@ shotgun:dot: - job: autoreconf artifacts: true +.stress-test-short: &stress_test_short_job + <<: *stress_test + only: + - merge_requests + +stress:short:authoritative:fedora:39:amd64: + <<: *fedora_39_amd64_image + <<: *linux_amd64 + <<: *stress_test_short_job + variables: + CC: gcc + CFLAGS: "${CFLAGS_COMMON} -Og" + FLAME: /usr/bin/flame + MODE: authoritative + RATE: 10000 + RUN_TIME: 15 + +stress:short:recursive:fedora:39:amd64: + <<: *fedora_39_amd64_image + <<: *linux_amd64 + <<: *stress_test_short_job + variables: + CC: gcc + CFLAGS: "${CFLAGS_COMMON} -Og" + FLAME: /usr/bin/flame + MODE: recursive + RATE: 10000 + RUN_TIME: 15 + +stress:short:rpz:fedora:39:amd64: + <<: *fedora_39_amd64_image + <<: *linux_amd64 + <<: *stress_test_short_job + variables: + CC: gcc + CFLAGS: "${CFLAGS_COMMON} -Og" + FLAME: /usr/bin/flame + MODE: rpz + RATE: 1500 + RUN_TIME: 15 + +stress:short:authoritative:fedora:39:arm64: + <<: *fedora_39_arm64_image + <<: *linux_arm64 + <<: *stress_test_short_job + variables: + CC: gcc + CFLAGS: "${CFLAGS_COMMON} -Og" + FLAME: /usr/bin/flame + MODE: authoritative + RATE: 10000 + RUN_TIME: 15 + +stress:short:recursive:fedora:39:arm64: + <<: *fedora_39_arm64_image + <<: *linux_arm64 + <<: *stress_test_short_job + variables: + CC: gcc + CFLAGS: "${CFLAGS_COMMON} -Og" + FLAME: /usr/bin/flame + MODE: recursive + RATE: 10000 + RUN_TIME: 15 + +stress:short:rpz:fedora:39:arm64: + <<: *fedora_39_arm64_image + <<: *linux_arm64 + <<: *stress_test_short_job + variables: + CC: gcc + CFLAGS: "${CFLAGS_COMMON} -Og" + FLAME: /usr/bin/flame + MODE: rpz + RATE: 1500 + RUN_TIME: 15 + +stress:short:authoritative:freebsd13:amd64: + <<: *freebsd_stress_amd64 + <<: *stress_test_short_job + variables: + CC: clang + CFLAGS: "${CFLAGS_COMMON} -Og" + FLAME: /usr/local/bin/flame + MODE: authoritative + RATE: 10000 + RUN_TIME: 15 + +stress:short:recursive:freebsd13:amd64: + <<: *freebsd_stress_amd64 + <<: *stress_test_short_job + variables: + CC: clang + CFLAGS: "${CFLAGS_COMMON} -Og" + FLAME: /usr/local/bin/flame + MODE: recursive + RATE: 10000 + RUN_TIME: 15 + +stress:short:rpz:freebsd13:amd64: + <<: *freebsd_stress_amd64 + <<: *stress_test_short_job + variables: + CC: clang + CFLAGS: "${CFLAGS_COMMON} -Og" + FLAME: /usr/local/bin/flame + MODE: rpz + RATE: 1500 + RUN_TIME: 15 + .stress-test-long: &stress_test_long_job <<: *stress_test artifacts: