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

Kristian Waagan updated DERBY-4314:
-----------------------------------

    Attachment: derby-4314-6a-initial_piggybacking.stat
                derby-4314-6a-initial_piggybacking.diff

Attaching patch 6a, which demonstrates the piggy-backing of session data on 
connection initialization.

Comments on the approach/patch is welcome.
Note the following:
 - I inserted the PBSD (session data code point(s)) at the end of the ACCRDB 
reply. Is this allowed by the DRDA standard?
   It will only be sent if the client is Derby and the version is 10.6 or 
greater.
 - I have not yet implemented the change suggested, where the isolation level 
is initialized to READ_COMMITTED unconditionally in the client.
 - The extra completeInitialPiggyBackSchema method was added because the debug 
assert fails with NPE (the metadata object hasn't been created yet, this 
happens in completeConnection).
 - My test run hasn't completed yet.

> With derby client setTransactionIsolation executes and commits even if 
> isolation has not changed 
> -------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-4314
>                 URL: https://issues.apache.org/jira/browse/DERBY-4314
>             Project: Derby
>          Issue Type: Improvement
>          Components: JDBC, Network Client
>    Affects Versions: 10.1.3.1, 10.2.2.0, 10.3.3.0, 10.4.2.0, 10.5.1.1, 
> 10.6.0.0
>            Reporter: Kathey Marsden
>            Priority: Minor
>         Attachments: DERBY-4314-2.diff, DERBY-4314-3.diff, DERBY-4314-5.diff, 
> derby-4314-6a-initial_piggybacking.diff, 
> derby-4314-6a-initial_piggybacking.stat, DERBY-4314.diff
>
>
> With in EmbedConnection.setIsolation() we have a check to see if the 
> isolation level is the same and if so just return without doing a commit:
>   public void setTransactionIsolation(int level) throws SQLException {
>               if (level == getTransactionIsolation())
>                       return;
> with org.apache.derby.client.am.Connection we have no such check. It would be 
> good if the client driver acted like embedded.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to