Esteban Gutierrez created HBASE-9003:
----------------------------------------
Summary: TableMapReduceUtil should not rely on
org.apache.hadoop.util.JarFinder#getJar
Key: HBASE-9003
URL: https://issues.apache.org/jira/browse/HBASE-9003
Project: HBase
Issue Type: Bug
Components: mapreduce
Affects Versions: 0.94.9, 0.95.1, 0.92.2
Reporter: Esteban Gutierrez
This is the problem: {{TableMapReduceUtil#addDependencyJars}} relies on
{{org.apache.hadoop.util.JarFinder}} if available to call {{getJar()}}. However
{{getJar()}} uses File.createTempFile() to create a temporary file under
{{hadoop.tmp.dir}}{{/target/test-dir}}. Due HADOOP-9737 the created jar and its
content is not purged after the JVM is destroyed. Since most configurations
point {{hadoop.tmp.dir}} under {{/tmp}} the generated jar files get purged by
{{tmpwatch}} or a similar tool, but boxes that have {{hadoop.tmp.dir}} pointing
to a different location not monitored by {{tmpwatch}} will pile up a collection
of jars causing all kind of issues. Since {{JarFinder#getJar}} is not a public
API from Hadoop (see [~tucu00] comment on HADOOP-9737) we shouldn't use that as
part of {{TableMapReduceUtil}} in order to avoid this kind of issues.
--
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