[
https://issues.apache.org/jira/browse/DERBY-1595?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12879724#action_12879724
]
Knut Anders Hatlen commented on DERBY-1595:
-------------------------------------------
1) I agree that it won't cause any problems since the server knows how to
handle the values both when sent as a 6-byte value and as an 8-byte value
(given that the type specifier matches the actual length). It's probably fine
to leave it as it is. I see that NetStatementRequest.buildPlaceholderLength()
also uses 0x7F(...) so I think it's true that a higher value won't ever be
attempted written as a 6-byte integer.
2) Sounds OK, although I think the established pattern is to exclude asserts in
production jars.
> Network server fails with DRDAProtocolException if a BLOB with size
> 2147483647 is streamed from client
> ------------------------------------------------------------------------------------------------------
>
> Key: DERBY-1595
> URL: https://issues.apache.org/jira/browse/DERBY-1595
> Project: Derby
> Issue Type: Bug
> Components: Network Server
> Affects Versions: 10.2.1.6
> Reporter: Andreas Korneliussen
> Assignee: Kristian Waagan
> Priority: Minor
> Fix For: 10.7.0.0
>
> Attachments: derby-1595-1a-client_write6bytes.diff
>
>
> When executing a program which inserts a BLOB of size 2GB-1, the Network
> server fails with DRDAProtocolException. This happens before it starts
> handling the actual LOB data:
> java org.apache.derby.drda.NetworkServerControl start
> Apache Derby Network Server - 10.2.0.4 alpha started and ready to accept
> connections on port 1527 at 2006-07-26 14:15:21.284 GMT
> Execution failed because of a Distributed Protocol Error:
> DRDA_Proto_SYNTAXRM; CODPNT arg = 0; Error Code Value = c
> org.apache.derby.impl.drda.DRDAProtocolException
> at
> org.apache.derby.impl.drda.DRDAConnThread.throwSyntaxrm(DRDAConnThread.java:441)
> at
> org.apache.derby.impl.drda.DDMReader.readLengthAndCodePoint(DDMReader.java:554)
> at
> org.apache.derby.impl.drda.DDMReader.getCodePoint(DDMReader.java:617)
> at
> org.apache.derby.impl.drda.DRDAConnThread.parseSQLDTA_work(DRDAConnThread.java:4072)
> at
> org.apache.derby.impl.drda.DRDAConnThread.parseSQLDTA(DRDAConnThread.java:3928)
> at
> org.apache.derby.impl.drda.DRDAConnThread.parseEXCSQLSTTobjects(DRDAConnThread.java:3806)
> at
> org.apache.derby.impl.drda.DRDAConnThread.parseEXCSQLSTT(DRDAConnThread.java:3640)
> at
> org.apache.derby.impl.drda.DRDAConnThread.processCommands(DRDAConnThread.java:928)
> at
> org.apache.derby.impl.drda.DRDAConnThread.run(DRDAConnThread.java:254)
> null
> org.apache.derby.impl.drda.DRDAProtocolException
> at
> org.apache.derby.impl.drda.DRDAConnThread.throwSyntaxrm(DRDAConnThread.java:441)
> at
> org.apache.derby.impl.drda.DDMReader.readLengthAndCodePoint(DDMReader.java:554)
> at
> org.apache.derby.impl.drda.DDMReader.getCodePoint(DDMReader.java:617)
> at
> org.apache.derby.impl.drda.DRDAConnThread.parseSQLDTA_work(DRDAConnThread.java:4072)
> at
> org.apache.derby.impl.drda.DRDAConnThread.parseSQLDTA(DRDAConnThread.java:3928)
> at
> org.apache.derby.impl.drda.DRDAConnThread.parseEXCSQLSTTobjects(DRDAConnThread.java:3806)
> at
> org.apache.derby.impl.drda.DRDAConnThread.parseEXCSQLSTT(DRDAConnThread.java:3640)
> at
> org.apache.derby.impl.drda.DRDAConnThread.processCommands(DRDAConnThread.java:928)
> at
> org.apache.derby.impl.drda.DRDAConnThread.run(DRDAConnThread.java:254)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.