Mifos 2.0 Upgrade Instructions

Mifos Versions

  • Before upgrading to Mifos 2.0.3, you must first upgrade your 1.x version of Mifos to version 2.0.2 IF you want to preserve scheduled tasks history.
  • Please read all relevant upgrade instructions for the version of Mifos you are running and above before proceeding with this upgrade - Past Upgrade Instructions
  • If you are unsure of the version of Mifos you are using, please refer to Past Releases.

Important Notes

  • This version of Mifos deprecates existing Additional Fields and Surveys, migrating them to the new Question Group functionality.  Please read Data Migration for Question Groups first before upgrading.
  • The SavingsIntCalcTask batch job has been removed. If you have custom batch job configuration, you must remove this batch job from your configuration.
  • Mifos Scheduling mechanism has been rewritten to use Quartz/Spring Batch frameworks. You are encouraged to change your task.xml to the new format. Please read Quartz Batch Jobs for more information about new system. Old task.xml format is still supported.
  • MifosChartOfAccounts.custom.xml and mifosBeanConfig.custom.xml are now picked up from the MIFOS_CONF directory. (It won't be picked from tomcat/lib directory anymore). Please move these files to your MIFOS_CONF directory. See Mifos Configuration locations on how to set this.
  • If you are using the MPESA plugin, MPESA/ZAP payment mode has been renamed to MPESA.
  • ProcessFlow.LoanDisbursedToLoanOfficerStateEnabled has been removed from Configuration.  This state is now invalid.  Issue MIFOS-3284                  .
  • FiscalCalendarRules.ScheduleTypeForMeetingOnHoliday has been changed to FiscalCalendarRules.ScheduleMeetingIfNonWorkingDay.  Please change this property if it is set in your custom properties file.  Issue MIFOS-2228.

Major Bug Fixes

  • Amount Due under Client Charges now show the correct amount due (includes due and overdue amounts).  However, this may be inconsistent upon upgrade and old values might not be updated properly in the UI.  (Amount Due is still saved correctly).  Issue MIFOS-2247                 .

Known Issues

ISSUE: Surveys to Question Group data Migration issue

http://mifosforge.jira.com/wiki/display/MIFOS/Data+Migration+for+Question+Groups#DataMigrationforQuestionGroups-KnownIssues

ISSUE: Upgrading to 2.x logs contain error OR after upgrade to 2.x enabling PPI gives error ERROR, org.hibernate.util.JDBCExceptionReporter, ?, ?, ?, Incorrect string value: '\xE0\xB2\x90\xE0\xB2\xA6...'

Instructions for users, before upgrading from 1.6.x to 2.x AND This upgrade process can be applied after upgrading to 2.x also if you don't have any rows in these tables

  • questions
  • question_choices

STEP 1. Login to mysql as root,

STEP 2. Run this query

select table_name,table_collation,table_schema from information_schema.tables where table_collation not like '%utf8%' and table_name like 'question%' and table_schema like '<MIFOS_DATABASE_NAME>';

STEP 3. If some rows are returned eg.

+------------------+-------------------+--------------+
| table_name       | table_collation   | table_schema |
+------------------+-------------------+--------------+
| question_choices | latin1_swedish_ci | mifos        |
| questions        | latin1_swedish_ci | mifos        |
+------------------+-------------------+--------------+

NOTE: if you get zero rows, given that you have used correct database name then you don't need to go to next step.

STEP 4. Run these queries to your Mifos database to change the character set of question tables from latin1 to be utf8

mysql> use <MIFOS_DATABASE_NAME>
mysql> alter table questions convert to character set utf8;
mysql> alter table question_choices convert to character set utf8;

STEP 5. Verify using step 2, you should not get any rows which are latin1 character set.