db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kathey Marsden (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (DERBY-5338) When attempting to insert a 4GB stream client gives SQLState XN015 network protocol error vs embedded 22003 data too large for type
Date Fri, 15 Jul 2011 22:30:00 GMT

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

Kathey Marsden updated DERBY-5338:

    Issue & fix info: [Repro attached]

With revision 1147335 this can be reproduced by removing the if(usingDerbyNetClient() block
 in LobLimitsTest and running largedata.LobLimitsLiteTest.

       try {
            insertBlob_SetBlob("BlobTest #7 (setBlob with 4Gb blob", conn,
                    insertBlob, _4GbBlob,
                    _4GB, 0, 1, 0);
            fail("Inserting 4BG blob should have thrown exception");
        } catch (SQLException sqle) {
            if (usingDerbyNetClient()) {
                // DERBY-5338 client gives wrong SQLState and protocol error
                // inserting a 4GB clob. Should be 22003
            } else {
                assertSQLState("22003", sqle);

> When attempting to insert a 4GB stream client gives SQLState XN015 network protocol error
vs embedded 22003 data too large for type
> -----------------------------------------------------------------------------------------------------------------------------------
>                 Key: DERBY-5338
>                 URL: https://issues.apache.org/jira/browse/DERBY-5338
>             Project: Derby
>          Issue Type: Bug
>          Components: Network Client
>    Affects Versions:
>            Reporter: Kathey Marsden
>            Priority: Minor
> In converting LobLimits test DERBY-1903, I see that attempting to insert a 4GB stream
with client gives the error XN015
> Caused by: org.apache.derby.client.am.SqlException: Network protocol error: the specified
size of the InputStream, parameter #4, is less than the actual InputStream length.
> 	at org.apache.derby.client.net.Request.writePlainScalarStream(Request.java:359)
> 	at org.apache.derby.client.net.Request.writeScalarStream(Request.java:247)
> 	at org.apache.derby.client.net.NetStatementRequest.buildEXTDTA(NetStatementRequest.java:963)
> 	at org.apache.derby.client.net.NetStatementRequest.writeExecute(NetStatementRequest.java:151)
> 	at org.apache.derby.client.net.NetPreparedStatement.writeExecute_(NetPreparedStatement.java:174)
> 	at org.apache.derby.client.am.PreparedStatement.writeExecute(PreparedStatement.java:1800)
> 	at org.apache.derby.client.am.PreparedStatement.flowExecute(PreparedStatement.java:2030)
> 	at org.apache.derby.client.am.PreparedStatement.executeUpdateX(PreparedStatement.java:417)
> 	at org.apache.derby.client.am.PreparedStatement.executeUpdate(PreparedStatement.java:403)
> 	... 38 more
> vs's embedded's 22003, the length exceeds the maximum length for the data type.
> I am not sure if the connection is lost or not. It typically is with protocol errors.
> Look for this bug number in largedata.LobLimits.java for test case.
> You can remove the exclusion for usingDerbyNetClient and run org.apache.derbyTesting.functionTests.tests.largedata.LobLimitsLiteTest

> to reproduce the problem.  I will check the test case in soon as part of DERBY-1903

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


View raw message