Commit Graph

12026 Commits

Author SHA1 Message Date
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
Marco Belladelli ce97a5da2c HHH-10921 Add test for issue 2024-04-09 17:16:39 +02:00
Andrea Boriero e95eaf6cb3 HHH-17887 Release mode After Statment with deferred result set access does not work 2024-04-09 07:46:52 +02:00
Andrea Boriero 189de9dab7 HHH-17887 Add test for issue 2024-04-09 07:46:52 +02:00
Gavin King 3fb0f83990 fix previous-page navigation with KeyedResultList
It was returning the results in reverse order.
This caused a failure in the Data TCK.

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-04-08 22:37:06 +02:00
Andrea Boriero b5e78cf9d0 HHH-17826 ResultSet closed while scrolling results 2024-04-08 16:26:57 +02:00
Andrea Boriero bd740f2dbf HHH-17826 Add test for issue 2024-04-08 16:26:57 +02:00
Marco Belladelli aa7575aabd HHH-17857 Use `fromNameExact` when determining actual table group 2024-04-08 16:17:19 +02:00
Marco Belladelli 5c51ff93c6 HHH-17857 Add test for issue 2024-04-08 16:17:19 +02:00
Christian Beikov bcae77fb32 HHH-17885 Fix for same named attribute of different Embedded uses same selection expression 2024-04-04 09:24:22 +02:00
Christian Beikov 1fe26bc7f4 HHH-17885 Test for same named attribute of different Embedded uses same selection expression 2024-04-04 09:24:22 +02:00
Andrea Boriero d18d925e10 HHH-17881 Unable to use a proxy as parameter in Query when the FK does not target the PK 2024-04-03 13:58:08 +02:00
Andrea Boriero 8c8e52eae9 HHH-17881 Add test for issue 2024-04-03 13:58:08 +02:00
Andrea Boriero c6a9278599 HHH-16672 Locking entities created in the same transaction fails 2024-04-03 13:56:18 +02:00
Daniel Mensinger ca2ae23f78 HHH-16672 test case 2024-04-03 13:56:18 +02:00
Marco Belladelli cf4af826fe HHH-17828 Special case for uninitialized enhanced proxies when locking 2024-04-03 09:54:21 +02:00
Daniel Mensinger 47d8bea6a4 HHH-17828 Add test for issue 2024-04-03 09:54:21 +02:00
Christian Beikov b567483f9f HHH-17908 Allow varchar for STRING enums on MySQL in schema validation 2024-04-02 16:43:30 +02:00
Christian Beikov dba8a54692 HHH-17898 Throw error if non-lateral from-clause subquery uses outer from node 2024-04-02 16:41:59 +02:00
Marco Belladelli 37714a6b1a HHH-17835 Custom ConvertedPrimitiveBasicTypeImpl type resolution 2024-04-02 12:48:17 +02:00
Marco Belladelli 50acce43c3 HHH-17835 Add test for issue 2024-04-02 12:48:17 +02:00
Marco Belladelli af747ad531 HHH-17803 Fix resolving enum basic path source mapping expressibles 2024-03-29 10:40:15 +01:00
Marco Belladelli 437a2e5cd3 HHH-17803 Add test for issue 2024-03-29 10:40:15 +01:00
Jan Schatteman edb1126d4d HHH-17493 - Merge WithJpaComplianceNegatedPredicateTest into NegatedPredicateTest (possible now after the merge of PR #7990)
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2024-03-28 23:04:22 +01:00
Gavin King 3dc5896a08 handle inner enum literal in HQL
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-03-28 22:32:41 +01:00
Gavin King ce317960fc handle unqualified enum values in @Query
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-03-28 22:32:41 +01:00
Gavin King f0c9d4ec4c make fully-qualified enum literals in @Query pass the validation
JD examples and TCK require this, though it's not really correct

Signed-off-by: Gavin King <gavin@hibernate.org>
2024-03-28 22:32:41 +01:00
Christian Beikov fe4a3fbaf3 HHH-17906 Use insert target paths for type inference of SqmValues 2024-03-28 17:02:20 +01:00
Christian Beikov d423b52be3 HHH-17904 Introduce config property to enable native enum type 2024-03-28 17:02:20 +01:00
Christian Beikov 95641b2366 HHH-17884 Respect ordering guarantee of ORDINAL/STRING when using native enums 2024-03-28 17:02:20 +01:00
Christian Beikov 7e29539153 HHH-17493 Ensure case insensitivity is retained in negated copy 2024-03-28 16:44:39 +01:00
Jan Schatteman 6717c7cba0 HHH-17493 - add tests and fix
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2024-03-28 16:44:39 +01:00
Yanming Zhou 3c2374de5c HHH-12202 Introduce ParameterType.getReturnedJavaType() as companion of getReturnedClass() 2024-03-28 16:09:16 +01:00
Vincent Bouthinon 915c8b8ead HHH-17871 Error if defining a ManyToAny in the child classes which references a @MappedSuperclass
Rename column "ROLE" to "ROLE_COL" for a problem with sybase
2024-03-28 16:07:35 +01:00
Vincent Bouthinon fdd3ded888 HHH-17871 Error if defining a ManyToAny in the child classes which references a @MappedSuperclass 2024-03-28 16:07:35 +01:00
Jan Schatteman 454e1cb774 HHH-17824 - Extend the use of @Jpa to test methods
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2024-03-28 08:51:49 -05:00
Steve Ebersole ddcfc54661 HHH-17429 - Complete implementation of HbmXmlTransformer (6.x)
HHH-16822 - Fail to marshall transformed content with HbmXmlTransformer
2024-03-28 07:12:20 -05:00
Gavin King 2955e0b91d spec-compliant inference of entity type in @Query
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-03-28 00:41:01 +01:00