Mike Matrigali wrote:
 From the description in the bug this seems like the right change, but
it does seem like it may also be another incompatibility.  Should it
be added to the wiki? What difference will an app that somehow depended on the old (wrong) behavior see now?

I think the only difference is that where you previously inserted a character outside US-ASCII and got a '?' back, you will now get the actual character back.

A typical example is the three "extra" Norwegian/Danish letters.

So the patch might change what goes in and what comes back.
Personally I think people needing these characters are already using setCharacterStream (or another mechanism handling the issue), and would not be affected.
And people using only US-ASCII for input would not be affected either.
The only case where it can affect input/output is when the input is something like ISO-8859-1, but as I said, I think this case is handled differently by the users.

Just my thoughts. There is maybe a slight incompatibility, but due to its nature I think it is acceptable.

So, what did I forget about? :)



regards,
--
Kristian


Kristian Waagan (JIRA) wrote:
[ https://issues.apache.org/jira/browse/DERBY-1519?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Kristian Waagan updated DERBY-1519:
-----------------------------------

    Attachment: derby-1519-1a.stat
                derby-1519-1a.diff

'derby-1519-1a.diff' changes all uses of US-ASCII on the client to ISO-8859-1. suites.All run without errors with Java 1.5, and I started a derbyall now.

Please raise your concerns if you have any, I will commit if the second test run goes well.

'setAsciiStream' uses different encodings for embedded and client
-----------------------------------------------------------------

                Key: DERBY-1519
                URL: https://issues.apache.org/jira/browse/DERBY-1519
            Project: Derby
         Issue Type: Bug
         Components: JDBC, Network Client
   Affects Versions: 10.1.3.1, 10.2.1.6
           Reporter: Kristian Waagan
           Priority: Minor
        Attachments: derby-1519-1a.diff, derby-1519-1a.stat


The JDBC method 'setAsciiStream' uses different encodings for embedded and client. In the embedded driver, "ISO-8859-1" is used, in the client driver "US-ASCII" is used. The former is 8-bit, the latter is 7-bit. According to JDBC, the 8-bit encoding should be used for ASCII (see http://db.apache.org/derby/papers/JDBCImplementation.html#GetAsciiStream%28%29 ). The method 'getAsciiStream' should also be made to match in the two drivers.


Reply via email to