Uploaded image for project: 'Cayenne'
  1. Cayenne
  2. CAY-2366

Incorrect EJBQL COUNT translation

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 4.0.B2, 4.1.M1
    • 4.0.B2, 4.1.M1
    • None
    • None

    Description

      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:

      select count(a) from E17 a
      

      Previously it generated SQL like this:

      SELECT COUNT(*) AS sc0 FROM utest.e17 t0 
      

      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:

      SELECT COUNT(t0.id1) AS sc0 FROM utest.e17 t1 
      

      The result is an exception similar to this:

      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)
      

      Attachments

        Activity

          People

            ntimofeev Nikita Timofeev
            andrus Andrus Adamchik
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: