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

V.Narayanan updated DERBY-2385:
-------------------------------

    Attachment: upgrade_v2.stat
                upgrade_v2.diff

In trying to produce a solution for this I wanted to do two things

Development code
----------------------------

In the call to doFullUpgrade in DD_Version I wanted to call 
create_10_3_system_procedures and I wanted that method to handle all the stored 
procedures for 10.3. I thought this was a more elegant method than calling 
multiple methods here. 

Since the Stored Procedures for the locator implementation of the LOB related 
JDBC methods are created in the SYSIBM schema and create_10_3_system_procedures 
accepts a schema parameter as of know I could not use it to create the locator 
related procedures in the SYSIBM schema.

I decided to make create_10_3_system_procedures accept the tc as a parameter 
and handle the creation of the stored procedures in the different schema here.

Testing Code
------------------

In my previous attachment to this issue I had written code as part of the 
upgrade tests to test the locator related stored procedures (in the old suite). 
This was code replication and seemed wrong to me. I could reuse the tests in 
jdbcapi/ClobStoredProcedureTest and jdbcapi/BlobStoredProcedureTest

I had the following conditions

1) The suites needed to be created during the HARD_UPGRADE and PH_HARD_UPGRADE 
phases.
2) The tests need not be run when the old release is greater than 10.3

I took a few tips from how DatabaseMetaDataTest is run today as part of 
uprgade. That seemed a great way of doing this without code replication

In the baseSuite method of UpgradeRun I create these suites to the base suite 
during the HARD_UPGRADE and the PH_HARD_UPGRADE phases.

I have not tested this code. I just finished coding. So I thought I could put 
this in to get a few comments and views on whether this is the right way to do 
this.

Pls note that I have not run it and seen and it is only for comments.

*THIS PATCH IS NOT FOR A COMMIT*

> create the stored procedures called by LOB related JDBC methods during upgrade
> ------------------------------------------------------------------------------
>
>                 Key: DERBY-2385
>                 URL: https://issues.apache.org/jira/browse/DERBY-2385
>             Project: Derby
>          Issue Type: Task
>          Components: JDBC
>    Affects Versions: 10.3.0.0
>            Reporter: V.Narayanan
>         Assigned To: V.Narayanan
>         Attachments: upgrade_v1.diff, upgrade_v1.stat, upgrade_v2.diff, 
> upgrade_v2.stat
>
>
> DataDictionaryImpl.create_10_3_LOB_Specific_functions() has to be called from 
> DD_Version.doFullUpgrade() in order to create the procedures when upgrading 
> from 10.2 or earlier versions.

-- 
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