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

Andy Jefferson resolved JDO-573.
--------------------------------

    Resolution: Fixed

SVN trunk now has the multiple navigation tests enabled, and the RI passes 
(tested with DataNucleus 2.2.0 snapshots).

> RI creates bad SQL for navigational queries
> -------------------------------------------
>
>                 Key: JDO-573
>                 URL: https://issues.apache.org/jira/browse/JDO-573
>             Project: JDO
>          Issue Type: Bug
>          Components: tck, tck2-legacy
>    Affects Versions: JDO 2 maintenance release 1, JDO 2 maintenance release 2
>            Reporter: Craig L Russell
>            Assignee: Andy Jefferson
>             Fix For: JDO 3 maintenance release 1
>
>
> The test org.apache.jdo.tck.query.result.VariableInResultNavigation fails 
> with incorrect SQL generated.
>     [java] 1) 
> testNavigationWithThisAndCompany(org.apache.jdo.tck.query.result.VariableInResultNavigation)javax.jdo.JDOException:
>  JDOException thrown while executing query:
>     [java] SELECT this, e, p FROM org.apache.jdo.tck.pc.company.Company WHERE 
> name == "Sun Microsystems, Inc." && departments.contains(d) && 
> d.employees.contains(e) && e.projects.contains(p) VARIABLES Department d; 
> Employee e; Project p 
>     [java]    at 
> org.apache.jdo.tck.query.QueryTest.execute(QueryTest.java:1314)
>     [java]    at 
> org.apache.jdo.tck.query.QueryTest.execute(QueryTest.java:1135)
>     [java]    at 
> org.apache.jdo.tck.query.QueryTest.executeAPIQuery(QueryTest.java:1071)
>     [java]    at 
> org.apache.jdo.tck.query.QueryTest.executeAPIQuery(QueryTest.java:1051)
>     [java]    at 
> org.apache.jdo.tck.query.result.VariableInResultNavigation.testNavigationWithThisAndCompany(VariableInResultNavigation.java:251)
>     [java]    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>     [java]    at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>     [java]    at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>     [java]    at org.apache.jdo.tck.JDO_Test.runBare(JDO_Test.java:254)
>     [java]    at 
> org.apache.jdo.tck.util.BatchTestRunner.doRun(BatchTestRunner.java:108)
>     [java]    at 
> org.apache.jdo.tck.util.BatchTestRunner.start(BatchTestRunner.java:148)
>     [java]    at 
> org.apache.jdo.tck.util.BatchTestRunner.main(BatchTestRunner.java:123)
>     [java] NestedThrowablesStackTrace:
>     [java] javax.jdo.JDODataStoreException: [JPOX-042007] Error executing 
> JDOQL query "SELECT 
> THIS.DATASTORE_IDENTITY,UNBOUND_E.DATASTORE_IDENTITY,UNBOUND_P.DATASTORE_IDENTITY
>  FROM datastoreidentity0.COMPANIES THIS , datastoreidentity0.PERSONS 
> UNBOUND_E , datastoreidentity0.PROJECTS UNBOUND_P WHERE EXISTS (SELECT 1 FROM 
> datastoreidentity0.DEPARTMENTS THIS_DEPARTMENTS_D WHERE EXISTS (SELECT 1 FROM 
> datastoreidentity0.PERSONS THIS_DEPARTMENTS_D_EMPLOYEES_E WHERE 
> THIS_DEPARTMENTS_D_EMPLOYEES_E.DEPARTMENT = 
> THIS_DEPARTMENTS_D.DATASTORE_IDENTITY AND THIS_DEPARTMENTS_D.COMPANYID = 
> THIS.DATASTORE_IDENTITY AND THIS."NAME" = ?)) AND EXISTS (SELECT 1 FROM 
> datastoreidentity0.PROJECT_MEMBER THIS_DEPARTMENTS_D_EMPLOYEES_E_PROJECTS_P 
> WHERE THIS_DEPARTMENTS_D_EMPLOYEES_E_PROJECTS_P."MEMBER" = 
> THIS_DEPARTMENTS_D_EMPLOYEES_E.DATASTORE_IDENTITY AND 
> UNBOUND_P.DATASTORE_IDENTITY = 
> THIS_DEPARTMENTS_D_EMPLOYEES_E_PROJECTS_P.PROJID)" : Column 
> 'THIS_DEPARTMENTS_D_EMPLOYEES_E.DATASTORE_IDENTITY' is either not in any 
> table in the FROM list or appears within a join specification and is outside 
> the scope of the join specification or appears in a HAVING clause and is not 
> in the GROUP BY list. If this is a CREATE or ALTER TABLE  statement then 
> 'THIS_DEPARTMENTS_D_EMPLOYEES_E.DATASTORE_IDENTITY' is not a column in the 
> target table..

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