Skip to content

TEZ-4695: Consolidate surefire plugin config to remove redundant surefire blocks#467

Merged
abstractdog merged 2 commits intoapache:masterfrom
Aggarwal-Raghav:TEZ-4695
Mar 19, 2026
Merged

TEZ-4695: Consolidate surefire plugin config to remove redundant surefire blocks#467
abstractdog merged 2 commits intoapache:masterfrom
Aggarwal-Raghav:TEZ-4695

Conversation

@Aggarwal-Raghav
Copy link
Contributor

@Aggarwal-Raghav Aggarwal-Raghav commented Mar 17, 2026

The surefire changes are to pass the argline defines in parent pom to child pom and the environment variables defined in parent pom, child pom should inherit them. This will reduce explicit surefire plugin block in child module pom

@Aggarwal-Raghav
Copy link
Contributor Author

Aggarwal-Raghav commented Mar 17, 2026

Based on discussion #465 (comment), created separate PR for surefire changes.

<forkedProcessTimeoutInSeconds>900</forkedProcessTimeoutInSeconds>
<testFailureIgnore>true</testFailureIgnore>
<argLine>-Xmx1024m -XX:+HeapDumpOnOutOfMemoryError</argLine>
<argLine>${test.jvm.args}</argLine>
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Having 2 argline is a BUG. The test.jvm.args is overwriting the above argLine i.e. Xmx one
Screenshots:
Before:
Image

After:
Image

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Aggarwal-Raghav : patch itself looks good to me, only a minor concern: now as -Xmx1024m finally applied post-patch, I'm not sure how that behave pre-patch in terms of max heap? the only reason I'm worried about this is that unit tests look to be slower in this run, e.g. tez-dag took 6min, while in other PRs it was 3-4mins consistently

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If the default Xmx value was behaving well so far (locally and CI) then we could keep it the same for now. We could revisit the size if/when we encounter memory issues.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

agreed, if pre-patch there was no Xmx applied, we can simply remove it now, no further investigation needed

Copy link
Contributor

@abstractdog abstractdog left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, pending tests
this looks a good improvement with reducing duplicated pom snippets

@tez-yetus
Copy link

💔 -1 overall

Vote Subsystem Runtime Logfile Comment
+0 🆗 reexec 7m 33s Docker mode activated.
_ Prechecks _
+1 💚 dupname 0m 0s No case conflicting files found.
+0 🆗 detsecrets 0m 0s detect-secrets was not available.
+0 🆗 xmllint 0m 0s xmllint was not available.
+1 💚 @author 0m 0s The patch does not contain any @author tags.
-1 ❌ test4tests 0m 0s The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.
_ master Compile Tests _
+0 🆗 mvndep 2m 26s Maven dependency ordering for branch
+1 💚 mvninstall 9m 11s master passed
+1 💚 compile 4m 15s master passed
+1 💚 javadoc 2m 49s master passed
_ Patch Compile Tests _
+0 🆗 mvndep 0m 14s Maven dependency ordering for patch
+1 💚 mvninstall 5m 36s the patch passed
+1 💚 codespell 1m 34s No new issues.
+1 💚 compile 4m 12s the patch passed
+1 💚 javac 4m 12s the patch passed
+1 💚 blanks 0m 0s The patch has no blanks issues.
+1 💚 javadoc 2m 43s the patch passed
_ Other Tests _
+1 💚 unit 6m 6s tez-dag in the patch passed.
+1 💚 unit 39m 12s tez-tests in the patch passed.
+1 💚 unit 4m 30s tez-ext-service-tests in the patch passed.
+1 💚 unit 72m 42s root in the patch passed.
+1 💚 asflicense 1m 56s The patch does not generate ASF License warnings.
166m 45s
Subsystem Report/Notes
Docker ClientAPI=1.54 ServerAPI=1.54 base: https://ci-hadoop.apache.org/job/tez-multibranch/job/PR-467/1/artifact/out/Dockerfile
GITHUB PR #467
Optional Tests dupname asflicense javac javadoc unit codespell detsecrets xmllint compile
uname Linux b7476705d2ce 5.15.0-173-generic #183-Ubuntu SMP Fri Mar 6 13:29:34 UTC 2026 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality /home/jenkins/jenkins-home/workspace/tez-multibranch_PR-467/src/.yetus/personality.sh
git revision master / 592c7c5
Default Java Ubuntu-21.0.10+7-Ubuntu-124.04
Test Results https://ci-hadoop.apache.org/job/tez-multibranch/job/PR-467/1/testReport/
Max. process+thread count 2102 (vs. ulimit of 5500)
modules C: tez-dag tez-tests tez-ext-service-tests . U: .
Console output https://ci-hadoop.apache.org/job/tez-multibranch/job/PR-467/1/console
versions git=2.43.0 maven=3.8.7 codespell=2.4.1
Powered by Apache Yetus 0.15.1 https://yetus.apache.org

This message was automatically generated.

