[ http://issues.apache.org/jira/browse/DERBY-1610?page=comments#action_12429368 ] Knut Anders Hatlen commented on DERBY-1610: -------------------------------------------
There will be user impact even if only a few of the incompatible combinations are changed to throw exceptions. Therefore, I think that it is better to fix all of them at once. Fixing only a couple of them makes the current state of the code harder to understand. For instance, I don't understand why setBlob(null) should fail on a CHAR parameter, but succeed on a DOUBLE parameter. Also, I'm not sure whether this type checking should happen on the server. Since the DRDA protocol doesn't preserve which JDBC method was used, and which arguments the user passed in, it might not always have enough information to decide what to do. Another problem with having the check on the server, is that old clients (or jcc clients) running against a new server will also get these new exceptions. Some people might call that a regression. If it is possible to get the type checks on the client instead of on the server, I would prefer that solution. If that is not possible, I think we should only make sure that all setXXX(null) calls work as before DERBY-1535, and delay the change of behaviour until we have found a way to make all calls behave correctly. > Updating column typed as CHAR to value passed via setBinaryStream(notNull) is > failed because of imcompatiblity of types though it was not taken as error > when setBinaryStream(null) > ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- > > Key: DERBY-1610 > URL: http://issues.apache.org/jira/browse/DERBY-1610 > Project: Derby > Issue Type: Bug > Components: Network Server, Network Client > Reporter: Tomohito Nakayama > Assigned To: Tomohito Nakayama > Attachments: DERBY-1610.diff, DERBY-1610_2.diff, > parameterMapping.diff, parameterMapping.diff, TestNullChar.java > > > There exists difference between updating character typed column to value > passed via setBinaryStream(notNullValue) and updating the column to value > passed via setBinaryStream(null). > This difference is problematic because it does not exist in Embedded mode. -- 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
