13031 Commits

Author SHA1 Message Date
Gavin King
61cba87096 fix the signature of Session.merge()
previously Session.merge() erased the generic type parameter
inherited from the supertype, obligating the client code to
perform a typecast
2021-12-08 17:01:21 -05:00
Steve Ebersole
942dd7283f DialectVersion
- rename `#isSince` to `#isSameOrAfter`
2021-12-08 15:54:50 -06:00
Steve Ebersole
10d759e139 Dialect version 2021-12-08 15:36:48 -06:00
Steve Ebersole
d354d49ab1 added DatabaseVersion#getCanonicalVersion 2021-12-08 15:07:30 -06:00
Steve Ebersole
43206b02fc initial work on DatabaseVersion#isAfter 2021-12-08 15:07:30 -06:00
Steve Ebersole
ad48a01e2c Fix PropertyBinder to use HCANNHelper to resolve meta-annotations 2021-12-08 14:54:13 -06:00
Steve Ebersole
848c9f0914 HHH-14497 - Drop legacy id-generator settings;
HHH-14718 - Drop deprecated generator implementations;
HHH-14959 - Drop IdentifierGeneratorFactory as a Service;
HHH-14960 - Add @GeneratorType for better custom generator config;
HHH-14496 - Deprecate (or drop) IdGeneratorStrategyInterpreter;
HHH-14961 - Deprecate (or drop) IdentifierGeneratorStrategyProvider;
HHH-14962 - Delay actual creation of IdentifierGenerator instances as late as possible

Add `GenerationTypeStrategy` and `GenerationTypeStrategyRegistration`;
deprecate org.hibernate.jpa.spi.IdentifierGeneratorStrategyProvider
2021-12-08 14:35:09 -06:00
Steve Ebersole
3c97ac2077 HHH-14497 - Drop legacy id-generator settings;
HHH-14718 - Drop deprecated generator implementations;
HHH-14959 - Drop IdentifierGeneratorFactory as a Service;
HHH-14960 - Add @GeneratorType for better custom generator config

Fixed CustomGeneratorTests failure on databases which do not support sequences
2021-12-08 14:35:09 -06:00
Steve Ebersole
1e8f6f9bbd HHH-14497 - Drop legacy id-generator settings;
HHH-14718 - Drop deprecated generator implementations;
HHH-14959 - Drop IdentifierGeneratorFactory as a Service;
HHH-14960 - Add @GeneratorType for better custom generator config

