[
https://issues.apache.org/jira/browse/DERBY-4008?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12664699#action_12664699
]
Kathey Marsden commented on DERBY-4008:
---------------------------------------
As discussed in DERBY-728, this change while necessary to move forward on
DERBY-728 will cause a regression when a new client tries to connect to an old
server with a database name that can't be converted. If connecting with a
Chinese database name with a new client and an old server, the server console
will show an exception:
Execution failed because of a Distributed Protocol Error: DRDA_Proto_SYNTAXRM;
CODPNT arg = 2110; Error Code Value = e
. Plaintext connection attempt from an SSL enabled client?
At the client we can save off the conversion exception that prevented us from
sending the RDBNAM on ACCSEC and do one of two things.
1) Report the SYNTAXRM on the client but chain the conversion exception, so
it is clear the root cause of the problem.
2) Gobble up the SYNTAXRM and just throw the conversion exception, so it
looks like there was no SYNTXRM on the client and the client behavior matches
the current behavior.
I am a bit wary of throwing away the exception so I am planning to go with
option 1 which would be less compatible but have a cleaner implementation and
wouldn't cause the SYNTAXRM to mysteriously disappear between server and
client. I will backport DERBY-4004 so that folks using newer 10.3 and 10.4
servers won't be affected. I'll post a patch soon with my proposal. Please post
if you have any concerns or other ideas.
> Only send RDBNAM on ACCSEC if EBCDIC conversion is possible
> -----------------------------------------------------------
>
> Key: DERBY-4008
> URL: https://issues.apache.org/jira/browse/DERBY-4008
> Project: Derby
> Issue Type: Sub-task
> Components: Network Client
> Affects Versions: 10.5.0.0
> Reporter: Kathey Marsden
> Assignee: Kathey Marsden
> Priority: Minor
>
> As part of the change for DERBY-728 we will implement UNICODEMGR which will
> require ACCSEC be sent in EBCDIC. After DERBY-4004 is fixed the client
> should send the RDBNAM on ACCSEC only if EBCDIC conversion is possible. This
> will maintain compatibility with old servers for database names that can be
> converted but will allow us to defer sending the database name to SECCHK so
> that we can send the RDBNAM in UTF-8 with new servers when UNICODEMGR is
> active.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.