I am using the Phing dbdeploy task to manage my database schema . This works fine if there are no errors in my delta file requests.
However, if there is an error, dbdeploy will simply run the delta files before the request with the error and then abort. This causes me some frustration, because then I need to manually cancel the entry in the change table. If I do not, dbdeploy will assume that the migration was successful on a subsequent attempt, so any attempts will not do anything.
So the question is: is there a way to force dbdeploy transactions to use, or can you suggest any other way to automatically roll back a finger when an error occurs ?
Note. I am not a professional with Phing, so if it involves writing a custom task, any code sample or URL with additional information is highly appreciated. Thanks
php mysql migration phing
Gordon
source share