Attaching derby-4949-01-aa-fixCursor.diff. This is a first attempt to fix this problem. I am running regression tests now and will see what breaks.

The root cause of the problem was that ColumnTypeConversionException was coded backwards. The names of its arguments should have been flipped to agree with the order of the arguments in the actual message. I have cleaned up the argument names in this class.

There was a second problem in Cursor. There the coercion errors were passed the weird source type of '"java.sql.Types " + jdbcTypes_[column -1]', which is a pretty cryptic name for a datatype. I have replaced those cryptic type names with human-readable names produced by invoking Types.getTypeString().

Rick Hillegas
added a comment - 23/Dec/10 16:18 Attaching derby-4949-01-aa-fixCursor.diff. This is a first attempt to fix this problem. I am running regression tests now and will see what breaks.
The root cause of the problem was that ColumnTypeConversionException was coded backwards. The names of its arguments should have been flipped to agree with the order of the arguments in the actual message. I have cleaned up the argument names in this class.
There was a second problem in Cursor. There the coercion errors were passed the weird source type of '"java.sql.Types " + jdbcTypes_ [column -1] ', which is a pretty cryptic name for a datatype. I have replaced those cryptic type names with human-readable names produced by invoking Types.getTypeString().
Touches the following files:
---------
M java/client/org/apache/derby/client/am/Cursor.java
M java/client/org/apache/derby/client/am/SqlException.java