 |
As of April 2007, mifos is using Hibernate 3.0beta4 (checked in to the mifos lib directory).
We'd like to upgrade (either all the way to 3.2.x, or to 3.0.5. Doing this in several steps might be easier or harder than a single step).
To see what is going on, replace the hibernate jar (all the required jars, like ehcache,
commons*, etc, should already be upgraded). Fix the obvious problems (a few
renamed methods and such). Look at the thread from March 2007 (titled "Patch for Upgrading To Hibernate 3.2.2 GA [Re: Mar.13th notes]"). Apply the patch there for changing lazy="true" to lazy="proxy" (just for many-to-one and one-to-one elements, not other places which have lazy attributes).
Then run the tests (start with TestCustomerPersistence), see what fails, and tell us what you found.
Known problems (as of July 2007) upgrading to Hibernate 3.2.4:
*executeAndUpdate had a typo in the beta version (executeAndUpate) - the fix was a simple refractor.
*TestCustomerPersistence (as is) fails because setUp() tries to delete persisted client object, but violates several foreign key contraints, in beta version hibernate did not check this for session items (it left it to the database). This points at a larger problem, that some objects are not deletable, though they probably should be - for example, performanceHistory. No change was made with regard to the relations between these objects, rather the approach is to migrate the tests to use mayfly (in memory database) TestDatabase? and call TestDatabase#resetDatabase? in tearDown.
|