7638 Commits

Author SHA1 Message Date
Steve Ebersole
09cc6d7b00 HHH-14950 - Support mapping of embeddables with no setters (assuming a custom instantiator or repo-strategy is used)
Tests
2021-12-08 17:42:13 -06:00
Steve Ebersole
37bc00e567 HHH-10558 - Add support for java.time.Year;
HHH-13393 - Add support for ZoneId

ZoneOffsetJavaTypeDescriptor was already added
2021-12-08 17:31:02 -06:00
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
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
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
Steve Ebersole
099dd55b94 Tests for checking multiple execution of EmbeddableInitializers 2021-12-06 12:30:10 -06: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
Andrea Boriero
74a395d744 Merge branch 'main' into wip/6.0 2021-12-06 17:39:07 +01:00
Christian Beikov
bab32c3100 Small cleanup and add migration guide sections 2021-12-06 17:21:25 +01:00
Steve Ebersole
9028adc30e Clean up test logging (hibernate-core) 2021-12-06 10:12:25 -06:00