You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@fineract.apache.org by "James Dailey (Jira)" <ji...@apache.org> on 2021/11/09 21:15:00 UTC
[jira] [Updated] (FINERACT-1439) Performance hammered by too many
EAGER Load
[ https://issues.apache.org/jira/browse/FINERACT-1439?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
James Dailey updated FINERACT-1439:
-----------------------------------
Description:
Putting this in JIRA now to emphasize a pattern we need to avoid and to call for some PRs to correct some issues recently introduced into dev branch. We should use Eager load in SQL very very infrequently. Use lazy loading to avoid the hit to performance. Get only what you need, when you need it.
Eager loading retrieves the full model and relational data. In a complex data model like fineract, that means loading dozens of tables data that you won't use in your operation. That is a pattern we must avoid to keep the platform scalable.
We need to not only tune (see https://issues.apache.org/jira/browse/FINERACT-912) but to set up tests to avoid creating new problems as features are added. I think the tests need to exercise each API and get a response back within a predetermined timeframe.
Doing the right SQL statements is harder, but more rewarding!!
was:
Putting this in JIRA now to emphasize a pattern we need to avoid and to call for some PRs to correct some issues recently introduced into dev branch. We should use Eager very very infrequently. Use lazy loading to avoid the hit to performance.
Eager loading retrieves the full model and relational data. In a complex data model like finer act, that means loading dozens of tables data that you won't use in your operation. That is a pattern we must avoid to keep the platform scalable.
> Performance hammered by too many EAGER Load
> -------------------------------------------
>
> Key: FINERACT-1439
> URL: https://issues.apache.org/jira/browse/FINERACT-1439
> Project: Apache Fineract
> Issue Type: Bug
> Reporter: James Dailey
> Assignee: Ed Cable
> Priority: Major
>
> Putting this in JIRA now to emphasize a pattern we need to avoid and to call for some PRs to correct some issues recently introduced into dev branch. We should use Eager load in SQL very very infrequently. Use lazy loading to avoid the hit to performance. Get only what you need, when you need it.
> Eager loading retrieves the full model and relational data. In a complex data model like fineract, that means loading dozens of tables data that you won't use in your operation. That is a pattern we must avoid to keep the platform scalable.
> We need to not only tune (see https://issues.apache.org/jira/browse/FINERACT-912) but to set up tests to avoid creating new problems as features are added. I think the tests need to exercise each API and get a response back within a predetermined timeframe.
> Doing the right SQL statements is harder, but more rewarding!!
--
This message was sent by Atlassian Jira
(v8.20.1#820001)