HHH-11157 : Fix failing WithClauseTest
(cherry picked from commit 877a05213c
)
This commit is contained in:
parent
908d0acdd5
commit
c30c8d9dd7
|
@ -194,22 +194,27 @@ public class WithClauseTest extends BaseCoreFunctionalTestCase {
|
|||
public void testWithClauseAsNonSubqueryWithKey() {
|
||||
rebuildSessionFactory( Collections.singletonMap( AvailableSettings.COLLECTION_JOIN_SUBQUERY, "false" ) );
|
||||
|
||||
TestData data = new TestData();
|
||||
data.prepare();
|
||||
try {
|
||||
TestData data = new TestData();
|
||||
data.prepare();
|
||||
|
||||
Session s = openSession();
|
||||
Transaction txn = s.beginTransaction();
|
||||
Session s = openSession();
|
||||
Transaction txn = s.beginTransaction();
|
||||
|
||||
// Since family has a join table, we will first left join all family members and then do the WITH clause on the target entity table join
|
||||
// Normally this produces 2 results which is wrong and can only be circumvented by converting the join table and target entity table join to a subquery
|
||||
List list = s.createQuery("from Human h left join h.family as f with key(f) like 'son1' where h.description = 'father'")
|
||||
.list();
|
||||
assertEquals("subquery rewriting of join table was not disabled", 2, list.size());
|
||||
// Since family has a join table, we will first left join all family members and then do the WITH clause on the target entity table join
|
||||
// Normally this produces 2 results which is wrong and can only be circumvented by converting the join table and target entity table join to a subquery
|
||||
List list = s.createQuery( "from Human h left join h.family as f with key(f) like 'son1' where h.description = 'father'" )
|
||||
.list();
|
||||
assertEquals( "subquery rewriting of join table was not disabled", 2, list.size() );
|
||||
|
||||
txn.commit();
|
||||
s.close();
|
||||
txn.commit();
|
||||
s.close();
|
||||
|
||||
data.cleanup();
|
||||
data.cleanup();
|
||||
} finally {
|
||||
// Rebuild to reset the properties
|
||||
rebuildSessionFactory();
|
||||
}
|
||||
}
|
||||
|
||||
private class TestData {
|
||||
|
|
Loading…
Reference in New Issue