Here is our dilemma...
I'm hoping that Barbara Morris and/or Mike Cain can shed light on this for us.
We recently performed a DR test and the SQL stored procedures on the DR box (as described in QSYS2/SYSROUTINES) pointed to an incorrect EXTERNAL NAME. The SYSROUTINES tables from the Primary and the Secondary machines differ only in the EXTERNAL NAME, all else is identical.
We've faced this question before and were told by IBM that the Stored Procedure's definition is stored in the program object. So we revamped our compilation strategy within MKS Implementer and procedurally to always check out the SQL Stored Procedure whenever the program is maintained and then to promote them as a unit. So, MKS Implementer compiles program *MODULES, followed by *PGM and the last step is to create the SQL Stored Procedure for the process. When the SQL Stored Proc is generated, it is supposed to create the process' EXTERRNAL NAME using *LIBL rather than explicitly naming a library and this definition is expected to be stored in the program object.
Then, when iTera replicates the object to the DR platform, the changed program objects are saved/restored and SYSROUTINES on the Secondary platform is updated with the SQL Stored Procedure's definition.
This seemed to have worked. But during our latest DR test, it was noted that the EXTERNAL NAME is not correct on the version loaded to the Secondary Box.
Do we have an incorrect understanding of this process? How do we ensure that the Stored Procedures are accurately re-created on the Secondary platform?
This communication, including attachments, is confidential, may be subject to legal privileges, and is intended for the sole use of the addressee. Any use, duplication, disclosure or dissemination of this communication, other than by the addressee, is prohibited. If you have received this communication in error, please notify the sender immediately and delete or destroy this communication and all copies.