Skip to content

TEZ-4751: Fix flaky testVertexCompletelyFinished_One2One in TestAMRecovery - #535

Open
maheshrajus wants to merge 1 commit into
apache:masterfrom
maheshrajus:TEZ-4751
Open

TEZ-4751: Fix flaky testVertexCompletelyFinished_One2One in TestAMRecovery#535
maheshrajus wants to merge 1 commit into
apache:masterfrom
maheshrajus:TEZ-4751

Conversation

@maheshrajus

Copy link
Copy Markdown
Contributor

Root cause:
The Controlled*VertexManager classes kill the AM with System.exit(-1) inside onSourceTaskCompleted().
System.exit skips serviceStop(), so the async recovery-event thread can be killed before it flushes
VertexFinishedEvent / VertexConfigurationDoneEvent to HDFS. On attempt 2, v2 can't reach CONFIGURED and the
DAG ends in ERROR.

Fix:
Replace the System.exit with an external, deterministic kill (same pattern as TEZ-4725):

  • runDAGAndVerify polls until v1 reaches the expected state, then calls YarnClient.failApplicationAttempt(attempt1) — YARN shuts the AM down cleanly and the recovery queue drains.
  • The three Controlled*VertexManager classes become simple passthroughs (no more System.exit).

@tez-yetus

Copy link
Copy Markdown

🎊 +1 overall

Vote Subsystem Runtime Logfile Comment
+0 🆗 reexec 0m 8s Docker mode activated.
_ Prechecks _
+1 💚 dupname 0m 0s No case conflicting files found.
+0 🆗 detsecrets 0m 0s detect-secrets was not available.
+1 💚 @author 0m 0s The patch does not contain any @author tags.
+1 💚 test4tests 0m 0s The patch appears to include 1 new or modified test files.
_ master Compile Tests _
+1 💚 mvninstall 2m 59s master passed
+1 💚 compile 2m 35s master passed
+1 💚 checkstyle 0m 23s master passed
+1 💚 javadoc 0m 19s master passed
+0 🆗 spotbugs 0m 36s tez-tests in master has 6 extant spotbugs warnings.
_ Patch Compile Tests _
+1 💚 mvninstall 2m 17s the patch passed
+1 💚 codespell 0m 50s No new issues.
+1 💚 compile 2m 34s the patch passed
+1 💚 javac 2m 34s the patch passed
+1 💚 blanks 0m 0s The patch has no blanks issues.
+1 💚 checkstyle 0m 18s tez-tests: The patch generated 0 new + 17 unchanged - 3 fixed = 17 total (was 20)
+1 💚 javadoc 0m 19s the patch passed
+1 💚 spotbugs 0m 43s the patch passed
_ Other Tests _
+1 💚 unit 61m 13s root in the patch passed.
+1 💚 asflicense 0m 22s The patch does not generate ASF License warnings.
76m 39s
Subsystem Report/Notes
Docker ClientAPI=1.55 ServerAPI=1.55 base: https://ci-hadoop.apache.org/job/tez-multibranch/job/PR-535/1/artifact/out/Dockerfile
Optional Tests dupname compile unit asflicense javac javadoc spotbugs checkstyle codespell detsecrets
uname Linux dd20a9469369 5.15.0-190-generic #200-Ubuntu SMP Fri Aug 7 15:06:04 UTC 2026 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality tez-personality.sh
git revision master / 0e9f756
Default Java Eclipse Adoptium-21.0.12+8-LTS
Test Results https://ci-hadoop.apache.org/job/tez-multibranch/job/PR-535/1/testReport/
Max. process+thread count 1388 (vs. ulimit of 5500)
modules C: tez-tests U: tez-tests
Console output https://ci-hadoop.apache.org/job/tez-multibranch/job/PR-535/1/console
versions git=2.43.0 maven=3.9.15 spotbugs=4.9.3 codespell=2.4.1
Powered by Apache Yetus 0.15.1 https://yetus.apache.org

This message was automatically generated.

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.

2 participants