hibernate/hibernate-orm · error · AliasCollisionException
Duplicate identification variable '%s' in 'from' clause [%s%
Error message
Duplicate identification variable '%s' in 'from' clause [%s%s]
What it means
Error "Duplicate identification variable '%s' in 'from' clause [%s%s]" thrown in hibernate/hibernate-orm.
Source
Thrown at hibernate-core/src/main/java/org/hibernate/query/hql/internal/SqmPathRegistryImpl.java:132
}
else if ( sqmFrom instanceof SqmJoin ) {
keyword = first ? "join " : " join ";
}
else {
keyword = first ? "" : ", ";
}
final String path = sqmFrom.getNavigablePath().getLocalName();
final String alias = sqmFrom.getExplicitAlias();
return keyword + (alias == null ? path : path + " as " + alias);
}
@Override
public void registerByAliasOnly(SqmFrom<?, ?> sqmFrom) {
final String alias = sqmFrom.getExplicitAlias();
if ( alias != null ) {
final var previousFrom = sqmFromByAlias.put( handleAliasCaseSensitivity( alias ), sqmFrom );
if ( previousFrom != null ) {
throw new AliasCollisionException(
String.format(
Locale.ENGLISH,
"Duplicate identification variable '%s' in 'from' clause [%s%s]",
alias,
fromPath( previousFrom, true ),
fromPath( sqmFrom, false )
)
);
}
}
}
@Override
public <E> void replace(SqmEntityJoin<?,E> sqmJoin, SqmRoot<E> sqmRoot) {
final String alias = sqmJoin.getExplicitAlias();
if ( alias != null ) {
final var previousFrom = sqmFromByAlias.put( handleAliasCaseSensitivity( alias ), sqmJoin );
if ( previousFrom != null && !( previousFrom instanceof SqmRoot ) ) {View on GitHub (pinned to fad1729dce)
Solutions
- The same identification variable is declared twice in the from clause. Rename one of the aliases so each from-clause element has a unique identification variable.
When it happens
Trigger: The same alias/identification variable is declared twice: Duplicate identification variable '<value>' in 'from' clause [<value><value>]
Common situations: HQL queries reusing an alias in the from/join clauses or a duplicate result alias in the select clause.
AI-assisted analysis of hibernate/hibernate-orm@fad1729dce (2026-08-22).
Data as JSON: /api/errors/d25c4d8bfd470788.
Report an issue: GitHub.