[ http://issues.apache.org/jira/browse/DERBY-900?page=all ]
Sunitha Kambhampati updated DERBY-900:
--------------------------------------
Attachment: for_10.1_derby900.diff.p1.txt
for_10.1_derby900.stat.p1.txt
TestEnc.java
I am attaching the patch for 10.1 codeline- ' for_10.1_derby900.diff.p1.txt' and 'for_10.1_derby900.stat.p1.txt.'
The code changes are the same as in the derby900.diff.p1.txt.
Thus, the fix
-- uses UTF8 encoding in bytes2String.
But for the 10.1 codeline since derbyTesting.encoding property is not there, I am attaching
a standalone repro 'TestEnc.java' for testing.
OUTPUT for 10.1
$ java -cp "C:/workghm/svnclient/ks10.1/classes;." -Dfile.encoding=UTF-16 -Dconsole.encoding=Cp1252
TestEnc
Initializing connection type: derbynetclient
driver: org.apache.derby.jdbc.ClientDriver
url: jdbc:derby://localhost:1527/wombatderbynetclient;create=true;traceFile=derbynetclient.trace
Obtaining the connection
Database: Apache Derby 10.1.2.4
T E S T P A S S E D
g o t S Q L S t a t e 4 2 Y 0 7
e = S c h e m a ' T E S T S C H E M A 1 ' d o e s n o t e x i s t
----------------------
Ran derbynetclientmats with patch on linux/ibm142. Apart from the known failures, the test
lang/ConcurrentImplicitCreateSchema failed with the timeout exception (Note - this test was
fixed for the timeout issue on trunk). This failure is not related to this patch.
Can someone please review/commit this patch. Thanks.
> Remove use of String(byte[]) and String(byte[], int, int) constructors in network client
leading to non-portable behaviour
> --------------------------------------------------------------------------------------------------------------------------
>
> Key: DERBY-900
> URL: http://issues.apache.org/jira/browse/DERBY-900
> Project: Derby
> Type: Bug
> Components: Network Client
> Reporter: Daniel John Debrunner
> Fix For: 10.2.0.0
> Attachments: TestEnc.java, derby900.diff.p1.txt, derby900.stat.p1.txt, for_10.1_derby900.diff.p1.txt,
for_10.1_derby900.stat.p1.txt
>
> These constructors use the Java default platform encoding to convert the bytes to a String,
this typically leads to bugs on platforms with different encodings.
> Replace with code using fixed conversion, or alternative mechanisms.
> If the call is required its use should be commented as to why it is required.
> org.apache.derby.client.am.ClobOutputStream - some existing bug?
> org.apache.derby.client.am.DateTime - see DERBY-877
> org.apache.derby.client.am.sqlca
> I generated this list using the Java search in eclipse for references to the constructors
> String(byte[])
> String(byte[],int,int)
--
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
|