Additional trace to relate SQL pushdowns with entity action or JPQL query
-------------------------------------------------------------------------

                 Key: OPENJPA-1585
                 URL: https://issues.apache.org/jira/browse/OPENJPA-1585
             Project: OpenJPA
          Issue Type: Improvement
    Affects Versions: 2.0.0
            Reporter: Catalina Wei
            Assignee: Catalina Wei
            Priority: Trivial


Additional trace can help users understand and relate query or entity actions 
with SQL pushdowns:
1.  why SQL pushdown has JOINs that are generated, a trace dumping out eager 
relations for the generated SQL is very helpful.
2. a JPQL or a simple em.find() generated caused more than one SQL requests.
3. entity instance actions (INSERT, UPDATE, DELETE) generated SQL

Examples:
1. JOIN is generated because of the eager relation 'entitya':
4891  p1  TRACE  [main] openjpa.Query - Executing query: select s from CascadeB 
s
4906  p1  TRACE  [main] openjpa.jdbc.Extra - Eager relations: 
[test.entities.CascadeB.entitya]
5141  p1  TRACE  [main] openjpa.jdbc.SQL - <t 26882784, conn 9493> executing 
prepstmnt 25862088 SELECT t0.id, t1.id, t1.name, t0.name FROM CascadeB t0 LEFT 
OUTER JOIN CascadeA t1 ON t0.ENTITYA_ID = t1.id 

2. flush for new instance of entity action:
7250  p1  TRACE  [main] openjpa.jdbc.Extra - flush: 
org.apache.openjpa.kernel.PNewState for oid=1
7250  p1  TRACE  [main] openjpa.jdbc.SQL -: INSERT INTO BasicA (age,id,name) 
VALUES (?,?,?) [1,1,name1]

2: loading relation 'entitya':
7734  p1  TRACE  [main] openjpa.jdbc.Extra - load field: 'entitya' for oid=1 
class test.entities.BasicB
7734  p1  TRACE  [main] openjpa.jdbc.Extra - find: oid=1 class 
test.entities.BasicA
7734  p1  TRACE  [main] openjpa.jdbc.Extra - getInitializeStateResult: oid=1 
class test.entities.BasicA
7969  pdq1  TRACE  [main] openjpa.jdbc.SQL - <t 26882784, conn 3125250> 
executing prepstmnt 28008463 SELECT t0.name FROM BasicA t0 WHERE t0.id = ?  
optimize for 1 row [params=(int) 1]




-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to