Author: mahadev
Date: Wed Jan 11 23:53:15 2012
New Revision: 1230329
URL: http://svn.apache.org/viewvc?rev=1230329&view=rev
Log:
MAPREDUCE-3652. org.apache.hadoop.mapred.TestWebUIAuthorization.testWebUIAuthorization fails.
(Thomas Graves via mahadev) - Merging r1230328 from trunk.
Removed:
hadoop/common/branches/branch-0.23/hadoop-mapreduce-project/src/test/mapred/org/apache/hadoop/mapred/TestWebUIAuthorization.java
Modified:
hadoop/common/branches/branch-0.23/hadoop-mapreduce-project/CHANGES.txt
hadoop/common/branches/branch-0.23/hadoop-mapreduce-project/src/test/mapred/org/apache/hadoop/mapred/TestTaskFail.java
Modified: hadoop/common/branches/branch-0.23/hadoop-mapreduce-project/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-0.23/hadoop-mapreduce-project/CHANGES.txt?rev=1230329&r1=1230328&r2=1230329&view=diff
==============================================================================
--- hadoop/common/branches/branch-0.23/hadoop-mapreduce-project/CHANGES.txt (original)
+++ hadoop/common/branches/branch-0.23/hadoop-mapreduce-project/CHANGES.txt Wed Jan 11 23:53:15
2012
@@ -411,6 +411,9 @@ Release 0.23.1 - Unreleased
MAPREDUCE-3651. TestQueueManagerRefresh fails. (Thomas Graves via mahadev)
MAPREDUCE-3645. TestJobHistory fails. (Thomas Graves via mahadev)
+
+ MAPREDUCE-3652. org.apache.hadoop.mapred.TestWebUIAuthorization.testWebUIAuthorization
+ fails. (Thomas Graves via mahadev)
Release 0.23.0 - 2011-11-01
Modified: hadoop/common/branches/branch-0.23/hadoop-mapreduce-project/src/test/mapred/org/apache/hadoop/mapred/TestTaskFail.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-0.23/hadoop-mapreduce-project/src/test/mapred/org/apache/hadoop/mapred/TestTaskFail.java?rev=1230329&r1=1230328&r2=1230329&view=diff
==============================================================================
--- hadoop/common/branches/branch-0.23/hadoop-mapreduce-project/src/test/mapred/org/apache/hadoop/mapred/TestTaskFail.java
(original)
+++ hadoop/common/branches/branch-0.23/hadoop-mapreduce-project/src/test/mapred/org/apache/hadoop/mapred/TestTaskFail.java
Wed Jan 11 23:53:15 2012
@@ -17,12 +17,17 @@
*/
package org.apache.hadoop.mapred;
+import java.io.OutputStream;
import java.io.DataOutputStream;
import java.io.IOException;
+import java.net.URL;
import java.net.HttpURLConnection;
import junit.framework.TestCase;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
@@ -37,6 +42,10 @@ import org.apache.hadoop.mapreduce.MapRe
import org.apache.hadoop.mapreduce.TaskType;
public class TestTaskFail extends TestCase {
+
+ private static final Log LOG = LogFactory.getLog(
+ TestTaskFail.class);
+
private static String taskLog = "Task attempt log";
static String cleanupLog = "cleanup attempt log";
@@ -92,6 +101,29 @@ public class TestTaskFail extends TestCa
}
}
+ /** access a url, ignoring some IOException such as the page does not exist */
+ static int getHttpStatusCode(String urlstring, String userName,
+ String method) throws IOException {
+ LOG.info("Accessing " + urlstring + " as user " + userName);
+ URL url = new URL(urlstring + "&user.name=" + userName);
+ HttpURLConnection connection = (HttpURLConnection)url.openConnection();
+ connection.setRequestMethod(method);
+ if (method.equals("POST")) {
+ String encodedData = "action=kill&user.name=" + userName;
+ connection.setRequestProperty("Content-Type",
+ "application/x-www-form-urlencoded");
+ connection.setRequestProperty("Content-Length",
+ Integer.toString(encodedData.length()));
+ connection.setDoOutput(true);
+
+ OutputStream os = connection.getOutputStream();
+ os.write(encodedData.getBytes());
+ }
+ connection.connect();
+
+ return connection.getResponseCode();
+ }
+
public RunningJob launchJob(JobConf conf,
Path inDir,
Path outDir,
@@ -142,8 +174,8 @@ public class TestTaskFail extends TestCa
String tasklogUrl = TaskLogServlet.getTaskLogUrl("localhost",
String.valueOf(ttStatus.getHttpPort()), attemptId.toString()) +
"&filter=STDERR";
- assertEquals(HttpURLConnection.HTTP_OK, TestWebUIAuthorization
- .getHttpStatusCode(tasklogUrl, tip.getUser(), "GET"));
+ assertEquals(HttpURLConnection.HTTP_OK,
+ getHttpStatusCode(tasklogUrl, tip.getUser(), "GET"));
if (containsCleanupLog) {
// validate task logs: tasklog should contain both task logs
// and cleanup logs
@@ -160,8 +192,8 @@ public class TestTaskFail extends TestCa
String cleanupTasklogUrl = TaskLogServlet.getTaskLogUrl("localhost",
String.valueOf(ttStatus.getHttpPort()), attemptId.toString())
+ "&filter=STDERR&cleanup=true";
- assertEquals(HttpURLConnection.HTTP_OK, TestWebUIAuthorization
- .getHttpStatusCode(cleanupTasklogUrl, tip.getUser(), "GET"));
+ assertEquals(HttpURLConnection.HTTP_OK,
+ getHttpStatusCode(cleanupTasklogUrl, tip.getUser(), "GET"));
// Task-cleanup task should not be scheduled on the node that the task just failed
if (jt.taskTrackers().size() >= 2) {
|