[ 
https://issues.apache.org/jira/browse/DERBY-6801?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Bryan Pendleton updated DERBY-6801:
-----------------------------------
    Attachment: MessageUtilsBryan.diff

Hi Abhinav, thank you for posting your patch. Once I looked at
your code more closely, I realized that the refactoring of code
in DRDAConnThread was a bit more subtle.

The important part is that we want to get the code which
encodes the messageId and the message arguments into
the network message buffer into a shared location, because
it is that encoding that needs to be shared by the client and
server logic.

But that is not ALL of buildTokenizedSqlerrmc(), it is JUST the
part that endoes that data using the SQLERRMC_TOKEN_DELIMITER.

Attached is "MessageUtilsBryan.diff", which takes a slightly
different re-factoring of DRDAConnThread and now builds
cleanly on my system.

You'll notice that my patch is significantly smaller than your last patch.

This is because I made my patch against the head of the Subversion trunk,
and so I didn't include all the changes related to ShutdownException.

Please either (a) restore your current sandbox to a clean form before
taking my patch, or (b) create a brand new sandbox from the head of
the trunk, and then my patch should apply and build cleanly for you.

I think this is exciting progress, and we're getting quite close with
this patch, so I hope you can give it a try and let me know what you think!

> Implement MessageUtils class so client and server can share message argument 
> encoding/decoding
> ----------------------------------------------------------------------------------------------
>
>                 Key: DERBY-6801
>                 URL: https://issues.apache.org/jira/browse/DERBY-6801
>             Project: Derby
>          Issue Type: Sub-task
>          Components: JDBC, Network Client, Network Server
>            Reporter: Bryan Pendleton
>            Assignee: Abhinav Gupta
>            Priority: Minor
>         Attachments: MessageUtilsBryan.diff, MessageUtils_2.diff, 
> MessageUtils_3.diff, MessageUtils_StandardEx_1.diff, 
> MessageUtils_StandardExcep.diff, build.out, messageUtils.diff, 
> messageUtils_1.diff, subPart2.diff
>
>
> Currently, the Network Server contains code which encodes message arguments 
> to be passed over DRDA to the client, and other code which
> decodes the encoded message arguments when the client passes
> them back in a call to SQLCAMESSAGE (see DERBY-1178 for additional
> discussion of this behavior).
> We would like to extract that logic and place it into a new MessageUtils
> class in the common shared library so that both the client and server
> can manipulate the message arguments without duplicating the code.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to