[ 
https://issues.apache.org/jira/browse/DERBY-5113?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Knut Anders Hatlen updated DERBY-5113:
--------------------------------------

    Attachment: reporting.diff

The stack trace of the underlying IOException is lost because 
Util.setStreamFailure() only preserves the message text when it converts it to 
an SQLException. The attached patch makes setStreamFailure() preserve the stack 
trace too, so that we'll get more information the next time it happens.

Running regression tests now.

> Intermittent failure in BlobSetMethodsTest on Java 7: Unable to set stream: 
> 'Reached EOF prematurely; expected 1,024, got 0.'
> -----------------------------------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-5113
>                 URL: https://issues.apache.org/jira/browse/DERBY-5113
>             Project: Derby
>          Issue Type: Bug
>          Components: JDBC, Test
>    Affects Versions: 10.8.0.0
>         Environment: Solaris 10 and Windows
> Java(TM) SE Runtime Environment (build 1.7.0-ea-b131)
>            Reporter: Knut Anders Hatlen
>         Attachments: reporting.diff
>
>
> Not sure if this is a test issue, a product issue or a JVM issue. It started 
> happening when JDK 7 was upgraded from b116 to b131 in the nightly tests. I 
> haven't been able to reproduce the failure in my environment, but it happens 
> frequently in the nightly testing. For example here:
> http://dbtg.foundry.sun.com/derby/test/Daily/jvm1.7/testing/testlog/sol/1078053-suitesAll_diff.txt
> 19) 
> testSetBytesLargeBlob(org.apache.derbyTesting.functionTests.tests.jdbc4.BlobSetMethodsTest)java.sql.SQLException:
>  Unable to set stream: 'Reached EOF prematurely; expected 1,024, got 0.'.
>       at 
> org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown 
> Source)
>       at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown Source)
>       at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown Source)
>       at org.apache.derby.impl.jdbc.Util.setStreamFailure(Unknown Source)
>       at org.apache.derby.impl.jdbc.EmbedBlob.truncate(Unknown Source)
>       at 
> org.apache.derbyTesting.functionTests.tests.jdbc4.BlobSetMethodsTest.testSetBytesLargeBlob(BlobSetMethodsTest.java:102)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>       at 
> org.apache.derbyTesting.junit.BaseTestCase.runBare(BaseTestCase.java:112)
>       at junit.extensions.TestDecorator.basicRun(TestDecorator.java:24)
>       at junit.extensions.TestSetup$1.protect(TestSetup.java:21)
>       at junit.extensions.TestSetup.run(TestSetup.java:25)
>       at 
> org.apache.derbyTesting.junit.BaseTestSetup.run(BaseTestSetup.java:57)
> Caused by: java.sql.SQLException: Unable to set stream: 'Reached EOF 
> prematurely; expected 1,024, got 0.'.
>       at 
> org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source)
>       at 
> org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(Unknown
>  Source)
> The problem does not appear to be the reordering of the test cases that we've 
> seen in many other tests when running on Java 7 b131. According to the traces 
> printed to the test log (for example in the above mentioned URL), this 
> failure is also seen in the cases where the test cases run in the same order 
> as on most other platforms.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to