[JBoss JIRA] (ISPN-3953) JPACacheStore should not load all entities in memory
by Mircea Markus (JIRA)
[ https://issues.jboss.org/browse/ISPN-3953?page=com.atlassian.jira.plugin.... ]
Mircea Markus updated ISPN-3953:
--------------------------------
Assignee: Radim Vansa (was: Mircea Markus)
> JPACacheStore should not load all entities in memory
> ----------------------------------------------------
>
> Key: ISPN-3953
> URL: https://issues.jboss.org/browse/ISPN-3953
> Project: Infinispan
> Issue Type: Enhancement
> Components: Loaders and Stores
> Reporter: Emmanuel Bernard
> Assignee: Radim Vansa
>
> Today several methods use getResultList() and load either all keys or all entities for a given entity type in- memory at the same time.
> This will likely blow up for big tables.
> There are two solutions:
> ## Use Hibernate's specific features
> Hibernate ORM has a session.scroll() method that offers a FORWARD_ONLY scrollable result set. You can then load data and regularly (every 100?) clear the session before hitting the next result. This will diminish greatly the memory pressure.
> ## Use a window model
> get the number of entities in the table select count(*)
> Then use setFirstResult / setMaxResults to navigate the data with a sliding window and clear the session every time you move the window.
> This won't be as efficient as Hibernate ORM's specific approach but will do the work except on database that don't support the ability to start the results at the nth element. Look up Hibernate dialects for more info.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 10 months
[JBoss JIRA] (ISPN-3957) Preload with async cache store is not efficient
by Mircea Markus (JIRA)
[ https://issues.jboss.org/browse/ISPN-3957?page=com.atlassian.jira.plugin.... ]
Mircea Markus updated ISPN-3957:
--------------------------------
Status: Pull Request Sent (was: Open)
Git Pull Request: https://github.com/infinispan/infinispan/pull/2362
> Preload with async cache store is not efficient
> -----------------------------------------------
>
> Key: ISPN-3957
> URL: https://issues.jboss.org/browse/ISPN-3957
> Project: Infinispan
> Issue Type: Enhancement
> Components: Loaders and Stores
> Affects Versions: 5.2.7.Final
> Reporter: Mircea Markus
> Assignee: Dan Berindei
> Fix For: 5.2.8.Final, 7.0.0.Alpha1, 7.0.0.Final
>
>
> Configuring on a AdvancedCacheLoader preload=true and asyn=true cause it to load each entry in the store in a loop, each entry being loaded through an store read.
> This is caused by the way loadAll is implemented in the AsynLoader: in order to enforce consistency with whatever is in memory it does some special handling. The thing is, though, that we don't need this advanced async loader logic during the initial preload, as the async cache loader is empty.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 10 months
[JBoss JIRA] (ISPN-3957) Preload with async cache store is not efficient
by RH Bugzilla Integration (JIRA)
[ https://issues.jboss.org/browse/ISPN-3957?page=com.atlassian.jira.plugin.... ]
RH Bugzilla Integration updated ISPN-3957:
------------------------------------------
Bugzilla Update: Perform
Bugzilla References: https://bugzilla.redhat.com/show_bug.cgi?id=1059489
> Preload with async cache store is not efficient
> -----------------------------------------------
>
> Key: ISPN-3957
> URL: https://issues.jboss.org/browse/ISPN-3957
> Project: Infinispan
> Issue Type: Enhancement
> Components: Loaders and Stores
> Affects Versions: 5.2.7.Final
> Reporter: Mircea Markus
> Assignee: Dan Berindei
> Fix For: 5.2.8.Final, 7.0.0.Alpha1, 7.0.0.Final
>
>
> Configuring on a AdvancedCacheLoader preload=true and asyn=true cause it to load each entry in the store in a loop, each entry being loaded through an store read.
> This is caused by the way loadAll is implemented in the AsynLoader: in order to enforce consistency with whatever is in memory it does some special handling. The thing is, though, that we don't need this advanced async loader logic during the initial preload, as the async cache loader is empty.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 10 months
[JBoss JIRA] (ISPN-3957) Preload with async cache store is not efficient
by Mircea Markus (JIRA)
Mircea Markus created ISPN-3957:
-----------------------------------
Summary: Preload with async cache store is not efficient
Key: ISPN-3957
URL: https://issues.jboss.org/browse/ISPN-3957
Project: Infinispan
Issue Type: Enhancement
Components: Loaders and Stores
Affects Versions: 5.2.7.Final
Reporter: Mircea Markus
Assignee: Dan Berindei
Fix For: 5.2.8.Final, 7.0.0.Alpha1, 7.0.0.Final
Configuring on a AdvancedCacheLoader preload=true and asyn=true cause it to load each entry in the store in a loop, each entry being loaded through an store read.
This is caused by the way loadAll is implemented in the AsynLoader: in order to enforce consistency with whatever is in memory it does some special handling. The thing is, though, that we don't need this advanced async loader logic during the initial preload, as the async cache loader is empty.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 10 months