Ivan A. Veselovsky created HADOOP-9256:
------------------------------------------

             Summary: A number of Yarn and Mapreduce tests fail due to not 
substituted values in *-version-info.properties
                 Key: HADOOP-9256
                 URL: https://issues.apache.org/jira/browse/HADOOP-9256
             Project: Hadoop Common
          Issue Type: Bug
            Reporter: Ivan A. Veselovsky


Newly added plugin VersionInfoMojo should calculate properties (like time, scm 
branch, etc.), and after that the resource plugin should make replacements in 
the following files: 
./hadoop-common-project/hadoop-common/target/classes/common-version-info.properties
./hadoop-common-project/hadoop-common/src/main/resources/common-version-info.properties
./hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/target/classes/yarn-version-info.properties
./hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/resources/yarn-version-info.properties
, that are read later in test run-time. 
But for some reason it does not do that.
As a result, a bunch of tests are permanently failing because the code of these 
tests is veryfying the corresponding property files for correctness:
org.apache.hadoop.mapreduce.v2.hs.webapp.TestHsWebServices.testHS
org.apache.hadoop.mapreduce.v2.hs.webapp.TestHsWebServices.testHSSlash
org.apache.hadoop.mapreduce.v2.hs.webapp.TestHsWebServices.testHSDefault
org.apache.hadoop.mapreduce.v2.hs.webapp.TestHsWebServices.testHSXML
org.apache.hadoop.mapreduce.v2.hs.webapp.TestHsWebServices.testInfo
org.apache.hadoop.mapreduce.v2.hs.webapp.TestHsWebServices.testInfoSlash
org.apache.hadoop.mapreduce.v2.hs.webapp.TestHsWebServices.testInfoDefault
org.apache.hadoop.mapreduce.v2.hs.webapp.TestHsWebServices.testInfoXML
org.apache.hadoop.yarn.server.nodemanager.webapp.TestNMWebServices.testNode
org.apache.hadoop.yarn.server.nodemanager.webapp.TestNMWebServices.testNodeSlash
org.apache.hadoop.yarn.server.nodemanager.webapp.TestNMWebServices.testNodeDefault
org.apache.hadoop.yarn.server.nodemanager.webapp.TestNMWebServices.testNodeInfo
org.apache.hadoop.yarn.server.nodemanager.webapp.TestNMWebServices.testNodeInfoSlash
org.apache.hadoop.yarn.server.nodemanager.webapp.TestNMWebServices.testNodeInfoDefault
org.apache.hadoop.yarn.server.nodemanager.webapp.TestNMWebServices.testSingleNodesXML
org.apache.hadoop.yarn.server.resourcemanager.security.TestApplicationTokens.testTokenExpiry
org.apache.hadoop.yarn.server.resourcemanager.webapp.TestRMWebServices.testInfoXML
org.apache.hadoop.yarn.server.resourcemanager.webapp.TestRMWebServices.testCluster
org.apache.hadoop.yarn.server.resourcemanager.webapp.TestRMWebServices.testClusterSlash
org.apache.hadoop.yarn.server.resourcemanager.webapp.TestRMWebServices.testClusterDefault
org.apache.hadoop.yarn.server.resourcemanager.webapp.TestRMWebServices.testInfo
org.apache.hadoop.yarn.server.resourcemanager.webapp.TestRMWebServices.testInfoSlash
org.apache.hadoop.yarn.server.resourcemanager.webapp.TestRMWebServices.testInfoDefault

Some of these failures can be observed in Apache builds, e.g.: 
https://builds.apache.org/view/Hadoop/job/PreCommit-YARN-Build/370/testReport/

As far as I see the substitution does not happen because corresponding 
properties are set by the VersionInfoMojo plugin *after* the corresponding 
resource plugin task is executed.

Workaround: manually change files 
./hadoop-common-project/hadoop-common/src/main/resources/common-version-info.properties
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/resources/yarn-version-info.properties
and set arbitrary reasonable non-${} string parameters as the values.
After that the tests pass.


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to