org.hibernate.id.factory.spi.StandardGenerator
2021-12-08 14:35:09 -06:00
Steve Ebersole
c5ad9e129e HHH-14497 - Drop legacy id-generator settings;
HHH-14718 - Drop deprecated generator implementations;
HHH-14959 - Drop IdentifierGeneratorFactory as a Service;
HHH-14960 - Add @GeneratorType for better custom generator config
2021-12-08 14:35:09 -06:00
Steve Ebersole
ce4f22f400 HHH-14497 - Drop legacy id-generator settings;
HHH-14718 - Drop deprecated generator implementations;
HHH-14959 - Drop IdentifierGeneratorFactory as a Service;
HHH-14960 - Add @GeneratorType for better custom generator config
2021-12-08 14:35:09 -06:00
Steve Ebersole
c394261508 HHH-14497 - Drop legacy id-generator settings;
HHH-14718 - Drop deprecated generator implementations;
HHH-14959 - Drop IdentifierGeneratorFactory as a Service
2021-12-08 14:35:02 -06:00
Gavin King
365aa58254 add two new annotations to the list in Annotations.adoc 2021-12-08 08:44:09 -05:00
Gavin King
ce3644e81d add a wildcard to generic type
and slightly improve javadoc
2021-12-08 08:44:09 -05:00
Gavin King
13983e1449 detect the MultiTenantConnectionProvider when registered as a service
instead of looking at the property
2021-12-08 08:44:09 -05:00
Gavin King
6d43d62a5a fix test fallout from rebase
update test to jakarta package name
and refix moved tests
2021-12-08 08:44:09 -05:00
Gavin King
8f7e0c4c2f HHH-6054 introduce notion of a "root" tenant 2021-12-08 08:44:09 -05:00
Gavin King
47d0b1265f improve the test for tenant ids 2021-12-08 08:44:09 -05:00
Gavin King
341eb413f0 clean up PropertyBinder a bit 2021-12-08 08:44:09 -05:00
Gavin King
2a2bf17f8f redefine AttributeAccessor in terms of the new AttributeBinder API 2021-12-08 08:44:09 -05:00
Gavin King
5837a60e71 HHH-6054 introduce AttributeBinder and @AttributeBinderType
and introduce TenantIdBinder on top of this stuff
also make @TenantId imply non-null, immutable
2021-12-08 08:44:09 -05:00
Gavin King
ea0dd35362 HHH-6054 improve error checking 2021-12-08 08:44:09 -05:00
Gavin King
8af548b52d HHH-6054 allow ValueGenerator to inspect current value of property
use this to throw exception from TenantIdGeneration
2021-12-08 08:44:09 -05:00
Gavin King
6f0676cf96 HHH-6054 add docs for @TenantId 2021-12-08 08:44:09 -05:00
Gavin King
505bea6ffd HHH-6054 support for discriminator-based multitenancy
added the @TenantId annotation
also allow @TenantId @Formula
2021-12-08 08:44:09 -05:00
gavin
b2e6965577 remove MultiTenancyStrategy
Use the existence of a MultiTenantConnectionProvider to infer that multitenancy is enabled.
2021-12-08 08:44:09 -05:00
Steve Ebersole
915da5228d HHH-14497 - Drop legacy id-generator settings;
HHH-14718 - Drop deprecated generator implementations
2021-12-07 11:12:44 -06:00
Andrea Boriero
189bc54dbd Fix EntityEntry loaded state for persistent arrays 2021-12-07 16:30:57 +01:00
Christian Beikov
6c4ec95182 * Cleanup temporary table handling in dialects
* Fix insert handling with respect to version, discriminator and generated identifier insertion
* Introduce SqmMultiTableInsertStrategy to handle multi-table inserts
* Introduce the notion of an "entity table" similar to the "id table" to handle multi-table insertions
* Implement table based and cte based multi-table insertion to support all dialects
* Implement identifier generator optimizer support for multi-table insert
* Fix validation of insert target paths against select item types
* Fix some DML validations
* Implement over-clause support in SQL AST
* Fix multi-valued filter parameter support
2021-12-07 15:54:01 +01:00
Andrea Boriero
c959c7656c Fix IdentifiableType#getId(Class<Y> type) failing for primitive types 2021-12-07 12:49:10 +01:00
Yoann Rodière
37d3b66ce4 HHH-14922 Give precedence to default catalog/schema over implicit catalog/schema 2021-12-07 08:25:50 +01:00
Yoann Rodière
30e3aa4e7f HHH-14922 Delay applying the implicit catalog/schema until schema management tool or session factory creation
This is necessary if we want the default catalog/schema to take
precedence, since the default catalog/schema is applied late,
on schema management tool or session factory creation.
2021-12-07 08:25:50 +01:00
Yoann Rodière
8f1d1c43ce HHH-14922 Test behavior when setting both implicit catalog/schema and default catalog/schema 2021-12-07 08:25:50 +01:00
Yoann Rodière
aafacbec47 HHH-14921 Test handling of default catalog and schema when not configured during metadata creation 2021-12-07 08:25:50 +01:00
Yoann Rodière
944c90061a HHH-14921 Test handling of default catalog and schema 2021-12-07 08:25:50 +01:00
Yoann Rodière
4d5306a82d HHH-14921 Delay determination of the default catalog/schema until schema management tool or session factory creation 2021-12-07 08:25:50 +01:00
Yoann Rodière
495bd51caa HHH-14921 Always use SqlStringGenerationContext for generation of SQL strings involving table/sequence names 2021-12-07 08:25:50 +01:00
Yoann Rodière
b6f833441a HHH-14921 Delay generation of SQL strings by identifier generators until schema export or session factory creation 2021-12-07 08:25:50 +01:00
Yoann Rodière
0c644fa16d HHH-14921 Remove unused method PersistentIdentifierGenerator#generatorKey 2021-12-07 08:25:50 +01:00
Yoann Rodière
16524e2f67 HHH-14921 Remove a few unused SQL generation methods in identifier generators
They are getting in the way of changes related to the default schema
2021-12-07 08:25:50 +01:00
Yoann Rodière
cc13379c77 HHH-14921 Clarify that org.hibernate.mapping.AuxiliaryDatabaseObject has been replaced with org.hibernate.boot.model.relational.AuxiliaryDatabaseObject 2021-12-07 08:25:50 +01:00
Yoann Rodière
012bcd1cfb HHH-14921 Clarify the ability of IdentifierGenerator to be configured and to register exportables 2021-12-07 08:25:50 +01:00
Christian Beikov
05d536d345 Polishing: fix wrong variable name 2021-12-06 20:29:59 +01:00
Christian Beikov
e1a976bce0 HHH-14211 Switch to using oid for CLOB in PostgreSQL to avoid losing data after vacuumlo 2021-12-06 20:27:55 +01:00
Steve Ebersole
0f46ee2466 Tests for checking multiple execution of EmbeddableInitializers 2021-12-06 13:26:48 -06:00
Christian Beikov
44cb271030 Disable charset client handshake for MySQL and MariaDB 2021-12-06 20:17:10 +01:00
Steve Ebersole
099dd55b94 Tests for checking multiple execution of EmbeddableInitializers 2021-12-06 12:30:10 -06:00
Christian Beikov
7d30b57f15 Get rid of wip/6.0 mention 2021-12-06 18:56:13 +01:00
Andrea Boriero
07155b7993 Merge remote-tracking branch 'upstream/main' into wip/6.0 2021-12-06 17:56:17 +01:00
Andrea Boriero
acc870ea14 Merge branch 'wip/6.0' of https://github.com/hibernate/hibernate-orm into wip/6.0 2021-12-06 17:46:12 +01:00