Inconsistent behavior for getBytes and getSubString for embedded versus network -------------------------------------------------------------------------------
Key: DERBY-1516 URL: http://issues.apache.org/jira/browse/DERBY-1516 Project: Derby Issue Type: Bug Reporter: Craig Russell Priority: Minor org.apache.derby.client.am.Clob.getSubString(pos, length) and org.apache.derby.client.am.Blob.getBytes(pos, length) check the length for less than zero. if ((pos <= 0) || (length < 0)) { throw new SqlException(agent_.logWriter_, "Invalid position " + pos + " or length " + length); But org.apache.derby.impl.jdbc.EmbedClob(pos, length) and org.apache.derby.impl.jdbc.EmbedBlob(pos, length) check the length for less than or equal to zero. if (length <= 0) throw Util.generateCsSQLException( SQLState.BLOB_NONPOSITIVE_LENGTH, new Integer(length)); The specification does not disallow length of zero, so zero length should be allowed. I believe that the implementation in org.apache.derby.client.am is correct, and the implementation in org.apache.derby.impl.jdbc is incorrect. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira