cayenne-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andrus Adamchik (JIRA)" <>
Subject [jira] [Updated] (CAY-2366) Incorrect EJBQL COUNT translation
Date Sat, 23 Sep 2017 14:38:00 GMT


Andrus Adamchik updated CAY-2366:
    Affects Version/s: 4.1.M1

> Incorrect EJBQL COUNT translation
> ---------------------------------
>                 Key: CAY-2366
>                 URL:
>             Project: Cayenne
>          Issue Type: Bug
>    Affects Versions: 4.0.B2, 4.1.M1
>            Reporter: Andrus Adamchik
>            Assignee: Nikita Timofeev
> As a part of 4.0.B2 evaluation, I tried running LinkRest tests on 4.0.B2. I got a few
errors related to EJBQL query with COUNT translation. Consider this query for instance:
> {noformat}
> select count(a) from E17 a
> {noformat}
> Previous it generated SQL like this:
> {noformat}
> SELECT COUNT(*) AS sc0 FROM utest.e17 t0 
> {noformat}
> Now it generates SQL with an explicit ID inside COUNT, but the alias for the column and
the alias for the table do not match:
> {noformat}
> SELECT COUNT(t0.id1) AS sc0 FROM utest.e17 t1 
> {noformat}
> The result is an exception similar to this:
> {noformat}
> java.sql.SQLSyntaxErrorException: Column 'T0.ID1' 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 'T0.ID1' is not a column in the target table.
> 	at org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown Source)
> {noformat}

This message was sent by Atlassian JIRA

View raw message