JPQL EXISTS clauses do not handle subclasses properly
-----------------------------------------------------

                 Key: OPENJPA-508
                 URL: https://issues.apache.org/jira/browse/OPENJPA-508
             Project: OpenJPA
          Issue Type: Bug
    Affects Versions: 1.0.1, 1.0.0
            Reporter: Patrick Linskey
             Fix For: 1.0.2, 1.1.0


The following code does not properly add subclass indicators to the generated 
SQL query:

        StringRootEntity e = new StringRootEntity();
        e.setName("foo");
        em.persist(e);

        e = new StringRootEntity();
        e.setName("foo");
        em.persist(e);

        e = new StringRootEntity();
        e.setName("bar");
        em.persist(e);

        em.flush();

        Query q = em.createQuery("select o from StringAbstractEntity o " +
            "where exists (select o2 from StringLeafEntity o2)");
        List<StringAbstractEntity> list = q.getResultList();
        assertEquals(0, list.size());


The assertion at the end fails; 3 results are returned, even though there are 
no SingleLeafEntity instances in the store.

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