Branch: refs/heads/main
Home:
https://github.com/hibernate/hibernate-orm
Commit: 5ef073779c78ffd8330517fcfcfba0a7f58baec4
https://github.com/hibernate/hibernate-orm/commit/5ef073779c78ffd8330517f...
Author: Gavin King <gavin(a)hibernate.org>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
A
hibernate-core/src/test/java/org/hibernate/orm/test/query/criteria/plan/CriteriaPlanTest.java
Log Message:
-----------
HHH-19391 add test for issue contributed by @theigl
Commit: 1ae3cfdc4821be1dae3ae10fa85ac1dad98c4a0a
https://github.com/hibernate/hibernate-orm/commit/1ae3cfdc4821be1dae3ae10...
Author: Gavin King <gavin(a)hibernate.org>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M
hibernate-core/src/main/java/org/hibernate/dialect/function/array/H2UnnestFunction.java
M
hibernate-core/src/main/java/org/hibernate/metamodel/model/domain/internal/AnyDiscriminatorSqmPath.java
M
hibernate-core/src/main/java/org/hibernate/metamodel/model/domain/internal/EmbeddedDiscriminatorSqmPath.java
M
hibernate-core/src/main/java/org/hibernate/metamodel/model/domain/internal/EntityDiscriminatorSqmPath.java
M hibernate-core/src/main/java/org/hibernate/query/hql/internal/QuerySplitter.java
M
hibernate-core/src/main/java/org/hibernate/query/hql/internal/SemanticQueryBuilder.java
M
hibernate-core/src/main/java/org/hibernate/query/hql/internal/SqmTreeCreationHelper.java
M
hibernate-core/src/main/java/org/hibernate/query/internal/QueryParameterBindingsImpl.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/function/SelfRenderingSqmFunction.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/function/SelfRenderingSqmOrderedSetAggregateFunction.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/internal/SimpleSqmRenderContext.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/internal/SqmCriteriaNodeBuilder.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/internal/SqmQueryImpl.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/internal/SqmSelectionQueryImpl.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/mutation/internal/SelectableMappingExpressionConverter.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/spi/SqmCreationHelper.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/AbstractSqmDmlStatement.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/AbstractSqmRestrictedDmlStatement.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/AbstractSqmStatement.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/SqmQuery.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/cte/SqmCteStatement.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/cte/SqmCteTable.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/delete/SqmDeleteStatement.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/AbstractSqmAttributeJoin.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/AbstractSqmFrom.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/AbstractSqmJoin.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/AbstractSqmPath.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/AbstractSqmSimplePath.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmCteRoot.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmDerivedRoot.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmElementAggregateFunction.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmFkExpression.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmFunctionPath.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmFunctionRoot.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmIndexAggregateFunction.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmIndexedCollectionAccessPath.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmMapEntryReference.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmTreatedBagJoin.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmTreatedCrossJoin.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmTreatedEmbeddedValuedSimplePath.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmTreatedEntityJoin.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmTreatedEntityValuedSimplePath.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmTreatedListJoin.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmTreatedMapJoin.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmTreatedPluralPartJoin.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmTreatedRoot.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmTreatedSetJoin.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmTreatedSimplePath.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmTreatedSingularJoin.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/AsWrapperSqmExpression.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/JpaCriteriaParameter.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmAliasedNodeRef.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmAny.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmAnyDiscriminatorValue.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmBinaryArithmetic.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmByUnit.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmCaseSearched.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmCaseSimple.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmCastTarget.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmCoalesce.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmCollectionSize.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmDistinct.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmDurationUnit.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmEvery.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmFieldLiteral.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmFunction.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmHqlNumericLiteral.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmJpaCriteriaParameterWrapper.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmJsonExistsExpression.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmLiteral.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmLiteralEmbeddableType.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmLiteralEntityType.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmLiteralNull.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmModifiedSubQueryExpression.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmNamedExpression.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmNamedParameter.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmOver.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmOverflow.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmParameter.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmParameterizedEntityType.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmPositionalParameter.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmSelfRenderingExpression.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmSetReturningFunction.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmStar.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmSummarization.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmToDuration.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmTrimSpecification.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmTuple.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmUnaryOperation.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmWindow.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/ValueBindJpaCriteriaParameter.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/from/SqmCrossJoin.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/from/SqmCteJoin.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/from/SqmDerivedJoin.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/from/SqmEntityJoin.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/from/SqmFrom.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/from/SqmFromClause.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/from/SqmFunctionJoin.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/from/SqmRoot.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/insert/SqmConflictClause.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/insert/SqmInsertSelectStatement.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/insert/SqmInsertValuesStatement.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/predicate/AbstractNegatableSqmPredicate.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/predicate/SqmBetweenPredicate.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/predicate/SqmBooleanExpressionPredicate.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/predicate/SqmComparisonPredicate.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/predicate/SqmEmptinessPredicate.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/predicate/SqmExistsPredicate.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/predicate/SqmGroupedPredicate.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/predicate/SqmInListPredicate.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/predicate/SqmInSubQueryPredicate.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/predicate/SqmJunctionPredicate.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/predicate/SqmLikePredicate.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/predicate/SqmMemberOfPredicate.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/predicate/SqmNegatedPredicate.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/predicate/SqmNullnessPredicate.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/predicate/SqmTruthnessPredicate.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/predicate/SqmWhereClause.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/select/AbstractSqmSelectQuery.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/select/SqmDynamicInstantiation.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/select/SqmDynamicInstantiationArgument.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/select/SqmJpaCompoundSelection.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/select/SqmOrderByClause.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/select/SqmQueryGroup.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/select/SqmQueryPart.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/select/SqmQuerySpec.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/select/SqmSelectClause.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/select/SqmSelectStatement.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/select/SqmSelection.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/select/SqmSortSpecification.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/select/SqmSubQuery.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/update/SqmUpdateStatement.java
M
hibernate-core/src/main/java/org/hibernate/sql/exec/internal/JdbcParameterBindingsImpl.java
M
hibernate-core/src/test/java/org/hibernate/orm/test/querycache/AbstractQueryCacheResultTransformerTest.java
Log Message:
-----------
HHH-17002, HHH-18820, HHH-19391, HHH-18514 equals() and hashCode() for SQM nodes
- finally enables efficient caching of criteria query plans
- also reconsider how alias generation is done - aliases should only
be unique to a given query, NOT globally unique, since that results
in interpretation cache misses
- ran into and fixed several other problems along the way
- note that the previous solution based on translating to HQL was not
working at all, partly because the translation to HQL is not very
correct - but anyway this is more efficient, since hashCodes are
in general more flexible from an efficiency perspective
- there is still a remaining problem where NavigablePaths elements
are assigned globally unique aliases resulting in cache misses
Commit: 5145400f0e1f0214b058922d0b97efa132fcea8d
https://github.com/hibernate/hibernate-orm/commit/5145400f0e1f0214b058922...
Author: Gavin King <gavin(a)hibernate.org>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/JpaCriteriaParameter.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmJpaCriteriaParameterWrapper.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmNamedParameter.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmParameter.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmPositionalParameter.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/ValueBindJpaCriteriaParameter.java
Log Message:
-----------
fix some unnecessary use of raw types
Commit: 3a1dabfdef68199a7ab2141fd2af4959745be1ab
https://github.com/hibernate/hibernate-orm/commit/3a1dabfdef68199a7ab2141...
Author: Gavin King <gavin(a)hibernate.org>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M hibernate-core/src/main/java/org/hibernate/query/criteria/JpaCteContainer.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/AbstractSqmDmlStatement.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/select/AbstractSqmSelectQuery.java
Log Message:
-----------
HHH-17002, HHH-18820, HHH-19391, HHH-18514 deal with anonymous CTE problem
- just deprecate the method, since HQL doesn't allow anonymous CTEs
- perhaps we need to do the same for the withRescursiveXxxxx() methods
- I don't really see a better fix, since nested CTEs can be composed
before composing them with the outer query (perhaps we could modify
the aliases of all CTEs after the whole query is built)
Commit: 06e3dbf8ef80f71c47a3969469abcc7aed065e99
https://github.com/hibernate/hibernate-orm/commit/06e3dbf8ef80f71c47a3969...
Author: Gavin King <gavin(a)hibernate.org>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/AbstractSqmStatement.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/select/SqmSelectStatement.java
Log Message:
-----------
HHH-17002, HHH-18820, HHH-19391, HHH-18514 fix generated aliases
Oracle disapproves of aliases of form "_1"
Commit: db5357db792f744971c42e74078ef51ef363e7ed
https://github.com/hibernate/hibernate-orm/commit/db5357db792f744971c42e7...
Author: Gavin King <gavin(a)hibernate.org>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/AsWrapperSqmExpression.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/expression/SqmSelfRenderingExpression.java
Log Message:
-----------
HHH-17002, HHH-18820, HHH-19391, HHH-18514 apply feedback from @beikov
Commit: 16b7592d4be93080de2eab263f6f2adf9631032d
https://github.com/hibernate/hibernate-orm/commit/16b7592d4be93080de2eab2...
Author: Gavin King <gavin(a)hibernate.org>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/AbstractSqmJoin.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/from/SqmFromClause.java
Log Message:
-----------
HHH-17002, HHH-18820, HHH-19391, HHH-18514 add comments explaining an important point
Commit: 518ddb7785231c9513494081e795d4fb6e109e64
https://github.com/hibernate/hibernate-orm/commit/518ddb7785231c951349408...
Author: Gavin King <gavin(a)hibernate.org>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/AbstractSqmStatement.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/AbstractSqmAttributeJoin.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/AbstractSqmFrom.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/select/SqmSelectStatement.java
Log Message:
-----------
HHH-17002, HHH-18820, HHH-19391, HHH-18514 standardize on var_ prefix and reenable a
check
Compare:
https://github.com/hibernate/hibernate-orm/compare/106200b7f3a7...518ddb7...
To unsubscribe from these emails, change your notification settings at
https://github.com/hibernate/hibernate-orm/settings/notifications