From 7db2210ba4307c95f3a12c5e37de8f1147389446 Mon Sep 17 00:00:00 2001 From: Alexander Wagner Date: Wed, 20 Jul 2022 13:47:17 +0200 Subject: [PATCH] Bug findsingleattributelist o2m maxrows --- .../query/other/TestQuerySingleAttribute.java | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/ebean-test/src/test/java/org/tests/query/other/TestQuerySingleAttribute.java b/ebean-test/src/test/java/org/tests/query/other/TestQuerySingleAttribute.java index df9d0f3b0..835c74584 100644 --- a/ebean-test/src/test/java/org/tests/query/other/TestQuerySingleAttribute.java +++ b/ebean-test/src/test/java/org/tests/query/other/TestQuerySingleAttribute.java @@ -756,6 +756,30 @@ public class TestQuerySingleAttribute extends BaseTestCase { } } + @Test + public void oneToMany_maxRows() { + + ResetBasicData.reset(); + + Query query = DB.find(Customer.class) + .fetch("orders", "status") + .setMaxRows(2); + + List statusList = query.findSingleAttributeList(); + assertSql(query) + .contains("select t1.status from o_customer t0 " + + "left join o_order t1 on t1.kcustomer_id = t0.id and t1.order_date is not null limit 2") + .doesNotContain("order by"); + // Results in java.lang.AssertionError: selectSql was null + // at io.ebeaninternal.server.query.SqlTree.getSelectSql(SqlTree.java:99) + // at io.ebeaninternal.server.query.CQueryBuilder$BuildReq.appendSelect(CQueryBuilder.java:584) + // at io.ebeaninternal.server.query.CQueryBuilder$BuildReq.buildSql(CQueryBuilder.java:695) + // at io.ebeaninternal.server.query.CQueryBuilder.buildSql(CQueryBuilder.java:519) + // at io.ebeaninternal.server.query.CQueryBuilder.buildFetchAttributeQuery(CQueryBuilder.java:198) + // at io.ebeaninternal.server.query.CQueryEngine.findSingleAttributeList(CQueryEngine.java:91) + assertThat(statusList).hasSize(2); + } + @BeforeEach public void setup() { MainEntity e1 = new MainEntity();