You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@isis.apache.org by "Dan Haywood (JIRA)" <ji...@apache.org> on 2014/07/16 20:18:07 UTC

[jira] [Updated] (ISIS-571) To (hopefully) improve performance, use Render.EAGERLY as a hint to instruct JDO to eagerly load the collection (using a dynamic fetch group).

     [ https://issues.apache.org/jira/browse/ISIS-571?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Dan Haywood updated ISIS-571:
-----------------------------

    Fix Version/s:     (was: core-1.6.0)
                   core-1.7.0

> To (hopefully) improve performance, use Render.EAGERLY as a hint to instruct JDO to eagerly load the collection (using a dynamic fetch group).
> ----------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: ISIS-571
>                 URL: https://issues.apache.org/jira/browse/ISIS-571
>             Project: Isis
>          Issue Type: New Feature
>          Components: Core, Core: Objectstore: JDO
>    Affects Versions: objectstore-jdo-1.1.0, core-1.2.0
>            Reporter: Dan Haywood
>            Assignee: Dan Haywood
>             Fix For: core-1.7.0
>
>
> Information on JDO dynamic fetch groups at [http://www.datanucleus.org/products/datanucleus/jdo/fetchgroup.html#dynamic]
> My thought is that Isis would spin through each of the classes, and look for those that have any collections annotated EAGERLY.  It would then programmatically define a JDO fetch group for each.
> When the object is displayed, Isis would select ONE of these fetch groups and use it to avoid some of the N+1 issues.
> NB: it probably would need to select just one of them, otherwise the resulting query submitted by DataNucleus would be of the form
> SELECT
>   FROM entity
>   JOIN child_entity1 ON ...
>   JOIN child_entity2 ON ...
> ie, a rather large amount of data...



--
This message was sent by Atlassian JIRA
(v6.2#6252)