openjpa-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Pinaki Poddar (Created) (JIRA)" <>
Subject [jira] [Created] (OPENJPA-2099) Reuse relationship selection
Date Fri, 23 Dec 2011 18:50:31 GMT
Reuse relationship selection 

                 Key: OPENJPA-2099
             Project: OpenJPA
          Issue Type: Improvement
            Reporter: Pinaki Poddar
            Assignee: Pinaki Poddar

Related entities are often loaded via a separate select operation when an unloaded field is
accessed. The select operation for a relationship field structurally (i.e. which tables it
joins to or what columns it selects) is invariant at instance level. Only thing that changes
across entity instances is the foreign/primary key identifier values used in joining. The
major computation cost is paid to analyze to build the select structure by analyzing the mapping
metadata of class/field involved. As noted, this computation is invariant for each instance
access except the primary/foreign key values involved. 
However, the core infrastructure for this frequent operation (because it is carried out whenever
a relationship field is loaded for every instance) is not designed for reuse. The select gets
constructed every time, the class/field mapping metadata gets analyzed every time, before
the select is executed on the database. 
What is required to avoid this repeated and unnecessary cost is to reuse a select instance
computed for every relationship field only once but binding different parameters on every
The task is non-trivial because of the select abstraction (a highly complex and critical data
structure) is not designed with such parameter rebinding in mind. 
This issue attempts to remedy that limitation. 

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:!default.jspa
For more information on JIRA, see:


View raw message