Hi Tim, Please do not appy this patch. The test hangs sometimes after applying this patch.
I'll take a deep look at the test, and suggest exclude the test at first. Thanks! On 6/27/06, Andrew Zhang <[EMAIL PROTECTED]> wrote:
Hi Tim, I took a look at the test, and found there are some problems in the test. The test looks like: while(true){ count = read(); if(count <= 0){ // Error! For nonblocking read, returns 0 means non data available currently break; } } For nonblocking read, I think "count <= 0" is not the rigth condition to break out. "count < 0" should be used instead. What's your opnion? I'm not very sure whether my patch could fix the problem thoroughly because my netwrok is so good that the test never fails even with "count <= 0". Thanks! Here's the patch for this problem: (or shall I raise a separated JIRA ? ) Index: src/test/java/org/apache/harmony/tests/java/nio/channels/SocketChannelTest.java =================================================================== --- src/test/java/org/apache/harmony/tests/java/nio/channels/SocketChannelTest.java (revision 417326) +++ src/test/java/org/apache/harmony/tests/java/nio/channels/SocketChannelTest.java (working copy) @@ -2490,7 +2490,7 @@ int total = 0; while (total < CAPACITY_64KB) { count = this.channel1.read(buf); - if (count <= 0){ + if (count < 0){ break; } total = total + count; @@ -2509,13 +2509,13 @@ count = in.read(serverRBuf); while (total < CAPACITY_64KB + 1) { count = this.channel1.read(buf); - if (count <= 0){ + if (count < 0){ break; } total = total + count; } if (total > 0) { - assertEquals(total, CAPACITY_64KB); + assertEquals(CAPACITY_64KB, total); for (int i = 0; i < count; i++) { assertEquals((byte) i, serverRBuf[i]); } On 6/27/06, Tim Ellison <[EMAIL PROTECTED]> wrote: > > Apache Harmony Build wrote: > > Online report : > http://ibmonly.hursley.ibm.com/continuum/win.ia32/servlet/continuum/target/ProjectBuild.vm/view/ProjectBuild/id/6/buildId/1435 > > Build statistics: > > State: Failed > > Previous State: Ok > > Started at: Mon, 26 Jun 2006 16:09:03 +0100 > > Finished at: Mon, 26 Jun 2006 16:22:52 +0100 > > Total time: 13m 48s > > Build Trigger: Schedule > > Exit code: 1 > > Building machine hostname: hy1 > > Operating system : Windows XP(Service Pack 2) > > Java version : 1.5.0_06(Sun Microsystems Inc.) > > <snip> > > > [exec] [junit] T2 not closed > > [exec] [junit] T1 not closed > > [exec] [junit] Read fail in capacity64KB, > testReadByteBuffer_NonBlocking_ReadWriteRealTooLargeData not finish. > > [exec] [junit] Tests run: 80, Failures: 1, Errors: 0, Time > elapsed: 15.491 sec > > [exec] [junit] TEST > org.apache.harmony.tests.java.nio.channels.SocketChannelTest FAILED > > [exec] [junit] Tests run: 14, Failures: 0, Errors: 0, Time > elapsed: 0.313 sec > > [exec] [junit] Tests run: 3, Failures: 0, Errors: 0, Time > elapsed: 0 sec > > [exec] [junit] Tests run: 9, Failures: 0, Errors: 0, Time > elapsed: 0.126 sec > > [exec] [junit] Tests run: 2, Failures: 0, Errors: 0, Time > elapsed: 0.016 sec > > [exec] [junit] Tests run: 6, Failures: 0, Errors: 0, Time > elapsed: 0.094 sec > > [exec] [junit] Tests run: 2, Failures: 0, Errors: 0, Time > elapsed: 0.016 sec > > [exec] [junit] Tests FAILED > > > This test seems to be frequently, if intermittently, failing. > > expected:<7300> but was:<65536> > > junit.framework.AssertionFailedError: expected:<7300> but was:<65536> at > > org.apache.harmony.tests.java.nio.channels.SocketChannelTest.testReadByteBuffer_NonBlocking_ReadWriteRealTooLargeData( > SocketChannelTest.java:2518) > at java.lang.reflect.AccessibleObject.invokeV(AccessibleObject.java:205) > > > > Regards, > Tim > > -- > > Tim Ellison ([EMAIL PROTECTED] ) > IBM Java technology centre, UK. > > --------------------------------------------------------------------- > Terms of use : http://incubator.apache.org/harmony/mailing.html > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > -- Andrew Zhang China Software Development Lab, IBM
-- Andrew Zhang China Software Development Lab, IBM