[ 
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)

Reply via email to