[
https://issues.apache.org/jira/browse/HADOOP-19984?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jose Luis López reassigned HADOOP-19984:
----------------------------------------
Assignee: Jose Luis López
> Re-enable TestFsVolumeList and TestRouterNamenodeHeartbeatin GHA
> ----------------------------------------------------------------
>
> Key: HADOOP-19984
> URL: https://issues.apache.org/jira/browse/HADOOP-19984
> Project: Hadoop Common
> Issue Type: Sub-task
> Components: common, test
> Reporter: Jose Luis López
> Assignee: Jose Luis López
> Priority: Major
>
> h3. What
> Remove two entries from \{{.github/gha-tests/exclude-tests.txt}}:
> *
> \{{**/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/TestFsVolumeList.java}}
> *
> \{{**/org/apache/hadoop/hdfs/server/federation/router/TestRouterNamenodeHeartbeat.java}}
> Both were enabled by HDFS-17957. No code change is needed in this issue.
> h3. Why these two
> Per the umbrella's evidence bar: \{{reuseForks=false}} means a leaked
> mini-cluster cannot reach another class, so each case below is justified by
> harm the leak did inside its own class.
> *TestFsVolumeList* (hadoop-hdfs, 11 tests). All three \{{MiniDFSCluster}}
> instances in the class were built and left unclosed, in the same JVM, one
> after
> another. The heaviest, \{{testAddRplicaProcessorForAddingReplicaInMap}},
> drives
> 1000 replicas through a 10-thread pool before its cluster is abandoned, so a
> later test in the class ran against the accumulated residue of the earlier
> ones.
> HDFS-17957 converted all three sites to try-with-resources; that method also
> now
> carries \{{@Timeout(300)}}.
> *TestRouterNamenodeHeartbeat* (hadoop-hdfs-rbf, 6 tests). The class stands up
> a
> two-nameservice \{{MiniRouterDFSCluster}} in \{{@BeforeAll}} and tears it
> down in
> {\{@AfterAll}}. \{{testNamenodeHeartbeatService}} stood up a *second*,
> separate
> router cluster alongside it and never shut it down, so from that test onward
> the
> JVM carried two concurrent router clusters for the remainder of the class.
> HDFS-17957 closes it in a \{{finally}} block. The class's other cluster site
> already had its own shutdown.
> h3. Risk
> Neither class carries \{{@Tag("slow")}}. Neither is excluded anywhere else in
> the
> repository. HDFS-17957 set \{{junit.jupiter.execution.timeout.default}} to
> 600s
> for hadoop-hdfs and 1800s for hadoop-hdfs-rbf, so a regression in either class
> surfaces as a named test failure rather than a lost fork.
> Unlike HADOOP-19979, neither fix here came with a measured failure rate, so
> the
> case is structural rather than observed: the leaks were real and are now gone,
> but we do not have a recorded failure tying either exclusion to them. The five
> GHA runs are what settles it.
> h3. Acceptance criteria
> Five consecutive successful GHA runs with both entries removed, per
> {\{.github/gha-tests/README.md}}.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]