[ 
http://issues.apache.org/jira/browse/DERBY-877?page=comments#action_12364646 ] 

Daniel John Debrunner commented on DERBY-877:
---------------------------------------------

This code looks wrong to me, at least it 's deceptive. Here's on example:

+        String timestamp = new String(buffer, offset, 
+                DateTime.timestampRepresentationLength, encoding);

If the encoding can be changed then the length of the byte representation 
should be changable.
The length here is hard-coded as 26 using the constant 
timestampRepresentationLength.

If really the server is always sending the data with a fixed encoding, which 
looks like the case, then I think the
encoding should be fixed here. Otherwise it looks like the code can handle any 
encoding, and someone in the
future may try to take advantage of that, which may or may not work in some 
cases and fail in others.

> zOS - with DerbyClient getDate(#) fails with IllegalArgumentException - 
> unsupported date format - resultset.java
> ----------------------------------------------------------------------------------------------------------------
>
>          Key: DERBY-877
>          URL: http://issues.apache.org/jira/browse/DERBY-877
>      Project: Derby
>         Type: Bug
>   Components: Network Client
>     Versions: 10.1.1.0
>  Environment: OS/390 with classic (IBM) jvm142
>     Reporter: Myrna van Lunteren
>     Assignee: Kathey Marsden
>  Attachments: TestEnc.java, derby-877.diff
>
> The test lang/resultset.java fails with DerbyNetClient on zOS 
> because ResultSet.getDate(#) fails with an 
> java.lang.IllegalArgumentException - unsupported date format.
> This is the stack trace with 10.2 debug version (but it fails 
> with 10.1 also):
> ------------------
> ....
> getBytes(dt) got exception
> Data Conversion SQLException
> FAIL -- unexpected exception: 
> java.lang.IllegalArgumentException: Unsupported date format!
> java.lang.IllegalArgumentException: Unsupported date format!
>         at 
> org.apache.derby.client.am.DateTime.dateBytesToDate(DateTime.java:63)
>         at 
> org.apache.derby.client.am.Cursor.getDATE(Cursor.java:400)
>         at 
> org.apache.derby.client.am.Cursor.getDate(Cursor.java:712)
>         at 
> org.apache.derby.client.am.ResultSet.getDate(ResultSet.java:687)
>         at 
> org.apache.derbyTesting.functionTests.tests.jdbcapi.resultset.main(Unknown 
> Source)
> ------------------
> Note: does not fail with jcc.
> Also, test lang/updatableResultSet.java failed with e.g.:
>       - instead of 'Got expected exception : Illegal Conversion' :
>                    'Got expected exception : Unsupported date format!' . 
>       - instead of 'Got expected exception : Illegal Conversion' :
>                    'Got expected exception : nanos > 99999999999 or < 0' .

-- 
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

Reply via email to