harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andrew Zhang" <zhanghuang...@gmail.com>
Subject Re: [continuum] BUILD FAILURE: Classlib/win.ia32 Build/Test
Date Tue, 27 Jun 2006 03:14:14 GMT
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 <t.p.ellison@gmail.com> 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 (t.p.ellison@gmail.com)
> IBM Java technology centre, UK.
>
> ---------------------------------------------------------------------
> Terms of use : http://incubator.apache.org/harmony/mailing.html
> To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> For additional commands, e-mail: harmony-dev-help@incubator.apache.org
>
>


-- 
Andrew Zhang
China Software Development Lab, IBM

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message