Commit Graph

12263 Commits

Author SHA1 Message Date
Marco Belladelli 1a0b582823 HHH-18272 Add test for issue 2024-07-04 16:50:14 +02:00
Sanne Grinovero 5a052bafc9 HHH-18108 Avoid applying the ClassTransformer on types we will be loading 2024-07-02 16:45:05 +02:00
Gavin King c1624dce98 minor code style improvements to ConnectionProviders
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-27 19:49:12 +02:00
Gavin King 05dc7b2612 clean up some imports
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-27 17:21:47 +02:00
Yoann Rodière 332b69ede2 HHH-18296 Test that we don't log warnings when "DROP IF EXISTS" is executed on postgres 2024-06-26 15:44:20 +02:00
Gavin King 3708e56aa2 HHH-18296 skip two fragile and not-extremely-useful tests on Postgres
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-26 15:44:20 +02:00
Gavin King ad55fd0010 HHH-18296 call set client_min_messages = WARNING before dropping tables on Postgres
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-26 15:44:20 +02:00
Gavin King 1b25f8c6ea eliminate unnecessary dupe method call
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-26 11:54:56 +02:00
Gavin King 93ec580fad make use of Length constants in Dialects instead of Integer.MAX_VALUE
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-26 11:54:56 +02:00
Gavin King d4593b00ce very minor
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-25 23:03:55 +02:00
Gavin King 5645b3440a HHH-18301 DB2 LUW supports DROP TABLE IF EXISTS since 11.5
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-25 23:03:55 +02:00
Gavin King f947927234 HHH-18288 @Index specified by subclass in SINGLE_TABLE inheritance
I'm definitely not a fan of @Table annotations on subclasses in SINGLE_TABLE
hierarchies. However, unfortunately we've already decided to tolerate it.

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-21 11:55:20 +02:00
Gavin King 2b62eaa058 HHH-18158, HHH-18251, HHH-18062 fix composite id handling
by rolling back HHH-15184

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-14 15:34:06 +02:00
Marco Belladelli b3d01730ce HHH-18259 Fix check for generated properties for root table only 2024-06-14 10:22:28 +02:00
Marco Belladelli 24dd943c7b HHH-18259 Add test for issue 2024-06-14 10:22:28 +02:00
Dmitry Kryukov d53c9aa7cd HHH-18118 fixed comparison of class field with itself 2024-06-14 09:33:36 +02:00
Dmitry Kryukov ebaba54a83 HHH-18122 removed check of the arg type for private classes 2024-06-14 09:28:59 +02:00
Dmitry Kryukov 2b965f6c65 HHH-18122 added check of the arg type into equals() 2024-06-14 09:28:59 +02:00
Marco Belladelli 638466fa8c
HHH-18212 Small cleanups to transient check logic 2024-06-14 09:23:09 +02:00
Gavin King 8686392afe clean up logic in CHECK_ON_FLUSH
so that it's more readable/understandable

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-13 23:39:29 +02:00
Gavin King 6f58c5e2f6 minor cleanups in Dialect
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-13 23:39:29 +02:00
Gavin King 505e64b19a HHH-18016 change ArgumentTypesValidator to delegate to the JdbcType
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-13 21:59:53 +02:00
Marco Belladelli 27bbdfc839 HHH-18212 Setting to control transient check strictness for unowned associations 2024-06-13 18:06:09 +02:00
Marco Belladelli 055570c8af HHH-18212 Fix transient check for entities deleted during the same flush 2024-06-13 18:06:09 +02:00
Marco Belladelli 52a539d727 HHH-18212 Add test for issue 2024-06-13 18:06:09 +02:00
Andrea Boriero a567226a72 HHH-17956 Criteria multiselect ignores type of the criteria query and always returns list of Object[] 2024-06-13 11:21:54 +02:00
Andrea Boriero f5062b2aef HHH-17956 Add test for issue 2024-06-13 11:21:54 +02:00
Jan Schatteman 9c4baed5ae HHH-10162 - Add test
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2024-06-13 10:18:14 +02:00
Jan Schatteman 9da230a616 HHH-12885 - Add test
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2024-06-13 10:18:14 +02:00
Jan Schatteman 223328ff2f HHH-12752 - Add test
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2024-06-13 10:18:14 +02:00
Marco Belladelli 2772a9d6fb HHH-18218 - Fix possible null pointer 2024-06-12 16:15:28 +02:00
Cedomir Igaly 4c8e72c5ec HHH-18218 - Improved type resolving when tuple element implements SqmExpressibleAccessor 2024-06-12 16:05:27 +02:00
Cedomir Igaly 9e13bd0c48 HHH-18218 - Added test case not using explicit constructor new ConstructorDto(...) 2024-06-12 16:05:27 +02:00
LLEFEVRE c2d0763b64 HHH-18220 Detect if Application Continuity is enabled for Oracle dialect 2024-06-12 16:03:44 +02:00
LLEFEVRE 7c711751dd HHH-18220 Detect if Application Continuity is enabled for Oracle dialect 2024-06-12 16:03:44 +02:00
Gavin King 58e814965e improvements to filter-related javadoc
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-12 13:57:39 +02:00
Andrea Boriero 8663136608 Improve Sybase and SQLServer blob lob generation 2024-06-12 13:36:59 +02:00
Andrea Boriero 55eea3d0df HHH-16094 HHH-17097 MySQL schema generation and validation : tinytext instead of longtext for @Lob 2024-06-12 13:36:59 +02:00
Andrea Boriero 5b9057e2ed HHH-16094 Add test for issue 2024-06-12 13:36:59 +02:00
Andrea Boriero eaa94b1305 HHH-17097 Add test for issue 2024-06-12 13:36:59 +02:00
Andrea Boriero 357be627e2 HHH-18147 Hibernate fails to persist an entity when a natural id association is a proxy 2024-06-12 13:30:27 +02:00
Andrea Boriero f87cecee0e HHH-18147 Add test for issue 2024-06-12 13:30:27 +02:00
Davide D'Alto 26f6cdab03 HHH-18254 Change `NativeQueryImpl#createCountQueryPlan` scope to protected
So that I can re-use the code when implementing ReactiveSelectQueryPlan#getReactiveResultsCount in Hibernate Reactive
2024-06-12 13:20:44 +02:00
Christian Beikov f7093239d9 HHH-18125 Fix type of embeddable discriminator paths and type literals
Build and store the embeddable discriminator type in the Component. Also, change the type of entity/embeddable type literals to the discriminator type (or `Class` when not polymorphic).
2024-06-12 13:18:03 +02:00
Christian Beikov e2f7d5d516 HHH-16830 Custom exception handling for applyToLoadByKey associations 2024-06-12 12:19:33 +02:00
Christian Beikov d22725a678 HHH-16830 Add applyToLoadByKey filters also to to-one join predicates 2024-06-12 12:19:33 +02:00
Christian Beikov be8705f317 HHH-16830 Ensure filters applied for by key lookups don't mess with to-one associations 2024-06-12 12:19:33 +02:00
Dmitrii Karmanov 4125902eea HHH-16830: change the naming 2024-06-12 12:19:33 +02:00
Dmitrii Karmanov af778c4eba HHH-16830: fix checkstyle indents 2024-06-12 12:19:33 +02:00
Dmitrii Karmanov b20680dbd8 HHH-16830: fix checkstyle in tenant binder 2024-06-12 12:19:33 +02:00
Dmitrii Karmanov e721a37691 HHH-16830: apply filters to find() method 2024-06-12 12:19:33 +02:00
Sanne Grinovero 0a19854ae2 Keep dependency repository definitions well defined 2024-06-12 09:23:20 +02:00
Vladimír Kuruc aa9f3d091c HHH-18250 Informix multi insert not supported 2024-06-12 00:26:07 +02:00
Andrea Boriero 8166086957 Upgrade Gradle to 8.8, upgrade checkframework to 0.6.40, fix HibernateProcessor resources creation causing whole tests recompilation 2024-06-11 23:46:57 +02:00
Steve Ebersole d1c80e1462 HHH-17829 - [MySQL] Schema-validation: wrong column type encountered in column [activated] in table [jhi_user]; found [tinyint (Types#TINYINT)], but expecting [bit (Types#BOOLEAN)]
Test that using `hibernate.type.preferred_boolean_jdbc_type` allows successful validation
2024-06-11 07:49:50 -05:00
Steve Ebersole 45ea24d102 HHH-17829 - [MySQL] Schema-validation: wrong column type encountered in column [activated] in table [jhi_user]; found [tinyint (Types#TINYINT)], but expecting [bit (Types#BOOLEAN)]
Test that using `hibernate.type.preferred_boolean_jdbc_type` allows successful validation
2024-06-11 07:49:50 -05:00
Christian Beikov 0663f811ff HHH-18256 Don't prefix literal type prefix in SQL fragments 2024-06-11 14:42:48 +02:00
Marco Belladelli c08b1b9bf1 HHH-18202 Fix group/order by fk rendering handling nested paths
Introduced generalized `MetadataKey`-based resolutions with caching in `BaseSqmToSqlAstConverter`
2024-06-10 15:50:32 +02:00
Marco Belladelli 01199d2c1f HHH-18202 Add test for issue 2024-06-10 15:50:32 +02:00
Christian Beikov da22678c74 HHH-18154 Implement caching for assemblers and initializers
* Make initializers stateless and have separate data classes stored in the RowProcessingState
* Defer determination whether batching should apply and which lock mode should be used until startLoading
* Inline EntityEntry to EntityHolder to avoid map lookup
2024-06-10 09:48:01 +02:00
Christian Beikov 8100f92265 HHH-18232 Use change table modifier new and final consistently on DB2 and zOS 2024-06-07 15:02:34 +02:00
Marco Belladelli 0534e1aa01 HHH-18218 Account for generics in dynamic instantiation arguments 2024-06-07 13:39:48 +02:00
Marco Belladelli feaf30e578 HHH-18218 Add test for issue 2024-06-07 13:39:48 +02:00
LLEFEVRE ba88e401c2 HHH-18242 23ai supports natively Tuple Comparison 2024-06-06 18:36:08 +02:00
Christian Beikov 5a889f7d56 HHH-17782, HHH-17901 Support enum literals in annotation processor HQL validation 2024-06-06 16:40:28 +02:00
Gavin King de3a4c0af9 HHH-17804 roll back change to semantics of 'null in ()'
It turns out that SQL databases (IMO wrongly) treat the expression
'null in (select 1 where false)' as false instead of null. And as
of JPA 3.2, we're free to interpret 'null in ()' consistently with
that, which we should do.

So my change made things worse rather than better.

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-06 16:17:41 +02:00
Marco Belladelli 15cbebbbf9 HHH-18121 Replace dynamic instantiations for non-simple count queries 2024-06-06 08:59:51 +02:00
Marco Belladelli 8f217c886f HHH-18121 Add test for issue 2024-06-06 08:59:51 +02:00
Marco Belladelli d1e126b2ab
HHH-18212 Revert test and fix for issue causing transient check failure
The unowned `contained` association caused a `TransientObjectException` since it was removed but a reference to it was still kept in the test.
2024-06-05 17:50:53 +02:00
Gavin King c1433ffdf0 rename cascade type from DELETE to REMOVE (aligning with JPA terminology)
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-05 16:08:43 +02:00
Gavin King a6ef6d1b55 HHH-18230 disable exception when collection is unowned
I just feel like that's a bit too heavy-handed

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-05 16:08:43 +02:00
Gavin King aa91138b6b HHH-18230 throw when collection contains an unsaved instance
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-05 16:08:43 +02:00
Christian Beikov cf0e4d4622 HHH-18201 Handle SqmBinaryArithmetic in determineValueMapping 2024-06-05 15:13:52 +02:00
Christian Beikov dba38f84fc HHH-18201 Configure NO_PLAIN_PARAMETER rendering mode for timestamps in timestampadd and -diff 2024-06-05 15:13:52 +02:00
Cedomir Igaly edbece8125 HHH-18201 - Do not make any assumptions when LHS operand of addition/subtraction is not known
and RHS operand is of duration type.
	    Allowed combinations are
		templral +/- duration
		duration +/- duration
	    nut final decision can be only make knowing full context
2024-06-05 15:13:52 +02:00
Cedomir Igaly ca581e74f4 HHH-18201 - Test case
Executing query comparing instant field with parameter (set to instant value) increased by duration
	    Executing query comparing local date field with parameter (set to local date value) increased by duration
	    Executing query comparing duration field with parameter (set to duration value) increased by duration
2024-06-05 15:13:52 +02:00
Marco Belladelli c5cbe20bd1 HHH-18212 Handle entity in existing state removed from current session 2024-06-05 15:12:51 +02:00
marko-bekhta 46e0f43567 HHH-18212 Add a testcase for the issue 2024-06-05 15:12:51 +02:00
Marco Belladelli 4ed529c289 HHH-18172 Validate exclusivity of annotated class types 2024-06-05 15:12:21 +02:00
Marco Belladelli 9aaebe312a HHH-18172 Fix embeddable inheritance + `@MappedSuperclass` binding 2024-06-05 15:12:21 +02:00
Marco Belladelli 547fe55ecc HHH-18172 Add test for issue 2024-06-05 15:12:21 +02:00
Gavin King d54f71f81c HHH-6999 optimization
don't need to run CHECK_ON_FLUSH with cascade=ALL,
since ALL includes PERSIST_ON_FLUSH

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-05 11:58:39 +02:00
Vincent Bouthinon 4308c5dac5 HHH-15722 @OneToMany mappedBy with a @Any 2024-06-05 08:33:04 +02:00
Gavin King 20d26a0126 HHH-9568/HHH-9571 fix orphanRemoval in JPA bootstrap
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-05 02:17:36 +02:00
Gavin King faff6f0b8f HHH-6999 fix a broken test
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-05 00:14:06 +02:00
Gavin King ccff1effed remove unused method
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-05 00:14:06 +02:00
Gavin King 04223f5cb9 HHH-6999 check for unsaved refs after processing all cascaded persist operations
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-05 00:14:06 +02:00
Gavin King 7b9b495f31 minor code changes (use of final)
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-05 00:14:06 +02:00
Gavin King 1a93a081e1 minor change to formatting of error messages
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-05 00:14:06 +02:00
Gavin King 92f61c0956 light refactoring to ForeignKeys
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-05 00:14:06 +02:00
Marco Belladelli 224e8ca57a HHH-17959 Apply concrete type to subqueries with single selection 2024-06-04 16:46:40 +02:00
Marco Belladelli f2f0e18da8 HHH-17959 Add test for issue 2024-06-04 16:46:40 +02:00
Andrea Boriero 78cf552065 HHH-18146 Switch to global temporary tables on H2 2024-06-04 14:26:25 +02:00
Vladimír Kuruc 753076bb40 HHH-18221 Fix for Incomplete list of existing foreign keys - DatabaseMetaData.crossReferences(...) not used 2024-06-04 13:52:19 +02:00
Jan Schatteman f71a408df8 HHH-17973 - Deprecate ALLOW_REFRESH_DETACHED_ENTITY
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2024-06-04 11:27:49 +02:00
Loïc LEFEVRE ef1cbf589d
HHH-18206 Switch to JDBC LOB APIs for Oracle Dialect (#8486)
HHH-18206 Switch to JDBC LOB APIs for Oracle Dialect
2024-06-02 18:29:52 +02:00
Gavin King 18ec7f178e HHH-18215, HHH-2744 test
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-02 16:26:25 +02:00
Gavin King 6435137800 HHH-18215, HHH-2744 fix parsing of native SQL queries to handle quoting
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-02 16:26:25 +02:00
Gavin King eb74c7641c squash some warnings
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-02 14:23:31 +02:00
Gavin King 86ddd203a0 remove redundant calls to checkOpen()
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-02 14:23:31 +02:00
Gavin King cf0b9089a4 clarify semantics of StatelessSession.upsert() in javadoc
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-02 14:23:31 +02:00
Gavin King 1a5456dde1 HHH-18216 add StatelessSession.getIdentifier()
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-02 13:32:51 +02:00
Gavin King 1657a19baf HHH-18214 fix error message when query result type has no appropriate constructor
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-06-01 21:36:44 +02:00
Steve Ebersole 1861eccc2c Upgrade XJC plugin to address branch-switch issues 2024-05-31 11:57:34 -05:00
Marco Belladelli 1866fc56d6 HHH-17968 Fix missing CTE processing in subqueries 2024-05-31 15:48:45 +02:00
Marco Belladelli 33f17b0195 HHH-17968 Add test for issue 2024-05-31 15:48:45 +02:00
marko-bekhta 045053ff8a HHH-17030 Followup: move schema check to launcher listener 2024-05-31 15:22:00 +02:00
Marco Belladelli 86a2b19b77
Add missing newline 2024-05-31 13:46:22 +02:00
Marco Belladelli 068b9d9cdd Mark org.hibernate.generator.values as `@Incubating` 2024-05-31 12:54:42 +02:00
Gavin King 407e57d442 HHH-18205 respect property-configured naming strategies in Configuration
and make the state model more transparent

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-31 01:53:49 +02:00
Matej Pucihar 08d0d78147 HHH-18151 Fix lazy loading with generics and inheritance 2024-05-29 09:04:58 +02:00
Matej Pucihar 26c0054753 HHH-18151 Add test for issue
Co-authored-by: Marco Belladelli <marcobladel@gmail.com>
2024-05-29 09:04:58 +02:00
Matej Pucihar 81d700c382 HHH-18138 entity graphs must respect concrete generic attribute
Co-authored-by: Marco Belladelli <marcobladel@gmail.com>
2024-05-29 09:04:08 +02:00
Matej Pucihar 7ef0680601 HHH-18138 Add test for issue 2024-05-29 09:04:08 +02:00
Gavin King 4dad4746a8 HHH-18176 enable an older test on Oracle
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-28 22:25:16 +02:00
Gavin King 8c78c44bda HHH-18176 upsert() with @Version-ed entity on Oracle
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-28 21:32:13 +02:00
Gavin King e21a590e7d HHH-18175 StatelessSession not incrementing @Version for entities with IDENTITY id generation
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-28 19:01:35 +02:00
Marco Pelagatti d33ed62b21 HHH-18170 Subquery randomly generating wrong SQL due to duplicate alias 2024-05-28 11:22:04 +02:00
Philippe Marschall ba149a1cdc HHH-18111 Call EventManager for stored procedures 2024-05-27 16:24:32 +02:00
Marco Belladelli 07bfe6ad73 HHH-17925 Allow mapping join column on single attribute of composite id 2024-05-27 16:22:15 +02:00
Marco Belladelli 8557c5cd84 HHH-17925 Add test for issue 2024-05-27 16:22:15 +02:00
Marco Belladelli 758a660bca HHH-18007 Use correct expressible when checking query result type 2024-05-27 16:17:54 +02:00
marko-bekhta e036509487 HHH-18007 Add a testcase for the issue 2024-05-27 16:17:54 +02:00
Christian Beikov 47b63e51b9 HHH-18168 Use count(*) instead of count(1) for size() translation 2024-05-27 15:56:39 +02:00
Yanming Zhou 11da1ec25a Introduce AbstractNamedEnumTest 2024-05-27 15:22:19 +02:00
Guenther Demetz 53398df5f3 HHH-16557 Testcase and bugfix proposal (revised by beikov) 2024-05-27 14:36:06 +02:00
Christian Beikov fcc7216911 HHH-18027 Clear expansions NonSelectQueryPlan.executeUpdate call 2024-05-27 14:22:49 +02:00
Yanming Zhou e8d396ccbd HHH-18027 Test mutation query reuse with parameter list expansions 2024-05-27 14:22:49 +02:00
Gavin King 3ba2958e5d extract two methods / code style
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-27 11:15:18 +02:00
Yanming Zhou 9d015ac7ea HHH-18164 Make @IdGeneratorType respect BeanContainer 2024-05-27 09:49:48 +02:00
Marco Belladelli 3226679898 HHH-17161 Align `StandardTableGroup` table reference join name checks 2024-05-27 08:51:31 +02:00
Konrad Kügler a7b97f25fa HHH-17161 Add test for issue 2024-05-27 08:51:31 +02:00
Gavin King bbb596b23e improve javadoc for hibernate.event.merge.entity_copy_observer
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-26 19:39:35 +02:00
Gavin King e3cf006e76 HHH-18166 introduce hibernate.jpa.compliance.cascade
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-26 11:12:44 +02:00
Gavin King ffab0d8026 trivial code cleanups to AbstractLazyInitializer
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-24 15:21:28 +02:00
Gavin King ebd8619f73 HHH-18162 index creation in HibernateProcessor
This stores an index of entities and enum values in the
entity.index directory. This approach has some downsides
but works around some limitations of the processor API.

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-23 23:09:07 +02:00
Christian Beikov ed2fdce0a6 HHH-15831 Support non-basic values in aggregate components 2024-05-23 19:56:29 +02:00
Cedomir Igaly 51f0692240 HHH-18117 Proposed solution 2024-05-23 12:42:59 +02:00
Cedomir Igaly 8792326b01 HHH-18117 Test case 2024-05-23 12:42:59 +02:00
Yanming Zhou 644a9aebbc HHH-17909 Improve test to cover schema generated by named ordinal enum 2024-05-23 12:30:52 +02:00
Christian Beikov d02d8d7af6 HHH-17030 Rework the initializer interactions and polish the interface design 2024-05-22 20:00:57 +02:00
Christian Beikov 3263ac4fd0 Skip test for DB2 2024-05-22 20:00:31 +02:00
Cedomir Igaly d738e75662 HHH-18106 - Java constant field resolution moved to JpaMetamodel 2024-05-22 18:39:49 +02:00
LLEFEVRE dc82a3c5e3 HHH-17909 Use domain type for NAMED_ENUM 2024-05-22 18:36:44 +02:00
Andrea Boriero af269ae182 HHH-17943 - Fix for issue 2024-05-22 17:54:14 +02:00
Andrea Boriero 7ae416d6dd HHH-17943 - Add test for issue 2024-05-22 17:54:14 +02:00
Jan Schatteman aed5589e4d HHH-17943 - Fix for issue
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2024-05-22 17:54:14 +02:00
Jan Schatteman 4c6a1b3c4e HHH-17943 - Add test for issue
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2024-05-22 17:54:14 +02:00
Christian Beikov 2df10cb525 Fix some HANA related issues 2024-05-22 17:50:34 +02:00
Gavin King 2b801702f1 minor javadoc improvements to Builder stuff
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-22 16:23:03 +02:00
Marco Belladelli 2e9acf1ded HHH-18125 Support for `type()` and `treat()` operators for Embeddables 2024-05-22 15:59:03 +02:00
Jan Schatteman 4866201bf0 HHH-17972 - Allow changing tenant identifier with restrictions when a MultiTenantConnectionProvider is in use
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2024-05-22 15:07:24 +02:00
Jan Schatteman 02f085e153 HHH-17972 - Allow changing tenant identifier in SharedSessionBuilder
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2024-05-22 15:07:24 +02:00
Christian Beikov 11d22531bb HHH-17884 Introduce special SqlTypes constants for ordinal based enums 2024-05-22 13:58:40 +02:00
hugo-syn 97e2ca0d3a chore: s/overriden/overridden 2024-05-22 11:31:48 +02:00
Gavin King 8ceed5ab5a add missing covariant overrides to SharedSessionBuilder
cc @jrenaat

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-22 00:35:27 +02:00
Gavin King 8ea4d6a3c0 very minor whitespace fixes
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-22 00:35:27 +02:00
Jan Schatteman 522269e9a9 HHH-1661 throw when merge() applied to a definitely-removed instance
group effort by @jrenaat, @beikov, and myself

Signed-off-by: Jan Schatteman <jschatte@redhat.com>
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-21 21:23:20 +02:00
Gavin King cbcd26607c use static import
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-21 21:23:20 +02:00
fmusolino c198fcfe1c HHH-18132 Fix minimum version check for skip locked on HANA 2024-05-21 19:29:42 +02:00
fmusolino 80219b6cd9 HHH-18132 Implement getForUpdateSkipLockedString in AbstractHANADialect 2024-05-21 19:29:42 +02:00
fmusolino 41c12ea342 HHH-18132 Add a space to the skip locked string 2024-05-21 19:29:42 +02:00
fmusolino a53d4317a3 HHH-18132 Add support for skip locked for HANA. 2024-05-21 19:29:42 +02:00
Yanming Zhou 0d35d9d5b1 HHH-18073 `BasicCollectionJavaType::wrap` should retain order of `Set` to keep consistent with `deepCopy` 2024-05-21 18:24:12 +02:00
Hassan AL Meftah 60b0a63629 HHH-17738 : Add support for Oracle database AI Vector Search 2024-05-21 17:13:57 +02:00
Gavin King 4791b41cf5 HHH-16531 be more forgiving in handling of integral types in schema validation/update
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-21 15:43:50 +02:00
LLEFEVRE cf23888fab HHH-18142 Add Oracle Database 23ai support for DROP SEQUENCE IF EXISTS 2024-05-21 12:25:21 +02:00
LLEFEVRE 6a764d70e6 HHH-18142 Add Oracle Database 23ai support for DROP SEQUENCE IF EXISTS 2024-05-21 12:25:21 +02:00
LLEFEVRE fcc33f3fe1 HHH-18142 Add Oracle Database 23ai support for DROP SEQUENCE IF EXISTS 2024-05-21 12:25:21 +02:00
Gavin King 2619df6c7f HHH-18140 Skip optimizeUnloadedDelete if there are POST_COMMIT_DELETE listeners
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-20 16:15:44 +02:00
Gavin King 167309c5d8 add another column type name normalization 'double precision' -> 'double'
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-20 15:27:12 +02:00
Gavin King 05bf44a41b HHH-18140 schema migration for @Column(length=LONG) on MySQL
and similar cases where the column type doesn't have explicit length

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-20 15:27:12 +02:00
Marco Belladelli 421e9cf643 HHH-18026 Fix SQL Exception for dialects not supporting arbitrary keys 2024-05-20 08:46:33 +02:00
Marco Belladelli 0515b71a81 HHH-18026 Add test for issue 2024-05-20 08:46:33 +02:00
Gavin King f32c9e6e36 squash diverse compiler warnings
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-17 20:45:09 +02:00
Gavin King 4a03c0e84d HHH-18136 minor cleanups
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-17 18:12:48 +02:00
Gavin King 371fe8f51c HHH-18136 remove Table.identifierValue which was just bad
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-17 18:12:48 +02:00
Gavin King 7d3d17de4c HHH-18136 clean up legacy handling of identity columns
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-17 18:12:48 +02:00
Gavin King e721180435 HHH-18136 make it easier to write Generators which delegate to "old" id generation infrastructure
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-17 18:12:48 +02:00
Emmanuel Jannetti 320e282ccc HHH-15752 Add Boolean support to oracle dialect 2024-05-16 20:16:48 +02:00
Christian Beikov fcab4df57d HHH-15752 Handle booleans in aggregate components properly 2024-05-16 20:15:49 +02:00
Philippe Marschall e2c1869e27 HHH-18116 Support slow query logging for stored procedures 2024-05-16 19:38:56 +02:00
Marco Belladelli ce48a51eaa Fix CockroachDB timestampdiff errors caused by `round()` return type 2024-05-16 08:56:23 +02:00
Yoann Rodière d1be36b303 HHH-18112 Fix and test default version handling for non-Oracle dialects 2024-05-15 11:54:32 +02:00
Dmitry Kryukov 43b67389cf HHH-18118 fixed comparison of class field with itself 2024-05-15 11:12:23 +02:00
Gavin King 7c8690592e fix test, since locking strategy now wraps LockTimeoutException
I'm conflicted about this, but it's more consistent, since we
wrap all other JDBCExceptions. And since LockTimeoutException
is a JDBCException, it must be interpreted as belonging to that
lower semantic layer.

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-14 16:55:17 +02:00
Gavin King 54d34a445c clean up locking strategies
- remove duplicated code
- handle UPGRADE_NOWAIT and UPGRADE_SKIPLOCKED as flavors of
  PessimisticWriteSelectLockingStrategy
- improve Javadoc

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-14 16:55:17 +02:00
Gavin King 1b67ebee60 HHH-4301 eliminate unnecessary DELETE for collections with @OnDelete(CASCADE)
This change works for @ElementCollection and @ManyToMany

In future we could do a similar thing for @OneToMany and SET_NULL

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-14 14:44:39 +02:00
ettavolt ad8fe58cf1 HHH-4301 Allow OnDelete on ElementCollection.
CollectionBinder#oneToMany is only for association, not for element collection:
#scheduleSecondPass expects MappedBy, which is only available for associations;
#detectMappedByProblem really wants to check association, because only for it JPA requires join table by default;
#noAssociationTable cares about association again, because otherwise element won't be a persistent class;
#bindManyToManySecondPass:
  #logManyToManySecondPass uses oneToMany only to differentiate between different collection of entities;
  #bindManyToManyInverseForeignKey is run for association only.
2024-05-14 14:44:39 +02:00
Marco Belladelli 1c11dea006 HHH-1152 Discriminator based inheritance for embeddable types 2024-05-14 11:13:36 +02:00
Christian Beikov 8b5cdba5bc HHH-18089 Support bracket syntax with string types 2024-05-13 22:11:15 +02:00
Christian Beikov c8aa4f39da HHH-17375 Introduce array_includes() and INCLUDES predicate for checking if array contains all elements of subarray as replacement to array_contains() overload 2024-05-13 22:11:15 +02:00
Christian Beikov dcedc5cf18 HHH-17375 Support array on RHS of in predicate 2024-05-13 22:11:15 +02:00
Christian Beikov 5c6a2f4a7d HHH-17375 Introduce intersects predicate for easy array_intersects, the replacement of array_overlaps 2024-05-13 22:11:15 +02:00
Christian Beikov 6c34a0a4a6 HHH-17375 Introduce contains predicate for easy array containment checking 2024-05-13 22:11:15 +02:00
Christian Beikov 64dd9e657c HHH-17375 Support casting array to string and add optional third argument to array_to_string for null element handling 2024-05-13 22:11:15 +02:00
Christian Beikov 8ec90b8fb1 HHH-17375 Overload position function with array_position semantics on array input 2024-05-13 22:11:15 +02:00
Christian Beikov 35102836c7 HHH-17375 Overload length function with array_length semantics on array input 2024-05-13 22:11:15 +02:00
Christian Beikov b74992198c HHH-17375 Shorthand bracket syntax for array slicing 2024-05-13 22:11:15 +02:00
Christian Beikov 67d04577be HHH-17375 Shorthand bracket syntax for array construction 2024-05-13 22:11:15 +02:00
Cedomir Igaly 9f06bbb69e HHH-18102 Patch fixing the problem 2024-05-13 18:37:45 +02:00
Cedomir Igaly fd3cb949a7 HHH-18102 Little bit of cosmetics to allow merging with PR 8095; it is not affecting any logic 2024-05-13 18:37:45 +02:00
Yanming Zhou df7f104689 HHH-18033 Fix LimitHandler detect wrong statement end if sql contains quoted semicolon 2024-05-13 10:20:16 +02:00
Gavin King 7b0d66782d HHH-18098 don't write to cache when entity extends with @Cacheable(false)
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-11 16:42:12 +02:00
Gavin King 47da22183b HHH-18098 improve test for @Cacheable(false)
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-11 16:42:12 +02:00
Marco Belladelli 77f6af42e7 Tests for `order by` expression(s) not included in `select` clause 2024-05-10 14:11:36 +02:00
Sanne Grinovero 08028be1e9 HHH-18094 Bytebuddy enhancer: make better use of constants and memory 2024-05-10 10:01:04 +01:00
Marco Belladelli b051936204 Use round in CockroachDB timestampdiff pattern to avoid rounding errors 2024-05-09 08:49:00 +02:00
Yoann Rodière fa35e99543 HHH-18080 Fix default version handling in dialects when not using JDBC metadata
* Use the minimum supported version instead of '0.0.0'
* Don't warn about version '0.0.0'
2024-05-08 07:08:14 -05:00
Gavin King dc0ca6382f HHH-18077 extremely minor cleanup after fix
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-07 22:11:39 +02:00
Marco Belladelli 5512281a5e Fix TiDB timestampdiff pattern 2024-05-07 21:10:20 +02:00
Christian Beikov d1b30e1ab8 HHH-15862 Support basic array values in aggregate components 2024-05-07 21:00:12 +02:00
Gavin King ccaefc168a introduce include/exclude options for HibernateProcessor
and rename @Suppress -> @Exclude

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-07 20:20:16 +02:00
Jere Penttinen 4ae64eeb3f HHH-18077 Fix key selection paging to previous pages 2024-05-07 20:17:49 +02:00
Jere Penttinen eef5cc2536 HHH-18077 Add test for issue 2024-05-07 20:17:49 +02:00
Marco Belladelli 4c9b8b1e04 Fix Oracle test missing order by expression in select distinct 2024-05-07 11:10:11 +02:00
Yoann Rodière 1441504c3b HHH-18079 Default to minimum supported DB version in more cases
In particular when using hibernate.boot.allow_jdbc_metadata_access=false with jakarta.persistence.database-product-name
2024-05-07 10:52:30 +02:00
Christian Beikov 3ce6a1351a HHH-17421 Ensure that no follow-on locking happens on SQL Server and Sybase ASE 2024-05-07 08:16:49 +02:00
Simon StJohn-Green e18bf7b6b4 HHH-17421 Test that no follow-on locking happens on SQL Server and Sybase ASE 2024-05-07 08:16:49 +02:00
Christian Thiel e8426692e4 HHH-17305 Test and fix for keeping order of tables in polymorphic queries 2024-05-06 17:48:48 +02:00
Gavin King 0c7c81cce7 enable test on cockroach
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-06 17:17:21 +02:00
Christian Beikov a81fae743c HHH-17229 Test and fix for handling negative milliseconds from java.sql.Time 2024-05-06 17:08:54 +02:00
Christian Beikov b21d70ef74 HHH-17385 Missing table for superclass when joining subclass association 2024-05-06 16:18:41 +02:00
Andrea Boriero 9d54924c79 HHH-18032 CompositeId, when the id assigned by PrePersist method an HibernateException: identifier of an instance of _ was altered is thrown 2024-05-06 14:51:55 +02:00
Andrea Boriero 480e09fc4c HHH-18032 Add test for issue 2024-05-06 14:51:55 +02:00
Gavin King f7708d59ac mark an unused deprecated method for removal
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-06 14:35:12 +02:00
Marco Belladelli 43f9d20773 HHH-17827 Fix check for Map dynamic entity classes 2024-05-06 14:29:11 +02:00
Marco Belladelli 041bedd70a HHH-17827 Add test for issue 2024-05-06 14:29:11 +02:00
Marco Belladelli 3bbc90fb9b HHH-17834 Force version increment for the correct inheritance table 2024-05-06 14:27:10 +02:00
Marco Belladelli fa9e87c675 HHH-17834 Add test for issue 2024-05-06 14:27:10 +02:00
Christian Beikov 538e208866 HHH-18046 Fix Hana issue with binary arithmetic parameter 2024-05-06 12:16:52 +02:00
Gavin King 79c1bf2cd7 more tests for literals in duration arithmetic 2024-05-06 12:07:58 +02:00
Gavin King 5220e82e83 fix bug parsing date literals
and make related code more typesafe so this doesn't happen again

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-06 12:07:58 +02:00
Marco Belladelli 7f00e1a59d HHH-18053 Fix CockroachDB `TemporalUnit.NATIVE` interval pattern 2024-05-06 10:37:37 +02:00
Marco Belladelli 5e9223ee5c HHH-18053 TiDB timestampadd/diff pattern for fractional seconds 2024-05-06 10:37:37 +02:00
Gavin King b982bf54b5 fix addition of fractional second duration on SQL Server
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-03 23:14:58 +02:00
Christian Beikov 9011d22315 HHH-18043 Change the temporal arithmetic to use nanoseconds 2024-05-03 23:14:58 +02:00
Gavin King 14216fc267 test for adding duration to a LocalTime
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-03 23:14:58 +02:00
Gavin King 37018d2570 enable some commented tests in FunctionTests
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-03 23:14:58 +02:00
Gavin King ac40e37700 fix for datetime subtraction on DB2
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-03 23:14:58 +02:00
Gavin King 064526a5c6 disable test for extract() on SQL Server
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-03 23:14:58 +02:00
Gavin King 98b014c789 assertions for extract(offset hour/minute)
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-03 23:14:58 +02:00
Gavin King 8c6241a7d7 add a test for datetime subtraction with fractional seconds
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-03 23:14:58 +02:00
Gavin King 5941aca7ac make adding fractional seconds work on h2 and HSQL
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-03 23:14:58 +02:00
Gavin King 87516a77b7 tests for adding fractional seconds to timestamp
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-03 23:14:58 +02:00
Gavin King 0cfb52d127 HHH-18067 get rid of a typecast to AbstractPersistentCollection
and code cleanups

(Note that this typecast has actually been there since 2012,
though it only used to happen when batching was enabled.)

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-03 22:11:32 +02:00
Gavin King 138e0bba01 HHH-18023 treat LockMode.WRITE as similar to PESSIMISTIC_FORCE_INCREMENT
consistent with the similar levels they have

cc @beikov

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-03 20:52:00 +02:00
Gavin King 8a133ac120 HHH-18068 fix case-insensitive Order
can't use ordinal column refs inside lower()

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-03 20:51:51 +02:00
Gavin King bea5e4cf3d HHH-18068 tests for case-insensitive Order
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-03 20:51:51 +02:00
Christian Beikov 2932933c43 HHH-18066 Support de-referencing function invocation with dot and bracket syntax 2024-05-03 18:10:38 +02:00
Christian Beikov 940c898ecf Various improvements:
* Sprinkle some @Nullable annotations to better understand nullness guarantees
* Fix some potential NPEs
* Improve Oracle array_agg emulation
* Prepare for aggregate component array support
2024-05-03 16:49:39 +02:00
Christian Beikov 75e1f17139 HHH-18065 Truncate date related milliseconds from value passed to java.sql.Time 2024-05-03 16:10:54 +02:00
Christian Beikov 17fec64fd7 Make the JDBC type to use for array/collection types configurable 2024-05-03 16:07:19 +02:00
Marco Belladelli b273c17592 Skip binary arithmetic parameter inference test for CockroachDB 2024-05-03 15:12:31 +02:00
Marco Belladelli 2769fd1b3c Set `serial_normalization` to avoid Integer overflow 2024-05-03 15:12:31 +02:00
Marco Belladelli f5de1972e7 Fix java 17 bytecode-enhanced test missing imports 2024-05-03 10:37:45 +02:00
Marco Belladelli b16b891be0 HHH-17837 Render target-side key for explicit plural joins when needed
Also, change how we determine whether we need to use the target-side to only the strictly needed cases (non-optimizable joins, `group by` or `order by` clauses)
2024-05-03 08:48:20 +02:00
Marco Belladelli 21bfc5c19f HHH-17837 Add test for issue 2024-05-03 08:48:20 +02:00
Gavin King d0ed4d01f2 squash some compiler warnings
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-02 20:18:27 +02:00
Gavin King 72261fd806 HHH-18020 realign behavior of ClobJdbcType with BlobJdbcType
there was some organic divergence here
2024-05-02 20:18:27 +02:00
Gavin King c955150b27 minor code cleanups
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-05-02 20:18:27 +02:00
Christian Beikov 88bdfbfbd4 HHH-18046 Cast parameters used as arithmetic operands on DB2 2024-05-02 18:18:49 +02:00
Christian Beikov 5d4ffac58d HHH-18018 Use NO_PLAIN_PARAMETER for Derby functions that use the length function 2024-05-01 10:33:24 -05:00
marko-bekhta 19e495d8da Convert bytecodeenhanced tests to use JUnit 5 extensions 2024-05-01 07:36:14 -05:00
Sanne Grinovero 85364a2c53 HHH-18011 Extract reusable constants from EnhancerImpl 2024-05-01 11:59:35 +01:00
Sanne Grinovero a92bf606a9 HHH-18011 Extract DefaultEnhancerClassFileLocator and allow using a different implementation 2024-05-01 11:59:35 +01:00
Christian Beikov 3578ed845f HHH-18036 Truncate time-related milliseconds when creating a java.sql.Date 2024-05-01 00:08:25 +02:00
Yanming Zhou ecaeea414d HHH-18034 Configuration property `hibernate.event.listener.eventType` should be more lenient against spaces 2024-04-30 11:57:12 +01:00
Gavin King fe7b3c9e7e HHH-18023 fix questionable test
PESSIMISTIC_READ is not really a "more exclusive" lock than UPGRADE_NOWAIT

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-28 20:37:18 +02:00
Gavin King 1e0e0ac02b HHH-18023 fix wrong test assertions
OPTIMISTIC means the version gets checked at end of tx,
this lock mode is never acquired implicitly

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-28 20:37:18 +02:00
Gavin King 1657702015 HHH-18024 fix getLockMode() on read-only entity
it resulted in spurious exception claiming entity was deleted

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-28 20:37:18 +02:00
Gavin King 789cc12b8e HHH-18023 fix bugs with versioned LockModes
- NPE at commit time for OPTIMISTIC on entity with no version
- LockMode.OPTIMISTIC treated as equivalent to LockModeType.OPTIMISTIC

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-28 20:37:18 +02:00
Gavin King 39a6f9880b clean up CacheModeHelper
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-28 20:37:18 +02:00
Gavin King 60a732152f clean an unused import
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-27 01:29:56 +02:00
Jan Schatteman 1b057b8f1f HHH-17967 - Add test for issue (already fixed on main, fails pre-6.5)
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2024-04-25 16:39:21 +02:00
Andrea Boriero 2202487633 HHH-17964 Hibernate using wrong column order for ElementCollection query when composite ID is present 2024-04-25 09:59:13 +02:00
Andrea Boriero a1739979d1 HHH-17964 Add test for issue 2024-04-25 09:59:13 +02:00
Gavin King b102a6e2c9 slightly improve format of error message
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-24 22:41:02 +02:00
Marco Belladelli 181399f84c HHH-17983 Remove entity keys from batch queue before loading 2024-04-24 11:37:53 +02:00
Marco Belladelli 882709bdf8 HHH-17983 Add test for issue 2024-04-24 11:37:53 +02:00
Marco Belladelli ce56234857 HHH-17883 Correct original column order for primary keys 2024-04-24 11:36:46 +02:00
Marco Belladelli 0c8bfefd1c HHH-17883 Add test for issue 2024-04-24 11:36:46 +02:00
Christian Beikov bda95dfbe7 Fix HANA dialect doesRoundTemporalOnOverflow 2024-04-23 17:59:12 +02:00
Christian Beikov 969ecaae58 Fix SybaseASEDialect column length resolution 2024-04-23 17:08:18 +02:00
Marco Belladelli 7adab31924 HHH-17818 Add a UG paragraph and examples for `@ConcreteProxy` 2024-04-23 15:37:22 +02:00
Marco Belladelli 84cb94b990 HHH-17818 Introduce new `@ConcreteProxy` annotation
Also, preserve laziness for optional + ConcreteType associations
2024-04-23 15:37:22 +02:00
Gavin King 2bc78d50b0 HHH-17999 use Supplier instead of Constructor
this is quite a lot cleaner

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-23 15:28:38 +02:00
Gavin King 0468e04955 HHH-17999 use Constructor<Expectation> instead of Class<Expectation>
for Quarkus

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-23 15:28:38 +02:00
Andrea Boriero 42cbbc3a0c HHH-17965 @ElementCollection with @CollectionTable throws o.h.MappingException Foreign key must have same number of columns as the referenced primary key 2024-04-23 13:51:10 +02:00
Andrea Boriero a3690b1e68 HHH-17965 Add test for issue 2024-04-23 13:51:10 +02:00
Sanne Grinovero 8f277d4b1c HHH-17993 Metamodel processing on bootstrap: avoid retrying same metamodel class name multiple times 2024-04-22 21:26:33 +01:00
Sanne Grinovero 4c3f8a625d HHH-17991 Reduce overhead from @DialectOverride discovery 2024-04-22 13:28:56 +01:00
Gavin King c71967d6c1 code cleanups to EnhancementAsProxyLazinessInterceptor
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-22 13:08:02 +02:00
Gavin King caab8a97fc squash jdoc warnings
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-22 13:08:02 +02:00
Gavin King 8df8fd37be HHH-17984 StatelessSession statistics for collections
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-22 13:08:02 +02:00
Gavin King 62132594eb HHH-17984 initial support for Statistics with StatelessSession
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-22 13:08:02 +02:00
Gavin King 34fd71c131 HHH-14968 remove method with no callers
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-22 13:08:02 +02:00
Sanne Grinovero c932da7890 HHH-17987 Improve allocation rate of ReflectHelper#setterMethodOrNull 2024-04-22 11:15:55 +01:00
Sanne Grinovero beefee96b5 HHH-17988 MetadataContext should consistently use ClassLoaderService 2024-04-22 11:14:35 +01:00
Sanne Grinovero e84370e063 HHH-17980 Excessive contention during getter identification in the ByteBuddy enhancer 2024-04-22 11:13:31 +01:00
Marco Belladelli 1fbed6598f HHH-17916 Check type is resolved before building generic property 2024-04-19 12:40:42 +02:00
Marco Belladelli 9163d50603 HHH-17916 Add test for issue 2024-04-19 12:40:42 +02:00
Gavin King aae9b1e55d talk about lock() and refresh() in javadoc preamble for Session
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-18 10:53:58 +02:00
Gavin King 38c56acd0b two minor improvements to javadoc
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-18 10:53:58 +02:00
Gavin King 810e5fc76d make javadoc consistent
yes, these methods actually do still accept detached objects
as of today, but that's already deprecated and we're going to
turn it off in the future

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-17 19:28:53 +02:00
Yanming Zhou 8fdf86e8a5 HHH-17951 Deprecate unused Size.LobMultiplier 2024-04-17 18:36:04 +02:00
Gavin King eb760db015 HHH-17969 test for issue
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-17 16:15:28 +02:00
Gavin King 5b28d1562e add an example to jdoc of SS.fetch()
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-17 13:49:24 +02:00
Gavin King 23163919f8
fix an NPE that occurred if a QL 'delete' statement had no predicate (#8190)
(bug exposed by Jakarta Data TCK)

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-17 02:35:27 +02:00
Gavin King 7e108433ea
HHH-17966 EAGER collections in StatelessSession (#8186) 2024-04-16 12:36:29 +02:00
Gavin King 1c71bb67f1 HHH-17955 rename some Interceptor callback methods
to better reflect their nature, and reduce confusion with
the new callbacks introduced for use with StatelessSession

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-15 21:21:26 +02:00
Gavin King 65a8ffdf0e HHH-17955 Javadoc improvements in StatelessSession
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-15 21:21:26 +02:00
Gavin King dd77ef651a HHH-17955 add Interceptor callbacks for StatelessSession
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-15 21:21:26 +02:00
Gavin King 9a4d21d71d HHH-17955 Bean Validation and @PostXxxx callbacks for StatelessSession
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-15 21:21:26 +02:00
Gavin King 59603dffb3 clean up weird code formatting in test
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-15 21:21:26 +02:00
Gavin King 7f89c6260e HHH-17954 initial implementation of collection persistence for StatelessSession
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-15 21:21:26 +02:00
Gavin King 6695617210 HHH-17953 fix StatelessSession.fetch() for empty collection
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-13 12:43:05 +02:00
Gavin King c0d2075ee6 move broken jdoc back where it belongs
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-13 11:04:47 +02:00
Steve Ebersole a996b6514e HHH-17559 - Prefer Java Time handling for all temporal values 2024-04-12 13:08:57 -05:00
Andrea Boriero add62a188b Fix SybaseASEDialect column lenght resolution 2024-04-12 19:27:41 +02:00
Andrea Boriero 781b9f4653 HHH-17761 Merging a bytecode enhanced entity with all properties set to null does not apply the update 2024-04-12 11:52:08 -05:00
Andrea Boriero 181d1e1966 HHH-17761 Add test for issue 2024-04-12 11:52:08 -05:00
marko-bekhta 12c01df281 HHH-17761 Add a reproducer 2024-04-12 11:52:08 -05:00
Andrea Boriero aa5e1184a5 Fix sybase LobSchemaUpdateTest failure 2024-04-12 11:46:07 -05:00
Steve Ebersole f68f6aae50 HHH-17946 - Avoid creating ProxyFactory if possible 2024-04-12 11:22:16 -05:00
Marco Belladelli 44aec90538 HHH-17783 Allow early initialization of entity instance by non-owning initializer 2024-04-12 11:14:46 -05:00
gtoison 710ea629a9 HHH-17918 test reproducing the issue 2024-04-12 11:14:46 -05:00
Marco Belladelli 07692edf9a HHH-17783 Add test for issue 2024-04-12 11:14:46 -05:00
Yanming Zhou 71234d90ae HHH-17912 Disallow multiple valued binding for BasicCollectionType 2024-04-12 11:00:23 -05:00
Christian Beikov b4603e0e40 HHH-17932 Get rid of unnecessary synchronization 2024-04-12 14:01:50 +02:00
Yanming Zhou 95403bc083 Use Integer.MAX_VALUE instead for better readability 2024-04-12 13:42:47 +02:00
Christian Beikov 62a973dce0 HHH-17947 Bidirectional association management shouldn't ignore maintaining inverse lazy objects 2024-04-12 13:28:21 +02:00
Christian Beikov c624048635 HHH-17947 Add additional test for unique key loading 2024-04-12 13:28:21 +02:00
Jan Schatteman 68049bbf74 HHH-17947 - Add test for issue
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2024-04-12 13:28:21 +02:00
Gavin King dd209f9851 add missing @since annotations
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-12 10:36:20 +02:00
Gavin King 0944b52bc3 add a missing @since annotation
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-11 23:59:54 +02:00
Andrea Boriero f27dc7d3a8 Fix mssql LobSchemaUpdateTest failure 2024-04-11 22:40:12 +02:00
Gavin King afc92451d9 HHH-17934 limit test to databases with proper MERGE support for now
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-11 16:52:30 +02:00
Gavin King e620fbb892 HHH-17934 sort out version handling in upsert()
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-11 16:52:30 +02:00
Gavin King 17df9bedf5 HHH-17934 generate a correct SQL merge statement
(adds the version check if necessary)

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-11 16:52:30 +02:00
Gavin King 3fe1f58c93 HHH-17934 test demonstrating bug
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-11 16:52:30 +02:00
Marco Belladelli bcbae00552 HHH-17832 Register projection usage for circular bidirectional fetch 2024-04-11 16:33:14 +02:00
Marco Belladelli 747a1024da HHH-17832 Add test for issue 2024-04-11 16:33:14 +02:00
Yanming Zhou d8df261847 Fix SqlTypes::isStringType 2024-04-11 13:48:06 +02:00
Yanming Zhou fc7fc47b64 Add more type name alias mappings
1. MySQL returns `int` even `integer` is specified
2. H2 returns `character large object` and `binary large object` even `clob` and `blob` is specified
2024-04-11 13:47:03 +02:00
Mohammad Yasin Sadeghi 64e52022bc correct a typo 2024-04-10 19:16:18 +02:00
Gavin King 0ea86a9d07 get rid of raw types and extract methods
eliminates compiler warnings

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-10 18:03:30 +02:00
Gavin King 97f96d841d improve error message, as suggested by Yoann
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-10 18:03:30 +02:00
Christian Beikov 2343bfa513 Skip DB2 test on old DB2 versions 2024-04-10 16:24:44 +02:00
Yoann Rodière 56105a8fc6 HHH-17935 Do not use the "auto-enable" feature for the tenant ID filter
This filter already gets enabled automatically where relevant, and
critically it's not relevant when using a "root" tenant identifier.
2024-04-10 14:43:53 +02:00