Branch: refs/heads/wip/6.0
Home:
https://github.com/hibernate/hibernate-orm
Commit: cbcec73d4fa4ca0845d0f8ca620dcdc02cd91b17
https://github.com/hibernate/hibernate-orm/commit/cbcec73d4fa4ca0845d0f8c...
Author: Christian Beikov <christian.beikov(a)gmail.com>
Date: 2021-11-25 (Thu, 25 Nov 2021)
Changed paths:
M docker_db.sh
M
hibernate-community-dialects/src/main/java/org/hibernate/community/dialect/FirebirdDialect.java
M
hibernate-community-dialects/src/main/java/org/hibernate/community/dialect/InformixDialect.java
M
hibernate-community-dialects/src/main/java/org/hibernate/community/dialect/IngresDialect.java
M
hibernate-community-dialects/src/main/java/org/hibernate/community/dialect/TeradataDialect.java
M
hibernate-community-dialects/src/main/java/org/hibernate/community/dialect/TimesTenDialect.java
M hibernate-core/src/main/antlr/org/hibernate/grammars/hql/HqlLexer.g4
M hibernate-core/src/main/antlr/org/hibernate/grammars/hql/HqlParser.g4
M hibernate-core/src/main/antlr/org/hibernate/grammars/ordering/OrderingLexer.g4
M hibernate-core/src/main/antlr/org/hibernate/grammars/ordering/OrderingParser.g4
M hibernate-core/src/main/java/org/hibernate/boot/model/naming/Identifier.java
M hibernate-core/src/main/java/org/hibernate/dialect/AbstractTransactSQLDialect.java
M hibernate-core/src/main/java/org/hibernate/dialect/DB2Dialect.java
M hibernate-core/src/main/java/org/hibernate/dialect/DerbyDialect.java
M hibernate-core/src/main/java/org/hibernate/dialect/Dialect.java
M hibernate-core/src/main/java/org/hibernate/dialect/H2Dialect.java
M hibernate-core/src/main/java/org/hibernate/dialect/HANAColumnStoreDialect.java
M hibernate-core/src/main/java/org/hibernate/dialect/HANARowStoreDialect.java
M hibernate-core/src/main/java/org/hibernate/dialect/HSQLDialect.java
M hibernate-core/src/main/java/org/hibernate/dialect/MySQLDialect.java
M hibernate-core/src/main/java/org/hibernate/dialect/OracleDialect.java
M hibernate-core/src/main/java/org/hibernate/dialect/SQLServerDialect.java
M hibernate-core/src/main/java/org/hibernate/dialect/SybaseASESqlAstTranslator.java
M hibernate-core/src/main/java/org/hibernate/dialect/SybaseDialect.java
A hibernate-core/src/main/java/org/hibernate/dialect/function/AvgFunction.java
M
hibernate-core/src/main/java/org/hibernate/dialect/function/CommonFunctionFactory.java
M hibernate-core/src/main/java/org/hibernate/dialect/function/CountFunction.java
M hibernate-core/src/main/java/org/hibernate/dialect/function/CurrentFunction.java
M
hibernate-core/src/main/java/org/hibernate/engine/jdbc/env/internal/NormalizingIdentifierHelperImpl.java
A hibernate-core/src/main/java/org/hibernate/internal/util/QuotingHelper.java
M
hibernate-core/src/main/java/org/hibernate/internal/util/collections/ArrayHelper.java
M
hibernate-core/src/main/java/org/hibernate/loader/ast/internal/LoaderSelectBuilder.java
M hibernate-core/src/main/java/org/hibernate/mapping/PersistentClass.java
M hibernate-core/src/main/java/org/hibernate/metamodel/mapping/CollectionPart.java
M
hibernate-core/src/main/java/org/hibernate/metamodel/mapping/MappingModelHelper.java
M
hibernate-core/src/main/java/org/hibernate/metamodel/mapping/internal/AbstractDomainPath.java
M
hibernate-core/src/main/java/org/hibernate/metamodel/mapping/internal/DiscriminatedAssociationAttributeMapping.java
M
hibernate-core/src/main/java/org/hibernate/metamodel/mapping/internal/DiscriminatedCollectionPart.java
M
hibernate-core/src/main/java/org/hibernate/metamodel/mapping/internal/EmbeddedCollectionPart.java
M
hibernate-core/src/main/java/org/hibernate/metamodel/mapping/internal/EntityCollectionPart.java
M
hibernate-core/src/main/java/org/hibernate/metamodel/mapping/internal/MappingModelCreationProcess.java
M
hibernate-core/src/main/java/org/hibernate/metamodel/mapping/internal/PluralAttributeMappingImpl.java
M
hibernate-core/src/main/java/org/hibernate/metamodel/mapping/ordering/TranslationContext.java
M
hibernate-core/src/main/java/org/hibernate/metamodel/mapping/ordering/ast/CollectionPartPath.java
M
hibernate-core/src/main/java/org/hibernate/metamodel/mapping/ordering/ast/ColumnReference.java
M
hibernate-core/src/main/java/org/hibernate/metamodel/mapping/ordering/ast/DomainPathContinuation.java
M
hibernate-core/src/main/java/org/hibernate/metamodel/mapping/ordering/ast/FkDomainPathContinuation.java
M
hibernate-core/src/main/java/org/hibernate/metamodel/mapping/ordering/ast/OrderingSpecification.java
M
hibernate-core/src/main/java/org/hibernate/metamodel/mapping/ordering/ast/ParseTreeVisitor.java
M
hibernate-core/src/main/java/org/hibernate/metamodel/mapping/ordering/ast/PathConsumer.java
M
hibernate-core/src/main/java/org/hibernate/metamodel/mapping/ordering/ast/PluralAttributePath.java
M
hibernate-core/src/main/java/org/hibernate/metamodel/mapping/ordering/ast/RootSequencePart.java
A
hibernate-core/src/main/java/org/hibernate/metamodel/mapping/ordering/ast/SelfRenderingOrderingExpression.java
M
hibernate-core/src/main/java/org/hibernate/metamodel/mapping/ordering/ast/SequencePart.java
M
hibernate-core/src/main/java/org/hibernate/metamodel/model/domain/internal/AnyMappingSqmPathSource.java
M
hibernate-core/src/main/java/org/hibernate/metamodel/model/domain/internal/DiscriminatorSqmPath.java
M
hibernate-core/src/main/java/org/hibernate/metamodel/model/domain/internal/JpaMetamodelImpl.java
R
hibernate-core/src/main/java/org/hibernate/persister/collection/CollectionPropertyNames.java
M
hibernate-core/src/main/java/org/hibernate/persister/entity/AbstractEntityPersister.java
M
hibernate-core/src/main/java/org/hibernate/persister/entity/SingleTableEntityPersister.java
M
hibernate-core/src/main/java/org/hibernate/query/hql/internal/BasicDotIdentifierConsumer.java
M hibernate-core/src/main/java/org/hibernate/query/hql/internal/DomainPathPart.java
M
hibernate-core/src/main/java/org/hibernate/query/hql/internal/QualifiedJoinPathConsumer.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/SqmPathRegistryImpl.java
M hibernate-core/src/main/java/org/hibernate/query/hql/spi/SqmPathRegistry.java
M hibernate-core/src/main/java/org/hibernate/query/internal/QueryHelper.java
M
hibernate-core/src/main/java/org/hibernate/query/internal/QueryParameterBindingsImpl.java
M hibernate-core/src/main/java/org/hibernate/query/results/ResultSetMappingImpl.java
M
hibernate-core/src/main/java/org/hibernate/query/results/complete/CompleteResultBuilderBasicValuedStandard.java
M
hibernate-core/src/main/java/org/hibernate/query/results/dynamic/DynamicFetchBuilder.java
M
hibernate-core/src/main/java/org/hibernate/query/results/dynamic/DynamicFetchBuilderLegacy.java
M
hibernate-core/src/main/java/org/hibernate/query/results/dynamic/DynamicFetchBuilderStandard.java
M
hibernate-core/src/main/java/org/hibernate/query/results/dynamic/DynamicResultBuilderBasicConverted.java
M
hibernate-core/src/main/java/org/hibernate/query/results/dynamic/DynamicResultBuilderBasicStandard.java
M
hibernate-core/src/main/java/org/hibernate/query/results/dynamic/DynamicResultBuilderEntityStandard.java
M
hibernate-core/src/main/java/org/hibernate/query/results/implicit/ImplicitFetchBuilderEmbeddable.java
M hibernate-core/src/main/java/org/hibernate/query/spi/AbstractQuery.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/StrictJpaComplianceViolation.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/function/SelfRenderingSqmFunction.java
A
hibernate-core/src/main/java/org/hibernate/query/sqm/internal/AggregatedNonSelectQueryPlanImpl.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/internal/AggregatedSelectQueryPlanImpl.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/internal/ConcreteSqmSelectQueryPlan.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/internal/QuerySqmImpl.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/mutation/internal/MatchingIdSelectionHelper.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/mutation/internal/MultiTableSqmMutationConverter.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/mutation/internal/SqmMutationStrategyHelper.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/mutation/internal/cte/AbstractCteMutationHandler.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/mutation/internal/idtable/ExecuteWithIdTableHelper.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/mutation/internal/idtable/IdTable.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/mutation/internal/idtable/RestrictedDeleteExecutionDelegate.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/mutation/internal/idtable/TableBasedUpdateHandler.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/mutation/internal/idtable/TempIdTableExporter.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/mutation/internal/inline/InlineDeleteHandler.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/spi/SqmCreationHelper.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/sql/BaseSqmToSqlAstConverter.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/sql/internal/EntityValuedPathInterpretation.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/NonAggregatedCompositeSimplePath.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmAnyValuedSimplePath.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmBasicValuedSimplePath.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmCorrelatedRoot.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmEmbeddedValuedSimplePath.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmEntityValuedSimplePath.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/SqmMaxElementPath.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmMaxIndexPath.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmMinElementPath.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmMinIndexPath.java
M hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmPath.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/domain/SqmPluralValuedSimplePath.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/from/SqmFrom.java
M
hibernate-core/src/main/java/org/hibernate/query/sqm/tree/jpa/ParameterCollector.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/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/result/internal/OutputsImpl.java
M
hibernate-core/src/main/java/org/hibernate/sql/ast/spi/AbstractSqlAstTranslator.java
M hibernate-core/src/main/java/org/hibernate/sql/ast/tree/delete/DeleteStatement.java
M
hibernate-core/src/main/java/org/hibernate/sql/ast/tree/predicate/ExistsPredicate.java
M
hibernate-core/src/main/java/org/hibernate/sql/exec/internal/JdbcSelectExecutorStandardImpl.java
M
hibernate-core/src/main/java/org/hibernate/sql/results/caching/internal/QueryCachePutManagerEnabledImpl.java
M
hibernate-core/src/main/java/org/hibernate/sql/results/graph/instantiation/internal/DynamicInstantiation.java
M
hibernate-core/src/main/java/org/hibernate/sql/results/jdbc/internal/JdbcValuesCacheHit.java
M
hibernate-core/src/main/java/org/hibernate/sql/results/jdbc/internal/JdbcValuesResultSetImpl.java
M
hibernate-core/src/main/java/org/hibernate/sql/results/jdbc/internal/ResultSetAccess.java
M
hibernate-core/src/main/java/org/hibernate/sql/results/jdbc/spi/JdbcValuesMetadata.java
M
hibernate-core/src/main/java/org/hibernate/type/descriptor/java/BigDecimalJavaTypeDescriptor.java
M
hibernate-core/src/main/java/org/hibernate/type/descriptor/java/BigIntegerJavaTypeDescriptor.java
M
hibernate-core/src/main/java/org/hibernate/type/descriptor/java/DoubleJavaTypeDescriptor.java
M
hibernate-core/src/main/java/org/hibernate/type/descriptor/java/FloatTypeDescriptor.java
M
hibernate-core/src/main/java/org/hibernate/type/descriptor/java/IntegerJavaTypeDescriptor.java
M hibernate-core/src/main/java/org/hibernate/type/descriptor/java/JavaType.java
M
hibernate-core/src/main/java/org/hibernate/type/descriptor/java/LongJavaTypeDescriptor.java
M
hibernate-core/src/main/java/org/hibernate/type/descriptor/java/ShortJavaTypeDescriptor.java
M
hibernate-core/src/main/java/org/hibernate/type/descriptor/java/StringJavaTypeDescriptor.java
A hibernate-core/src/test/java/org/hibernate/orm/test/hql/QuotedIdentifierTest.java
M
hibernate-core/src/test/java/org/hibernate/orm/test/mapping/generated/temporals/ProposedGeneratedTests.java
M
hibernate-core/src/test/java/org/hibernate/orm/test/mapping/manytomany/ManyToManyHqlMemberOfQueryTest.java
M
hibernate-core/src/test/java/org/hibernate/orm/test/mapping/onetomany/OneToManyBidirectionalTest.java
M
hibernate-core/src/test/java/org/hibernate/orm/test/mapping/onetomany/OneToManyHqlMemberOfQueryTest.java
M
hibernate-core/src/test/java/org/hibernate/orm/test/query/hql/InsertUpdateTests.java
M
hibernate-core/src/test/java/org/hibernate/test/annotations/query/QueryAndSQLTest.java
M hibernate-core/src/test/java/org/hibernate/test/hql/ASTParserLoadingTest.java
M hibernate-core/src/test/java/org/hibernate/test/hql/BulkManipulationTest.java
M hibernate-core/src/test/java/org/hibernate/test/hql/FunctionNameAsColumnTest.java
M
hibernate-core/src/test/java/org/hibernate/test/hql/size/WhereClauseOrderBySizeTest.java
M
hibernate-core/src/test/java/org/hibernate/test/hql/size/filter/WhereAnnotatedOneToManySizeTest.java
M migration-guide.adoc
Log Message:
-----------
* Handle quoted identifiers in HQL and the Ordering parser
* Switch from the "expression" to "expressionOrPredicate" rule in the
HQL grammar where it makes sense as required by some HQL tests
* Cleanup parser rule ordering to allow more keywords in the identifier rule
* Implement literal support for Ordering parser
* Add special AvgFunction as needed by H2, HSQL, DB2, SQL Server and Sybase that casts
arguments to double if necessary
* Fix wrong deduplication of order by fragments in case a plural attribute is fetched
multiple times
* Implement support for de-referencing any-valued mappings in HQL
* Avoid unnecessary entity subtypes in polymorphic splitted queries if a base type also
matches the requested type
* Implement pagination support for polymorphic splitted queries
* Cleanup path part resolving by removing lots of duplicate code
* Aligh HQL parsing expectations to the expected behavior of 5.x
* Add method to `JavaType` that allows determining if a type is can be widened to another
which is used for arithmetic type resolving
* Implement validations for fetch owner checking
* Fix issues with the id table creation due to lacking column lengths in the column DDL
type
* Fix issues and add some optimizations related to multi-table delete handling
* Add the notion of a special "implicit" alias to avoid generating a unique
alias for unaliased or implicit HQL joins
* Properly implement multiple bag fetch validation
* Make sure filter predicates are applied for all plural attribute joins
* Fix some issues with undecidable parameter type inference
* Fix some issues with negated SQM predicates not being converted to the proper SQL AST
predicates
* Fix issues with qualifying DML target referencing columns
* Fix `is null` semantics for tuples referring to embeddable types
* Capture necessary details from JdbcValuesMetadata in the cached data to avoid executing
a query on cache hit when types should be inferred
* Get rid of special CollectionPropertyNames and writeup a migration guide section for the
replacements