You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openjpa.apache.org by mi...@apache.org on 2008/12/18 18:36:19 UTC
svn commit: r727775 - in /openjpa/branches/1.2.x: ./
openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/SelectImpl.java
openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/query/TestSubquery.java
Author: mikedd
Date: Thu Dec 18 09:36:18 2008
New Revision: 727775
URL: http://svn.apache.org/viewvc?rev=727775&view=rev
Log:
OPENJPA-708 merge to 1.2.x
Modified:
openjpa/branches/1.2.x/ (props changed)
openjpa/branches/1.2.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/SelectImpl.java
openjpa/branches/1.2.x/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/query/TestSubquery.java
Propchange: openjpa/branches/1.2.x/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Dec 18 09:36:18 2008
@@ -1 +1 @@
-/openjpa/trunk:708722
+/openjpa/trunk:690823,708722
Modified: openjpa/branches/1.2.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/SelectImpl.java
URL: http://svn.apache.org/viewvc/openjpa/branches/1.2.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/SelectImpl.java?rev=727775&r1=727774&r2=727775&view=diff
==============================================================================
--- openjpa/branches/1.2.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/SelectImpl.java (original)
+++ openjpa/branches/1.2.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/SelectImpl.java Thu Dec 18 09:36:18 2008
@@ -577,7 +577,10 @@
if (_parent.getAliases() == null || _subPath == null)
return;
-
+
+ if (_parent._aliases.size() <= 1)
+ return;
+
// resolve aliases for subselect from parent
Set<Map.Entry> entries = _parent.getAliases().entrySet();
for (Map.Entry entry : entries) {
Modified: openjpa/branches/1.2.x/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/query/TestSubquery.java
URL: http://svn.apache.org/viewvc/openjpa/branches/1.2.x/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/query/TestSubquery.java?rev=727775&r1=727774&r2=727775&view=diff
==============================================================================
--- openjpa/branches/1.2.x/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/query/TestSubquery.java (original)
+++ openjpa/branches/1.2.x/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/query/TestSubquery.java Thu Dec 18 09:36:18 2008
@@ -32,7 +32,8 @@
public void setUp() {
setUp(Customer.class, Customer.CustomerKey.class,
- Order.class, OrderItem.class, CLEAR_TABLES);
+ Order.class, OrderItem.class,
+ Magazine.class, Publisher.class, CLEAR_TABLES);
}
static String[] querys = new String[] {
@@ -68,6 +69,16 @@
" (select sum(o2.amount) from c.orders o2)",
"select o1.oid, c.name from Order o1, Customer c where o1.amount = " +
" any(select o2.amount from in(c.orders) o2)",
+ "SELECT p, m "+
+ "FROM Publisher p "+
+ "LEFT OUTER JOIN p.magazineCollection m "+
+ "WHERE m.id = (SELECT MAX(m2.id) "+
+ "FROM Magazine m2 "+
+ "WHERE m2.idPublisher.id = p.id "+
+ "AND m2.datePublished = "+
+ "(SELECT MAX(m3.datePublished) "+
+ "FROM Magazine m3 "+
+ "WHERE m3.idPublisher.id = p.id)) ",
// outstanding problem subqueries:
//"select o from Order o where o.amount > (select count(o) from Order o)",
//"select o from Order o where o.amount > (select count(o2) from Order o2)",