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 su...@apache.org on 2013/06/06 06:17:05 UTC
svn commit: r1490124 - in
/hadoop/common/trunk/hadoop-common-project/hadoop-common: CHANGES.txt
src/test/java/org/apache/hadoop/net/TestSocketIOWithTimeout.java
Author: suresh
Date: Thu Jun 6 04:17:04 2013
New Revision: 1490124
URL: http://svn.apache.org/r1490124
Log:
HADOOP-8982. TestSocketIOWithTimeout fails on Windows. Contributed by Chris Nauroth.
Modified:
hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt
hadoop/common/trunk/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/TestSocketIOWithTimeout.java
Modified: hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt?rev=1490124&r1=1490123&r2=1490124&view=diff
==============================================================================
--- hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt (original)
+++ hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt Thu Jun 6 04:17:04 2013
@@ -749,6 +749,9 @@ Release 2.1.0-beta - UNRELEASED
HADOOP-9526. TestShellCommandFencer and TestShell fail on Windows.
(Arpit Agarwal via suresh)
+ HADOOP-8982. TestSocketIOWithTimeout fails on Windows.
+ (Chris Nauroth via suresh)
+
Release 2.0.5-alpha - UNRELEASED
INCOMPATIBLE CHANGES
Modified: hadoop/common/trunk/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/TestSocketIOWithTimeout.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/TestSocketIOWithTimeout.java?rev=1490124&r1=1490123&r2=1490124&view=diff
==============================================================================
--- hadoop/common/trunk/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/TestSocketIOWithTimeout.java (original)
+++ hadoop/common/trunk/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/net/TestSocketIOWithTimeout.java Thu Jun 6 04:17:04 2013
@@ -32,6 +32,7 @@ import org.apache.hadoop.test.Multithrea
import org.apache.hadoop.test.MultithreadedTestUtil.TestContext;
import org.apache.hadoop.test.MultithreadedTestUtil.TestingThread;
import org.apache.hadoop.util.Time;
+import org.apache.hadoop.util.Shell;
import org.junit.Test;
import static org.junit.Assert.*;
@@ -144,12 +145,20 @@ public class TestSocketIOWithTimeout {
// Nevertheless, the output stream is closed, because
// a partial write may have succeeded (see comment in
// SocketOutputStream#write(byte[]), int, int)
- try {
- out.write(1);
- fail("Did not throw");
- } catch (IOException ioe) {
- GenericTestUtils.assertExceptionContains(
- "stream is closed", ioe);
+ // This portion of the test cannot pass on Windows due to differences in
+ // behavior of partial writes. Windows appears to buffer large amounts of
+ // written data and send it all atomically, thus making it impossible to
+ // simulate a partial write scenario. Attempts were made to switch the
+ // test from using a pipe to a network socket and also to use larger and
+ // larger buffers in doIO. Nothing helped the situation though.
+ if (!Shell.WINDOWS) {
+ try {
+ out.write(1);
+ fail("Did not throw");
+ } catch (IOException ioe) {
+ GenericTestUtils.assertExceptionContains(
+ "stream is closed", ioe);
+ }
}
out.close();