Mechanism for providing version info of hadoop jars ---------------------------------------------------
Key: HADOOP-7368 URL: https://issues.apache.org/jira/browse/HADOOP-7368 Project: Hadoop Common Issue Type: Improvement Components: build Affects Versions: 0.23.0 Reporter: Luke Lu Assignee: Luke Lu Fix For: 0.23.0 In 0.20.x, only one jar (hadoop-core-*.jar) really matters. The o.a.h.util.VersionInfo combined with saveVersion.sh script (generating a package level annotation) served us well. For 0.23+, due to the project split and modularization of mapreduce (currently in MR-279), a lot more essential hadoop jars are created. The potential of mixing up the jars is significantly increased as well. We need a simple way to list the version info (version, branch, source checksum etc.) for all the jars involved. This is essential for QE and tracking down various issues. I propose that we use a VersionProvider interface (similar to the current VersionInfo util class) and ServiceLoader to enumerate the version providers in the jars. {code} public interface VersionProvider { String getJar(); String getPackage(); String getVersion(); String getRevision(); String getBranch(); String getDate(); String getUrl(); String getSourceChecksum(); } {code} -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira