You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by cd...@apache.org on 2009/05/27 01:08:12 UTC
svn commit: r778921 - in /hadoop/core/trunk: CHANGES.txt
src/core/org/apache/hadoop/util/RunJar.java
src/test/mapred/org/apache/hadoop/util/TestRunJar.java
src/test/mapred/testjar/Hello.java
Author: cdouglas
Date: Tue May 26 23:08:11 2009
New Revision: 778921
URL: http://svn.apache.org/viewvc?rev=778921&view=rev
Log:
HADOOP-5809. Fix job submission, broken by errant directory creation. Contributed by Sreekanth Ramakrishnan and Jothi Padmanabhan
Added:
hadoop/core/trunk/src/test/mapred/org/apache/hadoop/util/TestRunJar.java
hadoop/core/trunk/src/test/mapred/testjar/Hello.java
Modified:
hadoop/core/trunk/CHANGES.txt
hadoop/core/trunk/src/core/org/apache/hadoop/util/RunJar.java
Modified: hadoop/core/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/CHANGES.txt?rev=778921&r1=778920&r2=778921&view=diff
==============================================================================
--- hadoop/core/trunk/CHANGES.txt (original)
+++ hadoop/core/trunk/CHANGES.txt Tue May 26 23:08:11 2009
@@ -682,6 +682,9 @@
HADOOP-5710. Counter MAP_INPUT_BYTES missing from new mapreduce api.
(Amareshwari Sriramadasu via sharad)
+ HADOOP-5809. Fix job submission, broken by errant directory creation.
+ (Sreekanth Ramakrishnan and Jothi Padmanabhan via cdouglas)
+
Release 0.20.1 - Unreleased
INCOMPATIBLE CHANGES
Modified: hadoop/core/trunk/src/core/org/apache/hadoop/util/RunJar.java
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/core/org/apache/hadoop/util/RunJar.java?rev=778921&r1=778920&r2=778921&view=diff
==============================================================================
--- hadoop/core/trunk/src/core/org/apache/hadoop/util/RunJar.java (original)
+++ hadoop/core/trunk/src/core/org/apache/hadoop/util/RunJar.java Tue May 26 23:08:11 2009
@@ -108,7 +108,7 @@
File tmpDir = new File(new Configuration().get("hadoop.tmp.dir"));
boolean b = tmpDir.mkdirs();
- if (!b || !tmpDir.isDirectory()) {
+ if (!b && !tmpDir.isDirectory()) {
System.err.println("Mkdirs failed to create " + tmpDir);
System.exit(-1);
}
@@ -119,7 +119,7 @@
System.exit(-1);
}
b = workDir.mkdirs();
- if (!b || !workDir.isDirectory()) {
+ if (!b && !workDir.isDirectory()) {
System.err.println("Mkdirs failed to create " + workDir);
System.exit(-1);
}
Added: hadoop/core/trunk/src/test/mapred/org/apache/hadoop/util/TestRunJar.java
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/test/mapred/org/apache/hadoop/util/TestRunJar.java?rev=778921&view=auto
==============================================================================
--- hadoop/core/trunk/src/test/mapred/org/apache/hadoop/util/TestRunJar.java (added)
+++ hadoop/core/trunk/src/test/mapred/org/apache/hadoop/util/TestRunJar.java Tue May 26 23:08:11 2009
@@ -0,0 +1,49 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.hadoop.util;
+
+
+import java.io.File;
+import org.apache.hadoop.fs.Path;
+
+import junit.framework.TestCase;
+
+/**
+ * A test to rest the RunJar class.
+ */
+public class TestRunJar extends TestCase {
+
+ private static String TEST_ROOT_DIR = new Path(System.getProperty(
+ "test.build.data", "/tmp")).toString();
+
+ public void testRunjar() throws Throwable {
+
+ File outFile = new File(TEST_ROOT_DIR, "out");
+ // delete if output file already exists.
+ if (outFile.exists()) {
+ outFile.delete();
+ }
+
+ String[] args = new String[3];
+ args[0] = "build/test/mapred/testjar/testjob.jar";
+ args[1] = "testjar.Hello";
+ args[2] = outFile.toString();
+ RunJar.main(args);
+ assertTrue("RunJar failed", outFile.exists());
+ }
+}
Added: hadoop/core/trunk/src/test/mapred/testjar/Hello.java
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/test/mapred/testjar/Hello.java?rev=778921&view=auto
==============================================================================
--- hadoop/core/trunk/src/test/mapred/testjar/Hello.java (added)
+++ hadoop/core/trunk/src/test/mapred/testjar/Hello.java Tue May 26 23:08:11 2009
@@ -0,0 +1,40 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package testjar;
+
+import java.io.FileOutputStream;
+import java.io.IOException;
+
+/**
+ * A simple Hello class that is called from TestRunJar
+ *
+ */
+public class Hello {
+ public static void main(String[] args){
+ try {
+ System.out.println("Creating file" + args[0]);
+ FileOutputStream fstream = new FileOutputStream(args[0]);
+ fstream.write("Hello Hadoopers".getBytes());
+ fstream.close();
+ }
+ catch (IOException e) {
+ //do nothing
+ }
+ }
+}