pom.xml Outdated
<testFailureIgnore>true</testFailureIgnore>
<argLine>-Xmx1024m -XX:+HeapDumpOnOutOfMemoryError</argLine>
<argLine>${test.jvm.args}</argLine>
<argLine>-Xmx1024m -XX:+HeapDumpOnOutOfMemoryError ${test.jvm.args}</argLine>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The test.jvm.args property was only meant to be used for surefire. Since we only use it here we could get rid of the property and simply inline the content here.

tez-dag/pom.xml Outdated
<environmentVariables>
<LOG_DIRS>${test.log.dir}</LOG_DIRS>
<environmentVariables combine.children="append">
<TEZ_AM_EXTERNAL_ID>test-external-id</TEZ_AM_EXTERNAL_ID>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For simplicity, maybe we could also put this env var in the main pom.xml file.

<forkedProcessTimeoutInSeconds>900</forkedProcessTimeoutInSeconds>
<testFailureIgnore>true</testFailureIgnore>
<argLine>-Xmx1024m -XX:+HeapDumpOnOutOfMemoryError</argLine>
<argLine>${test.jvm.args}</argLine>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If the default Xmx value was behaving well so far (locally and CI) then we could keep it the same for now. We could revisit the size if/when we encounter memory issues.

@Aggarwal-Raghav
Copy link
Contributor Author

Thanks a lot for the review @abstractdog , @zabetak . Will update the PR in some time.

-XX:+HeapDumpOnOutOfMemoryError
--add-opens=java.base/java.lang=ALL-UNNAMED
--add-opens=java.base/java.util=ALL-UNNAMED
--add-opens=java.base/java.io=ALL-UNNAMED
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In 3rd --add-opens java.base/java.io=ALL-UNNAMED equals was missing in <test.jvm.args> added it.

<artifactId>tez-tests</artifactId>

<properties>
<test.log.dir>${project.build.directory}/logs</test.log.dir>
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

removed <test.log.dir> property from child pom's . The ant plugin in child pom is still using it but the appropriate value is propagated from parent pom to child pom.

@tez-yetus
Copy link

💔 -1 overall

Vote Subsystem Runtime Logfile Comment
+0 🆗 reexec 7m 12s Docker mode activated.
_ Prechecks _
+1 💚 dupname 0m 0s No case conflicting files found.
+0 🆗 detsecrets 0m 0s detect-secrets was not available.
+0 🆗 xmllint 0m 0s xmllint was not available.
+1 💚 @author 0m 0s The patch does not contain any @author tags.
-1 ❌ test4tests 0m 0s The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.
_ master Compile Tests _
+0 🆗 mvndep 2m 26s Maven dependency ordering for branch
+1 💚 mvninstall 9m 28s master passed
+1 💚 compile 4m 15s master passed
+1 💚 javadoc 2m 47s master passed
_ Patch Compile Tests _
+0 🆗 mvndep 0m 13s Maven dependency ordering for patch
+1 💚 mvninstall 5m 34s the patch passed
+1 💚 codespell 1m 34s No new issues.
+1 💚 compile 4m 9s the patch passed
+1 💚 javac 4m 9s the patch passed
+1 💚 blanks 0m 0s The patch has no blanks issues.
+1 💚 javadoc 2m 34s the patch passed
_ Other Tests _
+1 💚 unit 5m 46s tez-dag in the patch passed.
+1 💚 unit 37m 45s tez-tests in the patch passed.
+1 💚 unit 4m 25s tez-ext-service-tests in the patch passed.
+1 💚 unit 72m 27s root in the patch passed.
+1 💚 asflicense 1m 51s The patch does not generate ASF License warnings.
164m 15s
Subsystem Report/Notes
Docker ClientAPI=1.54 ServerAPI=1.54 base: https://ci-hadoop.apache.org/job/tez-multibranch/job/PR-467/2/artifact/out/Dockerfile
GITHUB PR #467
Optional Tests dupname asflicense javac javadoc unit codespell detsecrets xmllint compile
uname Linux bfba46fdfe12 5.15.0-160-generic #170-Ubuntu SMP Wed Oct 1 10:06:56 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality /home/jenkins/jenkins-home/workspace/tez-multibranch_PR-467/src/.yetus/personality.sh
git revision master / fc230c5
Default Java Ubuntu-21.0.10+7-Ubuntu-124.04
Test Results https://ci-hadoop.apache.org/job/tez-multibranch/job/PR-467/2/testReport/
Max. process+thread count 1409 (vs. ulimit of 5500)
modules C: tez-dag tez-tests tez-ext-service-tests . U: .
Console output https://ci-hadoop.apache.org/job/tez-multibranch/job/PR-467/2/console
versions git=2.43.0 maven=3.8.7 codespell=2.4.1
Powered by Apache Yetus 0.15.1 https://yetus.apache.org

This message was automatically generated.

Copy link
Member

@zabetak zabetak left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@abstractdog
Copy link
Contributor

neat, and makes pom.xml much cleaner, thanks @Aggarwal-Raghav, merging this soon
thanks @zabetak for the review!

@abstractdog abstractdog self-requested a review March 19, 2026 08:31
@abstractdog abstractdog merged commit de1c2c8 into apache:master Mar 19, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants