[
http://mifosforge.jira.com/browse/MIFOS-2623?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
jbrewster updated MIFOS-2623:
-----------------------------
Status: Verified (was: Resolved)
> Remove holiday query bottleneck from generate meeting schedule job
> ------------------------------------------------------------------
>
> Key: MIFOS-2623
> URL: http://mifosforge.jira.com/browse/MIFOS-2623
> Project: mifos
> Issue Type: Improvement
> Components: Batch jobs
> Affects Versions: 1.4
> Reporter: jbrewster
> Assignee: mifosdeveloperqueue
> Priority: Major
> Fix For: Release 1.5
>
> Attachments: documentation+fix.zip
>
>
> Issue:
> Every center in Mifos has a schedule meeting day in a week during which loan
> officers meet clients. Client attendance is maintained in the system for this
> meeting. Every night a scheduled Meeting Schedule Job
> (GenerateMeetingsForCustomerAndSavings) runs and creates customer attendance
> records for the system. In effect the number of records that gets inserted
> every week is equal to the total number of clients in the system - so
> obviously this table is one of the largest in the system. Performance of the
> job has been a concern for long and the way it is written is kind of
> traditional - a lot of for loops and single inserts.
> Prabaharan Gopalan performed some analysis of the batch job, and determined:
> One obvious thing which takes bulk of the time is, we look up the database to
> get the holidays for the current and next year.
> This we do for every meeting date generated. That means 10 time we hit the
> database for a single account and that too for the same information.
> Assuming for each hit it takes about 100 ms, then for each account it takes 1
> second.
> There is more: Hibernate caches information that it retrieves from the
> database. And the cache is getting flushed according to a configuration,
> which typically happens for 1000 accounts.
> As more and more information gets into the cache, the updates and the queries
> are taking time. So, if for the first account to get updated, it takes 200 ms
> and it is in the cache.
> For the 1000th account it will take about 4-5 seconds and then the cache gets
> flushed.
> For full details, follow developer list thread: http://tinyurl.com/yjq4skw.
> Attached is documentation, log, and patch provided by Prabaharan.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://mifosforge.jira.com/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Mifos-issues mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mifos-issues