Deployment Scripts
Stuporman
Posts: 7
Hello,
I don't know what the typical usage scenario is for Schema Compare, but I've been using it to synchronize a rather large number of databases that are extremely different from each other thanks to the fact that we deployed changes by hand before adopting Schema Compare. These databases belong to customers of ours, so we have to be very careful. It currently takes us a couple of days to turn around a script that will accurately bring a database into sync. While this is a tremendous improvement from before, the turn around time is actually much longer than it needs to be. This is because the scripts that are generated are invariably wrong above a certain number of changes. I don't expect every script to be 100% accurate, but I end up having to go through sometimes 250,000 lines to correct the issues. It appears that Schema Compare generates the script in a particular object order. This results in some items failing because they lack the proper grants which don't come until later in the script or because the object they depend on won't be created for another 30,000 lines. Basically, I'm tired of the tedious manual labor required to make the script work, so I'd like to propose a method for solving the problem of script order: A Directed Graph and the Topological Sort.
http://mathinsight.org/definition/directed_graph
https://en.wikipedia.org/wiki/Topological_sorting
http://stackoverflow.com/questions/1060 ... cles-exist
Has this been attempted in the past, or have discussions of this taken place internally or otherwise? You guys would save me a tremendous amount of time and sanity if the scripts generated by Schema Compare were 100% accurate 99% of the time for me.
I don't know what the typical usage scenario is for Schema Compare, but I've been using it to synchronize a rather large number of databases that are extremely different from each other thanks to the fact that we deployed changes by hand before adopting Schema Compare. These databases belong to customers of ours, so we have to be very careful. It currently takes us a couple of days to turn around a script that will accurately bring a database into sync. While this is a tremendous improvement from before, the turn around time is actually much longer than it needs to be. This is because the scripts that are generated are invariably wrong above a certain number of changes. I don't expect every script to be 100% accurate, but I end up having to go through sometimes 250,000 lines to correct the issues. It appears that Schema Compare generates the script in a particular object order. This results in some items failing because they lack the proper grants which don't come until later in the script or because the object they depend on won't be created for another 30,000 lines. Basically, I'm tired of the tedious manual labor required to make the script work, so I'd like to propose a method for solving the problem of script order: A Directed Graph and the Topological Sort.
http://mathinsight.org/definition/directed_graph
https://en.wikipedia.org/wiki/Topological_sorting
http://stackoverflow.com/questions/1060 ... cles-exist
Has this been attempted in the past, or have discussions of this taken place internally or otherwise? You guys would save me a tremendous amount of time and sanity if the scripts generated by Schema Compare were 100% accurate 99% of the time for me.
Comments
Thank you for your forum post and sorry that you have encountered a problem.
Schema Compare for Oracle endeavours to make the deployment scripts you create 100% accurate. The deployment script generates the objects in dependency order. There are many reasons as to why the deployment script may fail and I need further information to work the reason for the problem.
A support ticket has been created for you, the ticket reference is #51285.
Would you please send an email to support@red-gate.com with the call reference #51285 in the subject field of the message. Also please include answers to the following questions:
Version of Schema Compare for Oracle? Version of Oracle of each data source you are comparing? Common error message you experience when the deployment fails?
Many Thanks
Eddie
Senior Product Support Engineer
Redgate Software Ltd
Email: support@red-gate.com