[
http://opensource.atlassian.com/projects/hibernate/browse/HHH-4970?page=c...
]
Strong Liu resolved HHH-4970.
-----------------------------
Assignee: Strong Liu
Resolution: Fixed
Fix Version/s: 3.5.x
skip this test on ingres
org.hibernate.test.hql.ASTParserLoadingTest error running
testComponentParameterBinding with Ingres
---------------------------------------------------------------------------------------------------
Key: HHH-4970
URL:
http://opensource.atlassian.com/projects/hibernate/browse/HHH-4970
Project: Hibernate Core
Issue Type: Bug
Components: testsuite
Affects Versions: 3.5.0-CR-2
Environment: Hibernate 3.5.0-CR-2, Ingres 9.3.1 (int.lnx/106), Ingres9Dialect
Reporter: Ray Fan
Assignee: Strong Liu
Fix For: 3.5.x
Attachments: hql-astparserloadingtest.zip
org.hibernate.test.hql.ASTParserLoadingTest testComponentParameterBinding reports an
error executing the test with an Ingres exception.
{noformat}
<error message="could not execute query"
type="org.hibernate.exception.SQLGrammarException">org.hibernate.exception.SQLGrammarException:
could not execute query
at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:91)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)
at org.hibernate.loader.Loader.doList(Loader.java:2257)
at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2151)
at org.hibernate.loader.Loader.list(Loader.java:2146)
at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:448)
at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:363)
at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:196)
at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1258)
at org.hibernate.impl.QueryImpl.list(QueryImpl.java:102)
at
org.hibernate.test.hql.ASTParserLoadingTest.testComponentParameterBinding(ASTParserLoadingTest.java:645)
Caused by: com.ingres.gcf.util.SqlEx: A <column reference> contained a
<qualifier> 'order0_'
which did not correspond to any of the <table reference>s
within whose scope the <column reference> appeared.
at com.ingres.gcf.jdbc.DrvObj.readError(Unknown Source)
at com.ingres.gcf.jdbc.DrvObj.readResults(Unknown Source)
at com.ingres.gcf.jdbc.DrvPrep.prepare(Unknown Source)
at com.ingres.gcf.jdbc.DrvConn.createPrepStmt(Unknown Source)
at com.ingres.gcf.jdbc.JdbcPrep.<init>(Unknown Source)
at com.ingres.gcf.jdbc.JdbcConn.createPrep(Unknown Source)
at com.ingres.gcf.jdbc.JdbcConn.prepareStatement(Unknown Source)
at org.hibernate.jdbc.AbstractBatcher.getPreparedStatement(AbstractBatcher.java:534)
at org.hibernate.jdbc.AbstractBatcher.getPreparedStatement(AbstractBatcher.java:452)
at
org.hibernate.jdbc.AbstractBatcher.prepareQueryStatement(AbstractBatcher.java:161)
at org.hibernate.loader.Loader.prepareQueryStatement(Loader.java:1597)
at org.hibernate.loader.Loader.doQuery(Loader.java:718)
at
org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:271)
at org.hibernate.loader.Loader.doList(Loader.java:2254)
... 38 more
</error>
{noformat}
The SQL query that is produced references order0_ in the WHERE clause of the sub-select
query
{noformat}
select
order0_.customerId as customerId35_,
order0_.orderNumber as orderNum2_35_,
order0_.orderDate as orderDate35_,
( select
sum(li.quantity*p.cost)
from
LineItem li,
Product p
where
li.productId = p.productId
and li.customerId = order0_.customerId
and li.orderNumber = order0_.orderNumber ) as formula1_
from
CustomerOrder order0_ cross
join
Customer customer1_
where
order0_.customerId=customer1_.customerId
and customer1_.name=?
and order0_.customerId=?
and order0_.orderNumber=?
{noformat}
Once the scoping error is removed a more fundamental error is exposed "Subselects
are not supported within select target lists."
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://opensource.atlassian.com/projects/hibernate/secure/Administrators....
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira