Hi Chico- A list of steps for handling upgrades and downgrades are here: http://www.mifos.org/developers/technical-orientation/mifos-database-dev elopment <http://www.mifos.org/developers/technical-orientation/mifos-database-de velopment?searchterm=upgrades+downg> . Hopefully referring to this page will make it easier to handle the database upgrades/downgrades. Please let us know if you see anything missing there.
The database upgrades do actually help with data migration from revision to revision. It doesn't help with moving data from an existing system to Mifos, which is usually what we are referring to when we say data migration. For example, when we upgrade our test server at http://test.mifos.org:8085/mifos to a new revision, we don't need to run any manual scripts- the application does all the work. This makes testing and development much easier, especially when there are frequent schema modifications during development. We had a discussion several weeks ago about whether automatically upgrading a database is appropriate in production. I think we do need to have further discussion on this specific topic, as there are very good reasons to give a DBA control over what occurs in production. I will send an email with further thoughts on this topic in a few days. Thanks, Beth ________________________________ From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Chico Charlesworth Sent: Thursday, February 21, 2008 9:05 AM To: Developer Subject: [Mifos-developer] Upgrades, Downgrades, What are they for? Hi, I've been currently working on a couple of issues which demand changes in the database. As I worked to get these issues resolved, I've found that I had to go through a lot of hoops when updating the database. Here's the list of files that I'm referring to: src/org/mifos/framework/persistence/DatabaseVersionPersistence.java sql/latest-data.sql sql/latest-schema.sql sql/mifosdroptables.sql sql/mifosmasterdata.sql sql/upgrade_to_<database version>.sql sql/downgrade_from_<database version>.sql Is there not a better way of allowing for database changes? As far as I understand it, the upgrade, downgrade, database versioning notions are almost futile as they only consider schema changes and wouldn't help on data migration. I can't imagine they could be used effectively in a production environment. So my question is, what is the point of having them around at all? Cheers Chico
------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
