From e8066d34258d9d80c4fb8361b874533e6858f654 Mon Sep 17 00:00:00 2001 From: Vova Kolmakov Date: Mon, 15 Jun 2026 14:23:49 +0700 Subject: [PATCH] [MINOR] Cap UT_FT_10 Azure install to -T 2 to avoid flaky compiler heap OOM The UT_FT_10 Azure job builds the full reactor with `mvn clean install` under the shared MVN_OPTS_INSTALL `-T 3` inside a single `-Xmx8g` JVM, and intermittently OOMs during compilation (most recently hudi-kafka-connect-bundle) when several heavy concurrent builds align in time. Prepend `-T 2` to this job's install so Maven (first -T wins) caps its concurrency to 2 while every other job keeps the shared -T 3. Local measurement: the full install peaks at ~2.4 GB at -T 1 and -T 2 vs ~2.9 GB at -T 3, all well under the 8g ceiling, and -T 2 keeps essentially the same wall-clock as -T 3. --- azure-pipelines-20230430.yml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/azure-pipelines-20230430.yml b/azure-pipelines-20230430.yml index 3edac6046b1a3..ce003a13b11f3 100644 --- a/azure-pipelines-20230430.yml +++ b/azure-pipelines-20230430.yml @@ -515,11 +515,17 @@ stages: containerRegistry: 'apachehudi-docker-hub' repository: 'apachehudi/hudi-ci-bundle-validation-base' command: 'run' + # UT_FT_10 builds the full reactor with `clean install`. Under the + # shared MVN_OPTS_INSTALL `-T 3`, concurrent module builds (notably + # parallel maven-shade of large bundles) can spike heap past the 8g + # ceiling and flakily OOM. Prepend `-T 2` below so Maven (first -T + # wins) caps concurrency for THIS job's install only; other jobs + # keep the shared -T 3. arguments: > -v $(Build.SourcesDirectory):/hudi -v /var/run/docker.sock:/var/run/docker.sock -i docker.io/apachehudi/hudi-ci-bundle-validation-base:$(Build.BuildId) - /bin/bash -c "MAVEN_OPTS='-Xmx8g' mvn clean install $(MVN_OPTS_INSTALL) -Phudi-platform-service -Pthrift-gen-source + /bin/bash -c "MAVEN_OPTS='-Xmx8g' mvn clean install -T 2 $(MVN_OPTS_INSTALL) -Phudi-platform-service -Pthrift-gen-source && mvn test $(MVN_OPTS_TEST) -Punit-tests -Dsurefire.failIfNoSpecifiedTests=false $(JACOCO_AGENT_DESTFILE1_ARG) -pl $(JOB10_UT_MODULES) && mvn test $(MVN_OPTS_TEST) -Punit-tests $(JACOCO_AGENT_DESTFILE2_ARG) -Dtest="!TestHoodie*" -Dsurefire.failIfNoSpecifiedTests=false -pl hudi-utilities && mvn test $(MVN_OPTS_TEST) -Pfunctional-tests -Dsurefire.failIfNoSpecifiedTests=false $(JACOCO_AGENT_DESTFILE3_ARG) -pl $(JOB10_FT_MODULES)"