[
https://issues.apache.org/jira/browse/HADOOP-1622?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12518470
]
stack commented on HADOOP-1622:
-------------------------------
I tried running latest patch and failed with below:
{code}
durruti:~/Documents/checkouts/hadoop-commit stack$ more
build/test/TEST-org.apache.hadoop.util.TestJarUtils.txt
Testsuite: org.apache.hadoop.util.TestJarUtils
Tests run: 5, Failures: 4, Errors: 0, Time elapsed: 0.258 sec
------------- Standard Output ---------------
2007-08-08 08:00:01,272 INFO util.JarUtils (JarUtils.java:jarAll(311)) -
Adding file2:102 to test-out2.jar.
2007-08-08 08:00:01,276 INFO util.JarUtils (JarUtils.java:jarAll(229)) -
Adding dir1/dir1-1/dir1-2/file1:0 to test-out2.jar.
2007-08-08 08:00:01,279 INFO util.JarUtils (JarUtils.java:jarAll(229)) -
Adding dir2/dir2-1/file2:0 to test-out2.jar.
2007-08-08 08:00:01,280 INFO util.JarUtils (JarUtils.java:jarAll(229)) -
Adding dir3/file3:0 to test-out2.jar.
2007-08-08 08:00:01,281 INFO util.JarUtils (JarUtils.java:jarAll(257)) -
Adding file4.txt:0 to test-out2.jar.
------------- ---------------- ---------------
Testcase: testGetJarPath took 0.175 sec
FAILED
expected:<.../dir1-2/...> but was:<...\dir1-2\...>
junit.framework.ComparisonFailure: expected:<.../dir1-2/...> but
was:<...\dir1-2\...>
at
org.apache.hadoop.util.TestJarUtils.testGetJarPath(TestJarUtils.java:88)
Testcase: testJar took 0.022 sec
FAILED
null
junit.framework.AssertionFailedError
at org.apache.hadoop.util.TestJarUtils.testJar(TestJarUtils.java:111)
Testcase: testIsJarOrZip took 0.015 sec
Testcase: testJarAll took 0.024 sec
FAILED
null
junit.framework.AssertionFailedError
at org.apache.hadoop.util.TestJarUtils.testJarAll(TestJarUtils.java:164)
Testcase: testCopyJarContents took 0.018 sec
FAILED
null
junit.framework.AssertionFailedError
at
org.apache.hadoop.util.TestJarUtils.testCopyJarContents(TestJarUtils.java:218)
{code}
If you are going to make a new patch, here's a couple of other things you could
fix:
License missing on unit test.
Creating files in tests, other folks seem to do something like following to
keep them under configured test directory:
System.getProperty("test.build.data","."). You might want to do the same.
Next time, to save yourself a bit of typing, you could use the local file
system in hdfs to do the recursive delete of a directory (I'm guessing thats
why you individually remove each of the items in the teardown):
{code}
FileSystem fs = FileSystem.getLocal(new Configuration());
fs.delete(new Path(f.toString()));
{code}
In isJarOrZipFile, you could wrap your read of 5 bytes in a try/finally so the
close always happens. In fact there are a bunch of places that could do w/
try/finally blocks (Its not critical in the usual case. The job jar will just
error out w/o leaving hanging open files).
> Hadoop should provide a way to allow the user to specify jar file(s) the user
> job depends on
> --------------------------------------------------------------------------------------------
>
> Key: HADOOP-1622
> URL: https://issues.apache.org/jira/browse/HADOOP-1622
> Project: Hadoop
> Issue Type: Improvement
> Reporter: Runping Qi
> Attachments: multipleJobJars.patch, multipleJobResources.patch,
> multipleJobResources2.patch
>
>
> More likely than not, a user's job may depend on multiple jars.
> Right now, when submitting a job through bin/hadoop, there is no way for the
> user to specify that.
> A walk around for that is to re-package all the dependent jars into a new jar
> or put the dependent jar files in the lib dir of the new jar.
> This walk around causes unnecessary inconvenience to the user. Furthermore,
> if the user does not own the main function
> (like the case when the user uses Aggregate, or datajoin, streaming), the
> user has to re-package those system jar files too.
> It is much desired that hadoop provides a clean and simple way for the user
> to specify a list of dependent jar files at the time
> of job submission. Someting like:
> bin/hadoop .... --depending_jars j1.jar:j2.jar
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.