HQL update statement fails if entity is inside a package of format in.mycomany.domain.Entity

Description

My company domain is of the format mycomany.in

I have changed my project's package from com.mycompany -> in.mycompany to keep it consistent with my company's domain.

After the migration, hibernate update queries are failing saying

1 2 unexpected token: in antlr.NoViableAltException: unexpected token: in

The actual query that ran was of this format

1 2 3 update Entity e set e.prop = ?1 where e.id = ?2

Here is the cleaned log

1 2 3 4 QueryTranslatorImpl: parse() - HQL: update in.mycompany.domain.Entity e set e.prop = ?1 where e.id = ?2 ErrorCounter: line 1:8: unexpected token: in

This error occurs only for update statement, but not for select for some reason.

This error occurs in org.hibernate.hql.internal.ast.QueryTranslatorImpl in the following section.

1 2 3 4 5 6 7 8 9 private HqlParser parse(boolean filter) throws TokenStreamException, RecognitionException { // Parse the query string into an HQL AST. final HqlParser parser = HqlParser.getInstance( hql ); parser.setFilter( filter ); LOG.debugf( "parse() - HQL: %s", hql ); parser.statement(); .... }

Environment

I am using Hibernate via Querydsl

Status

Assignee

Andrea Boriero

Reporter

Ashok Koyi

Fix versions

Labels

backPortable

None

Suitable for new contributors

None

Requires Release Note

None

Pull Request

None

backportDecision

None

Components

Affects versions

5.1.0
5.0.9
5.2.1

Priority

Major
Configure