Commit Graph

12182 Commits

Author SHA1 Message Date
Marco Belladelli 04ab85f155 HHH-18347 Fix cast type name using dialect's default size strategy
Also tests failing on MariaDB by avoiding `id` keyword as column name
2024-07-08 16:50:53 +02:00
Marco Belladelli cbe2f6ff89 HHH-17840 Fix `H2FormatJsonJdbcType` deprecation 2024-07-08 11:13:47 +02:00
Marco Belladelli 6bff7d30c8 HHH-18086 Include parent alias in NP identifier for table group 2024-07-08 11:12:19 +02:00
Marco Belladelli b392a5187d HHH-18086 Add test for issue 2024-07-08 11:12:19 +02:00
Marco Belladelli 1fe8b3c0d5 HHH-18017 Fix discriminator in shallow query cache check 2024-07-08 09:44:59 +02:00
Marco Belladelli ad3d985b52 HHH-18017 Add test for issue 2024-07-08 09:44:59 +02:00
imunic c5d5bc1922 HHH-17840 Fix inconsistency of read/write null JsonNode/JsonValue 2024-07-05 18:05:41 +02:00
Thomas Wearmouth a882fbdf0c HHH-18327 Add Agroal and HikariCP settings constants
HHH-18327 fix incorrect Agroal property names

HHH-18327 extend new connection pool settings in JdbcSettings

HHH-18327 use new HikariCPSettings constant in HikariConfigurationUtil

HHH-18327 add HikariCP settings constants

HHH-18327 improve wording

HHH-18327 use new AgroalSettings constant in AgroalConnectionProvider

additionally add AgroalSettings to javadoc and fix invalid see tag
2024-07-05 18:01:25 +02:00
Čedomir Igaly 859a945624 HHH-18291 predicate expression type resolved from expressible java type insted of direct java type 2024-07-05 17:27:02 +02:00
Čedomir Igaly 3ee4015fe9 HHH-18291 Test case; adapted from reproducer https://github.com/hibernate/hibernate-test-case-templates/pull/398/files 2024-07-05 17:27:02 +02:00
Vladimír Kuruc 2823dbeb76 Fixed Informix physical naming strategy compatibility 2024-07-05 17:04:44 +02:00
Vladimír Kuruc 1f1b86a085 HHH-18312 Suggested style changes 2024-07-05 16:55:37 +02:00
Vladimír Kuruc 711dffa7e3 HHH-18312 Fix for Informix nationalized JDBC types support 2024-07-05 16:55:37 +02:00
Vladimír Kuruc a6503e100e Informix Blob locator fix 2024-07-05 15:58:14 +02:00
Marco Belladelli f292908b67 HHH-18332 Fix DB2 support for procedure output ref_cursors parameters 2024-07-05 13:41:59 +02:00
Marco Belladelli 4c64ddc153 HHH-18332 Test stored procedures on DB2 2024-07-05 13:41:59 +02:00
Marco Belladelli a86b35e664 HHH-18085 Also remove loading holder when loading shallow cached entity 2024-07-05 10:25:11 +02:00
Marco Belladelli 06f301f463 HHH-18085 Add test for issue 2024-07-05 10:25:11 +02:00
Marco Belladelli 8971558281 HHH-18272 Check for `SqmAliasedNodeRef` when collecting group/order by 2024-07-04 16:50:14 +02:00
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