persistence@glassfish.java.net

Re: JPQL: wrong SQL for MEMBER OF query (issue 673)

From: Tom Ware <tom.ware_at_oracle.com>
Date: Thu, 21 Sep 2006 09:15:46 -0400

Hi Michael,

  The changes look good.

-Tom

Michael Bouschen wrote:

>Hi Tom, hi Jielin,
>
>I fixed the P2 issue 673 "EEJBQL Select query with MEMBER OF generates
>wrong sql": https://glassfish.dev.java.net/issues/show_bug.cgi?id=673
>
>
>Method MemberOfNode.generateExpression includes some special code for
>the case the MEMBER OF uses a variable that is not the base variable of
>the query, e.g. ... FROM Employee e, Project p WHERE p MEMBER OF ...
>This code introduces an extra ExpressionBuilder for the variable p which
>leads to an additional table in the generated SQL. We do not need this
>special code anymore, because we cleaned up the ExpressionBuilder
>handling in the parser. The attached jar removes this code and adds new
>MEMBER OF test queries (the above query and the query from issue 673).
>
>Thanks!
>
>Regards Michael
>
>