IllegalStateException: Unexpected AST: org.hibernate.hql.internal.ast.tree.SqlNode executing HQL SELECT with a constructor expression containing null in JBoss EAP
Issue
-
Executing an HQL query using a constructor expression in the select clause where
Employeeis an entity typeSELECT new support.hibernate.dto.Pair(e, null) FROM Employee e WHERE e.name = :name -
After applying JBoss EAP 6.4 cumulative patch 10, encountering the following failure
java.lang.IllegalStateException: Unexpected AST: org.hibernate.hql.internal.ast.tree.SqlNode \-[NULL] SqlNode: 'null' at org.hibernate.hql.internal.ast.tree.SelectExpressionList.collectSelectExpressions(SelectExpressionList.java:55) at org.hibernate.hql.internal.ast.tree.ConstructorNode.resolveConstructorArgumentTypes(ConstructorNode.java:159) at org.hibernate.hql.internal.ast.tree.ConstructorNode.prepare(ConstructorNode.java:142) ... at org.hibernate.internal.SessionImpl.createQuery(SessionImpl.java:1739) at org.hibernate.ejb.AbstractEntityManagerImpl.createQuery(AbstractEntityManagerImpl.java:291) ... -
After applying JBoss EAP 7.0 cumulative patch 3, encountering the following failure
java.lang.NullPointerException at org.hibernate.hql.internal.NameGenerator.generateColumnNames(NameGenerator.java:27) at org.hibernate.hql.internal.ast.util.SessionFactoryHelper.generateColumnNames(SessionFactoryHelper.java:418) at org.hibernate.hql.internal.ast.tree.SelectClause.initializeColumnNames(SelectClause.java:267) ... at org.hibernate.internal.SessionImpl.createQuery(SessionImpl.java:1894) at org.hibernate.jpa.spi.AbstractEntityManagerImpl.createQuery(AbstractEntityManagerImpl.java:291) ...
Environment
- Red Hat JBoss Enterprise Application Platform (EAP)
- 7.0 CP03 (and later)
- 6.4 CP10 (and later)
- Hibernate
- 5.0.11 (and later)
- 4.2.24 (and later)
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.