Commit Graph

10860 Commits

Author SHA1 Message Date
Laurent Klock bde1034aee HHH-16977 Fixed in NullPointerException in EntityEntryContext.downgradeLocks 2023-07-26 07:01:29 -04:00
Andrea Boriero c7bafd646a HHH-16895 @Check constraint not generated when annotated on entity 2023-07-26 12:10:22 +02:00
Andrea Boriero 9d8d626323 HHH-16895 Add test for issue 2023-07-26 12:10:22 +02:00
Andrea Boriero 9bb1327581 Revert "HHH-16959 Fail to batch delete entities with nested embeddeds"
This reverts commit 533c1cd22b.
2023-07-26 12:09:10 +02:00
Andrea Boriero 5ca06af029 Revert "HHH-16959 Add test for issue"
This reverts commit 6c767eab1f.
2023-07-26 12:08:56 +02:00
Andrea Boriero 533c1cd22b HHH-16959 Fail to batch delete entities with nested embeddeds 2023-07-26 12:04:05 +02:00
Andrea Boriero 6c767eab1f HHH-16959 Add test for issue 2023-07-26 12:04:05 +02:00
Adrodoc 148806fe2c HHH-16826: Refactor to avoid costly modulo operation for splitting in clauses
Co-authored-by: Christian Beikov <christian.beikov@gmail.com>
2023-07-26 11:50:51 +02:00
Adrodoc 68601df471 HHH-16826 - IN-Clause Parameter Padding should grow exponentially for Dialects with InExpressionCountLimit 2023-07-26 11:50:51 +02:00
Gavin King a438474f45 add some javadoc 2023-07-25 18:19:51 +02:00
Gavin King cbc572427d disable some tests on MySQL due to HHH-16989 2023-07-25 16:32:10 +02:00
Gavin King d3a1b4f33e add test for cast() with parameters in numeric expressions 2023-07-25 16:32:10 +02:00
Gavin King b53732d141 fix bug where parameters of cast target type were not passed along
This was yet another bug that resulted from what I've been warning about:
the use of untypesafe getChild() methods in SQB. So I've gone through and
removed even more of those, to further reduce the probability of this kind
of bug in the future.
2023-07-25 16:32:10 +02:00
Gavin King dfc282adb1 extremely minor cleanups to type descriptors 2023-07-25 16:32:10 +02:00
Christian Beikov e83008e75d Fix DB2 10.5 testsuite issues 2023-07-25 15:47:08 +02:00
Christian Beikov 1ba2203d7c Fix HANA and Oracle old testsuite failure due to id column only table with identity 2023-07-25 15:03:27 +02:00
Gavin King 7effc40e13 HHH-15939 test for fixed issue 2023-07-24 20:19:46 +02:00
Gavin King 05de3e487b clarify the semantics of hibernate.criteria.value_handling_mode 2023-07-24 18:31:50 +02:00
Andrea Boriero ec9747983d HHH-16825 Cascading an entity with a composite key causes NullPointerException in AbstractClassJavaType.extractHashCode 2023-07-24 17:58:45 +02:00
Andrea Boriero bf66bc7b78 HHH-16825 Add test for issue 2023-07-24 17:58:45 +02:00
Christian Beikov eb562d5078 HHH-16984 Disable use of arrays for batch and multi-loader on H2 2023-07-24 17:15:19 +02:00
Christian Beikov 90eb697020 HHH-16983 Avoid unnecessary allocations for HQL interpretation caching 2023-07-24 17:15:19 +02:00
Christian Beikov b9e5d3a6bc HHH-16982 Avoid unnecessary registerReloadedEntity calls 2023-07-24 17:15:19 +02:00
Christian Beikov 7915ad635a HHH-16981 Improve JdbcOperation caching 2023-07-24 17:15:19 +02:00
Gavin King 1d54f179b2 lightly reword javadoc for a setting 2023-07-24 14:28:03 +02:00
Gavin King 4057245de2 jdoc the default for a setting + add @since tags 2023-07-23 17:57:59 +02:00
Gavin King 6c435b02c9 support optional 'from' in @HQL query method generation
(as desired by Stef)
2023-07-23 15:51:14 +02:00
Gavin King 1c15267d3a HHH-16973 optional 'from' clause
(and cleanups to SQB)
2023-07-23 13:28:54 +02:00
Gavin King 2c5ee8f088 split UserComponentType out from ComponentType
and add CompositeType.replacePropertyValues()

this refactoring results in significant simplifications/cleanliness
2023-07-22 15:00:50 +02:00
Gavin King 47024e7bd5 miscellaneous code cleanups 2023-07-22 15:00:50 +02:00
Gavin King 57cbf2e16a update jdoc of @Find, @HQL, @SQL 2023-07-21 21:33:15 +02:00
Gavin King c15232141d add missing @since annotations 2023-07-21 21:33:15 +02:00
Gavin King 1d22d8e174 add some links to Javadoc overview 2023-07-21 21:33:15 +02:00
Sanne Grinovero a27f1e5cd8 HHH-16819 Pointing to legacy property (pre-Jakarta) in thrown exception of GroupsPerOperation 2023-07-21 12:04:25 -04:00
Victor Bonnier 36f3e4c289 HHH-16819 Corrected typo in JAKARTA_JPA_GROUP_PREFIX 2023-07-21 12:04:20 -04:00
Sanne Grinovero 042ea16b37 HHH-16963 Avoid H2's capability to register a JVM shutdown hook: causes classloader leaks during tests 2023-07-21 11:43:01 -04:00
Sanne Grinovero d812da6567 HHH-16964 Disable Log4J2's management beans during integration tests 2023-07-21 11:41:00 -04:00
Sanne Grinovero 0fa23aab81 HHH-16965 ByteCodeHelper test utility might occasionally not read the full bytestream 2023-07-21 06:15:46 -04:00
Jan Schatteman 38f5db334b HHH-16872 - Verify that statement fetch size is properly used
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2023-07-20 11:23:45 -05:00
Marco Belladelli 382037ec91 HHH-16860 Fix joined inheritance associations on root class 2023-07-20 11:09:27 -05:00
Marco Belladelli 79fe21648c HHH-16860 Add test for issue 2023-07-20 11:09:27 -05:00
Marco Belladelli 2a773b06ce HHH-16942 Make to-one's getJdbcTypeCount consistent with getSelectable
Also, cleanup some duplicated code in UpdateCoordinatorStandard
2023-07-20 09:17:46 -05:00
Marco Belladelli 78cc85aa05 HHH-16849 Fix partition key inside multi-column foreign key 2023-07-20 09:17:46 -05:00
Marco Belladelli b9e8d71dc8 HHH-16849 HHH-16942 Add test for issue 2023-07-20 09:17:46 -05:00
norbert_wirges f55c017f59 HHH-16907 moved if from inside private method to around
This improves performance of cascadeLogicalOneToOneOrphanRemoval
handling, because entity fields are only read by reflection if the field
is actually a 1:1 relation (before the change, this was done every time
for every field)
2023-07-20 09:15:33 -05:00
Gavin King 7c378847cb HHH-16912 return null from deprecated method instead of producing a CCE
This is a band-aid over an error occurring in Liquibase. But it seems to
me that Liquibase itself should be updated to use the new APIs.
2023-07-20 09:06:40 -05:00
Andrea Boriero 75d834efe9 HHH-16890 StackOverflowError when loading entities with @Proxy(lazy = false) 2023-07-20 16:04:35 +02:00
gtoison abaaa09225 HHH-16890 Add test for issue 2023-07-20 16:04:35 +02:00
Steve Ebersole fca25adde9 HHH-16955 - Better define how joins are handled with implicit Query select clause 2023-07-20 08:26:00 -05:00
Gavin King 17503d93c6 misc Javadoc improvements around event listeners 2023-07-20 12:32:21 +02:00
Marco Belladelli 28d9c65293 HHH-16908 Mapping error when using unowned associations as identifiers 2023-07-20 09:41:16 +02:00
Jan Schatteman 93b1b6a48c HHH-16908 Add test for issue 2023-07-20 09:41:16 +02:00
Steve Ebersole cd24ddf8e6 HHH-16765 - Cannot parse quoted table name 2023-07-19 14:16:01 -05:00
Steve Ebersole e2504647d4 HHH-13741 - LOG_SLOW_QUERY parameter doesn't always log SQL 2023-07-19 11:35:52 -05:00
Andrea Boriero 300667223c HHH-16943 Column ordering leads to wrong column order in unique constraints + HHH-16953 Hibernate doesn't observe column order on multicolumn indexes 2023-07-19 17:41:29 +02:00
Andrea Boriero 1e5b87f1d9 HHH-16953 Ad test for issue 2023-07-19 17:41:29 +02:00
Benedikt Waldvogel bde99e8a1c HHH-16943 Add UniqueConstraintColumnOrderTest showing the column order issue 2023-07-19 17:41:29 +02:00
Andrea Boriero 085fd88a7f HHH-15917 Unrelated Entity Join throws IllegalStateException 2023-07-19 15:58:31 +02:00
Andrea Boriero b0ac15af42 HHH-15917 Add test for issue 2023-07-19 15:58:31 +02:00
Marco Belladelli 97be9b31cf HHH-16837 Avoid passing domain path's NP when resolving table reference 2023-07-19 13:03:59 +02:00
Marco Belladelli 26eaa5a6df HHH-16837 Add test for issue 2023-07-19 13:03:59 +02:00
Marco Belladelli 2c7706eac8 HHH-16803 Specially handle enum classes in nullLiteral 2023-07-19 13:03:20 +02:00
Marco Belladelli 7333221c08 HHH-16803 Add test for issue 2023-07-19 13:03:20 +02:00
Gavin King e5371386a4 remove order-by list from the query plan cache key
Roll back my always-intended-to-be-temporary bandaid to allow
caching of the query plan after calls to setOrder(). Instead,
just disable caching of the query plan. When the query plan
cache can handle caching of criteria queries, change to use
that strategy instead.
2023-07-18 20:08:06 +02:00
Andrea Boriero e2ec3cd3e7 HHH-16812 StackOverflowError an embeddable's @Parent is a subclass in an inheritance tree 2023-07-18 17:55:40 +02:00
Andrea Boriero 2c2fd9df75 HHH-16812 add test for issue 2023-07-18 17:55:40 +02:00
gtoison 4d79376be9 HHH-16812 Test reproducing the issue
It seems that when trying to call the Smell.setCheese()setter and when
the entity is an uninitialized Food proxy there’s a ClassCastException
(maybe the proxy should be narrowed to the actual class of the entity)
and then it tries to build an exception but to do that it needs to
initialize the entity and that fails again with the same problem.
Building the exception fails because PropertySetterAccessException tries
to call the toString method of the uninitialized proxy.
2023-07-18 17:55:40 +02:00
Jan Schatteman 58c10758e0 HHH-16515 - Add o.h.property.access.spi to nullness checking
HHH-16515 - Add o.h.property.access.internal to nullness checking

Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2023-07-18 14:33:00 +02:00
Marco Belladelli 22091b2254 HHH-16494 Reworked pruning for joined inheritance persister
Added handling of subclasses with the same table name and discriminator condition.
Also avoid useless left-joins when not finding table references instead of throwing an exception.
2023-07-18 14:02:19 +02:00
Marco Belladelli fed020e110 HHH-16494 Treat entity and attribute joins for inheritance subtypes 2023-07-18 14:02:19 +02:00
Marco Belladelli 3e3fd6f0be HHH-16494 Add test for issue 2023-07-18 14:02:19 +02:00
Marco Belladelli 3c62691dc4 HHH-16709 Use embeddable type's compare for embedded attribute mappings 2023-07-18 13:58:34 +02:00
Marco Belladelli 54382e09ea HHH-16709 Add test for issue 2023-07-18 13:58:34 +02:00
Marco Belladelli baf667b47b HHH-16667 Use identifier table key mapping in version update restriction 2023-07-18 11:51:45 +02:00
Marco Belladelli 8f9d5e4322 HHH-16667 Add test for issue 2023-07-18 11:51:45 +02:00
Marco Belladelli 475ea7a895 HHH-16754 Use current query part when checking selected group by paths 2023-07-18 11:50:21 +02:00
Marco Belladelli e17aa601cc HHH-16754 Add test for issue 2023-07-18 11:50:21 +02:00
Marco Belladelli 8f85f0a6d9 HHH-16871 Simplified maximum fetch depth condition 2023-07-18 11:48:24 +02:00
Marco Belladelli 7be0411b4e HHH-16871 Add test for issue 2023-07-18 11:48:24 +02:00
Marco Belladelli d00fb626af HHH-16905 Account for identifiers in getNavigablePathCopy 2023-07-18 11:46:41 +02:00
Marco Belladelli f368b32086 HHH-16926 Add test for issue 2023-07-18 11:46:41 +02:00
Marcel Triller b738dc936c HHH-16905 Add Test for Issue 2023-07-18 11:46:41 +02:00
Jan Schatteman ad36a76968 HHH-16515 - Add o.h.jdbc to nullness checking
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2023-07-18 10:03:24 +02:00
Jan Schatteman 2e73795e4b HHH-16515 - Add o.h.exception to nullness checking
HHH-16515 - Add o.h.integrator to nullness checking

HHH-16515 - Add o.h.service to nullness checking

HHH-16515 - Add o.h.engine.jndi to nullness checking

HHH-16515 - Add o.h.engine.config to nullness checking

Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2023-07-17 21:56:22 +02:00
Marco Belladelli 43954c45e9 HHH-16790 Always lazily read SQL selection's jdbc values 2023-07-17 17:09:55 +02:00
Andrea Boriero 188529da36 HHH-16833 Assertion Error when inserting two entities linked with a OneToOne relation 2023-07-17 14:06:04 +02:00
Andrea Boriero 5d85db9211 HHH-16833 Add test for issue 2023-07-17 14:06:04 +02:00
Andrea Boriero fef04bc62e HHH-16923 Deleting all entities of a given type fails when using a composite primary key and order_updates 2023-07-17 11:01:43 +02:00
Andrea Boriero c8842b4e5b HHH-16923 Add test for issue 2023-07-17 11:01:43 +02:00
Gavin King 4d005b3d19 more info about the metamodel in the javadoc for SessionFactory 2023-07-16 15:39:20 +02:00
Gavin King 5cee742698 HHH-16940 add typesafe ref to ManagedType in metamodel classes 2023-07-16 15:27:12 +02:00
Gavin King 8611abe902 improve a couple of exception messages 2023-07-16 15:27:12 +02:00
Gavin King 52bfbe06f2 HHH-16633 validate the return type of @HQL query methods
(including constructors for record returns)
2023-07-16 15:27:12 +02:00
Gavin King df11070c77 fix three warnings in StringHelper 2023-07-16 09:57:58 +02:00
Sanne Grinovero 64216dd2c9 HHH-16728 Optimise iteration of AssociationType properties within a Persister 2023-07-15 16:26:36 -04:00
Gavin King a1abc1af93 make it easier to use the Action enum with Configuration 2023-07-15 13:40:30 +02:00
Sanne Grinovero b214eb332d HHH-16884 Improve efficiency of UpdateCoordinatorStandard in tracking tables to be updated 2023-07-15 05:05:02 -04:00
Jan Schatteman 314f2d7b7a Revert "HHH-16515 - Add o.h.exception to nullness checking"
This reverts commit c5c3bb8ac8.
2023-07-15 00:38:45 +02:00
Jan Schatteman c5c3bb8ac8 HHH-16515 - Add o.h.exception to nullness checking
HHH-16515 - Add o.h.integrator to nullness checking

HHH-16515 - Add o.h.service to nullness checking

HHH-16515 - Add o.h.engine.jndi to nullness checking

HHH-16515 - Add o.h.engine.config to nullness checking

Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2023-07-14 21:42:25 +02:00
Sanne Grinovero c0a6e6f0fc HHH-16900 Move EntityMutationOperationGroup to the same package as related APIs 2023-07-14 06:41:45 -04:00
Sanne Grinovero d0e3298e9d HHH-16900 Restore API combatibiliy by using deprecated default methods 2023-07-14 06:41:45 -04:00
Sanne Grinovero 7d0da9e505 HHH-16900 Optimise implementations of MutationOperationGroup 2023-07-14 06:41:45 -04:00
Sanne Grinovero 441d280109 HHH-16900 Avoid using the old method, ensure by removing the deprecated methods 2023-07-14 06:41:45 -04:00
Sanne Grinovero 045f25511c HHH-16900 Refactor integration tests 2023-07-14 06:41:45 -04:00
Sanne Grinovero c1767adee7 HHH-16900 Rework also the MutationGroup APIs 2023-07-14 06:41:45 -04:00
Sanne Grinovero c608ee3a98 HHH-16900 Rework mutation group API 2023-07-14 06:41:45 -04:00
Andrea Boriero 814923dd46 HHH-16810 Fail to delete entity with a composite id using an @IdClass with one of its fields mapped from the id of a @ManyToOne association 2023-07-14 11:32:20 +02:00
Andrea Boriero b9e2105639 HHH-16810 Add test for issue 2023-07-14 11:32:20 +02:00
Andrea Boriero dac288d1bb HHH-16811 Dirty property lost and not detected with Batch Fetch, Embedded and FetchMode SELECT 2023-07-14 11:25:03 +02:00
Andrea Boriero ac9a5fc42c HHH-16811 Add test for issue 2023-07-14 11:25:03 +02:00
Andrea Boriero ebfaf1c707 HHH-16586 When merging a persisted entity with a null Version, Hibernate treats entity as transient instead of throwing an Exception 2023-07-14 11:20:29 +02:00
Andrea Boriero daf8bcc581 HHH-16586 Add test for issue 2023-07-14 11:20:29 +02:00
Gavin King 5a07e2b61d fix a test which was failing on h2 version 1.x 2023-07-13 23:14:50 +02:00
Gavin King e125a818e3 HHH-16899 add restrict() to CriteriaDefinition 2023-07-13 23:12:16 +02:00
Gavin King af7e7b9afc make it possible to get a named EntityGraph without an unchecked typecast 2023-07-13 18:20:41 +02:00
marko-bekhta 35ea74ec54 HHH-16695 Make AbstractQuery backwards compatible 2023-07-13 18:19:47 +02:00
Steve Ebersole 8386e1851e HHH-16917 - Number not allowed as type for procedure query parameter 2023-07-13 08:48:35 -05:00
Marco Belladelli 0aa5b5018f HHH-16845 Fix collection key parameter 2023-07-13 13:43:26 +02:00
Marco Belladelli 29d2ef730e HHH-16845 Add test for issue 2023-07-13 13:43:26 +02:00
Gavin King 7c67097fb0 HHH-16815 fixes to Page class
- prevent construction of negative Pages
- add Page.isFirst()
- fix impl of Page.previous()
2023-07-13 12:41:23 +02:00
Gavin King 0c1a49604e minor Javadoc improvement to SchemaManagementToolCoordinator 2023-07-13 12:40:31 +02:00
Gavin King 376a90f9b5 Bytebuddy -> Byte Buddy 2023-07-12 21:45:26 +02:00
Gavin King 99d8bf0832 improve Javadoc of org.hibernate.annotations.processing 2023-07-10 14:36:32 +02:00
Gavin King 605a732e05 HHH-16914 add support for EntityGraphs to NaturalIdLoadAccess and SimpleNaturalIdLoadAccess 2023-07-10 14:36:32 +02:00
Gavin King d5c4e2673b HHH-16695 fill in missing javadoc 2023-07-10 14:36:32 +02:00
Gavin King db4d529f60 HHH-16633 generate query methods from @NamedQuery annotations 2023-07-10 14:36:32 +02:00
Gavin King 87a320615c HHH-16695 make fetch profiles actually work for natural id loading 2023-07-10 14:36:32 +02:00
Gavin King 17ea1e28b9 HHH-16633 add ability to specify fetch profiles in @Find annotation 2023-07-10 14:36:32 +02:00
Gavin King 09f110254f HHH-16695 add enableFetchProfile() to XxxxIdLoadAccess 2023-07-10 14:36:32 +02:00
Gavin King 2e351831f1 HHH-16695 add enableFetchProfile() to Query 2023-07-10 14:36:32 +02:00
Gavin King 294ec27885 HHH-16913 EntityGraph support for StatelessSession 2023-07-08 19:18:26 +02:00
Gavin King 6b7d5bae3d HHH-16899 refinements to the CriteriaDefinition API 2023-07-08 18:06:21 +02:00
Gavin King f3eb0ec770 HHH-16899 allow the CriteriaDefinition to modify an existing query 2023-07-08 18:06:21 +02:00
Gavin King b4b2b295fc HHH-16899 avoid capturing the Session in CriteriaDefinition [as suggested by Sanne] 2023-07-08 18:06:21 +02:00
Gavin King 2d92edd6bb HHH-16899 add test for CriteriaDefinition 2023-07-08 18:06:21 +02:00
Gavin King 7db99d8661 add a link in some package-level javadoc 2023-07-08 18:06:21 +02:00
Gavin King 67ac383c26 HHH-16899 add CriteriaDefinition utility class 2023-07-08 18:06:21 +02:00
Gavin King a440046556 HHH-16898 add JpaExpression.equalTo() 2023-07-08 18:06:21 +02:00
Gavin King d7fd5bd78a HHH-16633 add ability to generate @Find methods for @NaturalIds and arbitrary field lists 2023-07-07 22:44:07 +02:00
Gavin King 0c40711563 HHH-16633 add ability to generate @Find methods 2023-07-07 22:44:07 +02:00
Gavin King d83f472e18 HHH-16909 expose slow queries via Statistics API 2023-07-07 13:25:00 +02:00
Gavin King 33700597af HHH-16909 make setting for slow query logging obey our naming conventions 2023-07-07 13:25:00 +02:00
Yoann Rodière 94b33e6198 HHH-16892 Fix LocalXmlResourceResolver not resolving some dtd URLs that use the https scheme 2023-07-07 13:06:02 +02:00
Dennis Katz 5aac28cb9e HHH-16886 fixed by adding parenthesis
HHH-16886 fixed by adding parenthesis

HHH-16886 test added

HHH-16886 move test to query package and some fixes
2023-07-07 10:22:50 +02:00
Gavin King 135871dbd9 batch of minor improvements to the parser/SemanticQueryBuilder (typesafety) 2023-07-06 12:37:00 +02:00
Gavin 980bf4d8ab restrict offset/fetch to be a Number in the Jpa/Sqm tree types 2023-07-06 10:47:17 +02:00
Gavin 98a83a082c add lots @Override annotations and some generic type args in Jpa types
removed an unused and unimplemented interface
2023-07-06 10:47:17 +02:00
Gavin 41fe405aa7 HHH-16866 remove usages of Sqm types from Jpa APIs
There were quite a few layer-breakers here.

The org.hibernate.criteria package is supposed to be an abstraction over
the SQM tree. It should not leak types from the org.hibernate.sqm package.
2023-07-06 10:47:17 +02:00
Gavin King f933b064e9 HHH-16633 support new Order and Page objects as parameters of query methods 2023-07-06 01:02:15 +02:00
Sanne Grinovero 19a75aad9e Add note about Hibernate Reactive usage 2023-07-05 17:55:08 +01:00
Gavin King 73c8479bf4 HHH-16815 rename paginate() -> setPage
fix a bug in Page class
2023-07-05 14:43:12 +02:00
Gavin King 7227831d56 HHH-16815 rename getSortOrder() -> getSortDirection() 2023-07-05 13:23:15 +02:00
Gavin King f2d6373409 HHH-16815 finally settle on using a List or Order objects 2023-07-05 13:23:15 +02:00
Gavin King c29db563b5 aesthetic improvements to NullPrecedence enum 2023-07-05 13:23:15 +02:00
Gavin King 49f890d781 move NullOrdering to the Dialect package where its usages are 2023-07-05 13:23:15 +02:00
Gavin King 1e46146b54 HHH-16815 more convenient pagination via Query API
- add Page convenience class
- add Query.paginate(int, int)
- add Query.paginate(Page)
2023-07-05 13:23:15 +02:00
Gavin King f7e12d49ed HHH-16815 more flexible sorting via Query API
- added Query.sort(SortOrder,SingularAttribute)
- added Query.sort(Sort...)
- added Sort class for convenience
- moved SortOrder to org.hibernate.query
  (its package was @Incubating)
- move NullPrecedence enum
2023-07-05 13:23:15 +02:00
Gavin King 5c318ea974 HHH-16875 enable test on MySQL and Maria 2023-07-05 00:55:35 +02:00
Gavin King 01dabaa2de HHH-16875 add a test involving JPQL function() construct 2023-07-05 00:55:35 +02:00
Gavin King cd02a961c8 HHH-16875 be a bit more forgiving when type checking expressions involving unknown HQL functions
Let's not reject expressions like:

    function('current_user') = 'username'

also add QueryArgumentException
2023-07-05 00:55:35 +02:00
Gavin King 28b1670d18 HHH-16887 also validate arguments of @NamedQuery if @CheckHQL is specified 2023-07-04 19:53:15 +02:00
Gavin King 445f2cbdd8 very minor change 2023-07-04 19:53:15 +02:00
Sanne Grinovero 445d92aedb HHH-16877 Efficient lookup of MutationExecutorService 2023-07-04 16:50:07 +01:00
Andrea Boriero 39bc616cd9 HHH-16853 Setting Named Query Parameters is VERY slow 2023-07-04 11:43:51 +01:00
Gavin King 67fab3df5b rename Discriminatable -> Discriminable
Since "discriminatable" is not standard English
2023-07-03 17:30:05 +02:00
Gavin King a2e95b2b70 whitespace changes 2023-07-03 17:30:05 +02:00
Gavin King b6eabdf17d add missing @Override annotations
and Extract a function
2023-07-03 17:29:20 +02:00
Gavin King 617ce3206e cleanup more generic typing issues around paths and graphs
simplify the whole appliesTo() thing which was convoluted and overly-complex
2023-07-03 17:29:20 +02:00
Gavin King 6299ceb61d fix up lots of errors in generic typing related to DomainTypes...
...and reduce coupling to JpaMetamodel. This is useful for tools like
Query Validator which need to instantiate these metamodel objects in a
"mocked" environment. It will also make it possible for the Metamodel
Generator to generate static references to these metamodel objects.
2023-07-03 17:29:20 +02:00
Andrea Boriero 4adafc2757 HHH-15720 Using multiple select in a multiselect generates java.lang.ArrayIndexOutOfBoundsException 2023-07-03 10:38:22 +02:00
Andrea Boriero 551043a4de HHH-15720 Add test for issue 2023-07-03 10:38:22 +02:00
Gavin King d32e8adaf2 detach EntityGraphs from the JpaMetamodel
so that they can be newed more easily
2023-07-02 09:52:47 +02:00
Gavin King 1e05e8444e clean up lots of warnings in org.hibernate.graph 2023-07-02 09:52:47 +02:00
Gavin King bc901f5162 HHH-16875 improve typechecking for comparisons of embeddables, tuples, entities 2023-06-30 23:12:18 +02:00
Marco Belladelli 63cccf87dc HHH-16792 Unqualify table expressions for cte table names 2023-06-30 17:05:57 +02:00
Marco Belladelli 520394a790 HHH-16792 Add test for issue 2023-06-30 17:05:57 +02:00
Christian Beikov 33a3ff2994 Switch to correct skip-dialect annotation for Cockroach test-skipping 2023-06-30 10:34:20 +02:00
Sanne Grinovero 2acda737d2 HHH-16873 Expose fast-path cloning constructors for UpdateCoordinatorStandard 2023-06-30 08:46:32 +01:00
Jan Schatteman 11aa022aa2 HHH-16868 - add test for issue (no fix required)
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2023-06-29 21:34:31 +02:00
Gavin King 1e4b9e8ffb
HHH-16858 improve typechecking for comparisons/assignments (#6910)
* HHH-16858 improve typechecking for comparisons/assignments

In particular, correctly typecheck comparisons between enums
and other enums, and literal integers / strings. Actually
I'm not a great fan of comparing enums with int/string literals
but since we used to support it in 5, and kinda mostly support
it in earlier releases of 6, on balance we might as well continue
to allow it.

* improve typechecking for arguments to min() & max()

- use the known JdbcType which previously we didn't have
  proper access to
- and accidentally fix HHH-16859 by side-effect
  (I didn't really want to fix that one, but it was easier
  to fix it than to unfix it.)

* HHH-16858 handle MySQL enum types correctly in comparison typecheck
2023-06-29 00:36:29 +02:00
Christian Beikov 9464aecc78 HHH-14078 Avoid duplicate elements when initializing bag with queued operations 2023-06-28 17:31:24 +02:00
Sanne Grinovero dfa26e0b5c HHH-16815 Improvements in SqmInterpretationsKey 2023-06-28 09:40:07 +01:00
Marco Belladelli 4095e16212 HHH-16642 Restrict conjuct type predicate to treated roots 2023-06-28 09:21:17 +02:00
Marco Belladelli 00d13050f1 HHH-16642 Add test for issue 2023-06-28 09:21:17 +02:00
Gavin King 2a3bab5e81 HHH-16857 fix the syntax for NVARCHAR literals on SQL Server
and improve an error message
2023-06-28 00:10:40 +02:00
Gavin King 3c2d4f9616 HHH-16814 add getRootList()
The method getRoots() returning a Set is really inconvenient
2023-06-27 16:38:26 +02:00
Christian Beikov b6a1aefa6f HHH-13857 Improve javadoc
Co-authored-by: Steve Ebersole <steve@hibernate.org>
2023-06-27 15:54:32 +02:00
Christian Beikov ed472eff8a HHH-13857 Avoid initialization when obtaining persistent class with Hibernate.getClass() 2023-06-27 15:54:32 +02:00
Steve Ebersole 60b6fe3d9f HHH-16514 - Property sorting can lead to incorrect column mappings with derived embeddable keys 2023-06-27 08:12:32 -05:00
Gavin King 145b7e5d90 add decent javadoc blurb to HibernateCriteriaBuilder and package 2023-06-27 13:07:36 +02:00
Gavin King da7f169371 HHH-16814 add HibernateCriteriaBuilder.createQuery(hql, resultType)
- also add missing createCriteriaInsertValues() method
- also add some missing @Incubating annotations
2023-06-27 13:07:36 +02:00
Andrea Boriero bdcc619e29 HHH-16820 When batching enabled the LockModeType is ignored 2023-06-27 10:18:20 +02:00
Andrea Boriero bbbf8e969b HHH-16820 Add test for issue 2023-06-27 10:18:20 +02:00
Andrea Boriero ab36d29e1a HHH-16839 Failing to update a one-to-one lazy association with and enabled bytecode enhancement 2023-06-27 10:15:52 +02:00
marko-bekhta 387cde33d1 HHH-16839 Add a test case to reproduce the issue 2023-06-27 10:15:52 +02:00
Christian Beikov cbf5ee8e45 Use VARCHAR registered JdbcType's type code instead of NationalizationSupport to fix HANA test issues 2023-06-27 09:42:36 +02:00
Marco Belladelli c1c912d034 HHH-16733 Reuse correct navigable path for correlated and treated copy 2023-06-27 09:21:53 +02:00
Marco Belladelli c06d6053b3 HHH-16733 Use existing SQM copy logic in QuerySplitter 2023-06-27 09:21:53 +02:00
Marco Belladelli 0d3628afd3 HHH-16733 HHH-16582 Add test for issue 2023-06-27 09:21:53 +02:00
Gavin King bec6cfab12 HHH-16848 add SelectionQuery.ascending(int) & descending(int) 2023-06-26 20:59:53 +02:00
Jan Schatteman 23df9eb785 Fixing a few typos
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2023-06-26 19:53:05 +02:00
Gavin King ade28621c2 don't throw away the cause of an exception 2023-06-26 19:19:08 +02:00
franz1981 99da69fdc1 HHH-16462 Share the same Jandex Indexer while indexing different files 2023-06-26 19:11:24 +02:00
Christian Beikov eece96bb12 Remove HANA related double precision tests that became obsolete since drivers were updated 2023-06-26 18:59:36 +02:00
Christian Beikov 4453681e00 Use NationalizationSupport in some tests to fix HANA test issues 2023-06-26 18:59:36 +02:00
Christian Beikov 187b42391f Add missing repeat function registration for HANA 2023-06-26 18:59:36 +02:00
Christian Beikov aeb78bc7d6 Fix QueryLiteral assertion error in table based multi-table insert handling 2023-06-26 18:59:36 +02:00
Christian Beikov 4903b2f14d Skip a test on Cockroach and add PostgreSQL version requirement for other test. 2023-06-26 18:59:36 +02:00
marko-bekhta 876f6db487 HHH-16799 Don't fall back to field access type too early 2023-06-26 18:22:32 +02:00
Andrea Boriero b1b654d702 HHH-16821 Fail to delete entity with a composite id using an @IdClass with one of its fields mapped from the id of a @ManyToOne association 2023-06-26 18:12:00 +02:00
Andrea Boriero 1139322f23 HHH-16281 Add test for issue 2023-06-26 18:12:00 +02:00
Andrea Boriero 1b3f728703 HHH-16832 Bytecode enhancement leads to broken constructor for a generic embedded field in a MappedSuperclass 2023-06-26 18:09:53 +02:00
Yoann Rodière 35206ddb19 HHH-16832 Reproducer
As far as I can see, the problem is in:

5a63d8758a/hibernate-core/src/main/java/org/hibernate/bytecode/enhance/internal/bytebuddy/InlineDirtyCheckingHandler.java (L88-L90)

`GetterMapping` doesn't seem to work correctly when the getter is
defined in the superclass with a more abstract type.
2023-06-26 18:09:53 +02:00
Christian Beikov a098abff42 Handle timeout exception for older H2 versions and igonre a test for Cockroach 2023-06-26 17:49:18 +02:00
Gavin King d16808e015 HHH-16815 tests for ascending()/descending() with parameters 2023-06-26 17:00:53 +02:00
Gavin King 5d05dd8478 HHH-16815 don't copy parameters, since they have identity equality 2023-06-26 17:00:53 +02:00
Jan Schatteman a3abac9065 HHH-16515 - Add o.h.engine.transaction to nullness checking
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2023-06-26 16:12:14 +02:00
Jan Schatteman e7d0bd0955 HHH-16515 - Add o.h.engine.profile to nullness checking
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2023-06-26 16:12:14 +02:00
Sanne Grinovero ea56fbdb53 Deleting some unused code 2023-06-26 14:38:59 +01:00
Sanne Grinovero e9f879d9d6 Automated cleanup: inefficient branching (thanks IntelliJ) 2023-06-26 14:38:59 +01:00
Sanne Grinovero 0fb5895d08 Automated cleanup: suboptimal string handling (thanks IntelliJ) 2023-06-26 14:38:59 +01:00
Gavin King 4bd5ebad4e HHH-16619 don't generate table aliases beginning with _
- because Oracle hates that
- also, as suggested by @sebersole common in code, start
  generating "acronym"-based aliases
2023-06-26 00:35:01 +02:00
Gavin King cb7b364b46 fix 'is distinct from' predicate on HSQL
the semantics of the built-in operator are different to our semantics
2023-06-25 23:24:20 +02:00
Gavin King 1807e1cc43 extra test for 'is distinct from' 2023-06-25 23:24:20 +02:00
Gavin King b7120a60a3 minor change to grammar for readability 2023-06-25 23:24:20 +02:00
Gavin King f77067b1b3 HHH-16843 fix interpretation of 'value = null' in HQL
the previous implementation was not compliant with the
JPA spec and defied logic
2023-06-25 19:21:29 +02:00
Gavin King f13b6cc16b remove unused interface QueryPlanCache 2023-06-25 16:19:26 +02:00
Gavin King d6ffb75251 HHH-16829 skip test on TiDB 2023-06-25 15:26:13 +02:00
Gavin King 987a0dfe3c HHH-16801 add HQL 'is true', 'is not true', 'is false', 'is not false' operators 2023-06-25 15:18:27 +02:00
Gavin King e2100bc185 HHH-16829 fix test in CI 2023-06-24 21:39:27 +02:00
Gavin King ae1215ca35 HHH-16829 add @Collate annotation 2023-06-24 21:39:27 +02:00
Gavin King 0b191e0b1b correct a ref to a property, and squash warnings in AvailableSettings 2023-06-24 13:58:07 +02:00
Gavin King 1603e4a472 add test for StatelessSession.upsert() 2023-06-24 02:08:03 +02:00
Gavin King 79c58bbcc8 HHH-16815 fix issues with query plan cache and ascending()/descending() 2023-06-22 23:14:31 +02:00
Christian Beikov 28043f8fc4 HHH-16711 Ensure static accessor methods for accessing foreign package state use visible types 2023-06-22 13:40:12 +02:00
Jan Schatteman 2076fc0976 HHH-16711 / HHH-16707 - Added tests for these related issues
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2023-06-22 13:40:12 +02:00
Christian Beikov f2493040e3 HHH-15435 Improve error when using derived root in context that needs expansion 2023-06-22 11:44:53 +02:00
Marco Belladelli 02e2172778 HHH-16602 Dedicated action queue priority for orphan collection removals 2023-06-22 11:30:47 +02:00
Jan Schatteman 4d72a10cba HHH-16701 Add test for issue
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2023-06-22 11:30:47 +02:00
Marco Belladelli c07f9062d3 HHH-16602 Add test for issue 2023-06-22 11:30:47 +02:00
Christian Beikov f19e971de5 HHH-14703 Testcase showing that @Enumerated is picked up through implicit access type 2023-06-21 18:32:30 +02:00
Christian Beikov 98e028c51d HHH-14483 Split insert-values statement if dialect doesn't support values lists 2023-06-21 18:24:33 +02:00
Christian Beikov 8809e5720c HHH-16831 Replace string concat with proper string format for logging 2023-06-21 16:33:02 +02:00
Scott Marlow 6c6df62e36 HHH-16275 fix whitespace
Signed-off-by: Scott Marlow <smarlow@redhat.com>
2023-06-21 11:32:32 +02:00
Scott Marlow bb76426b5b HHH-16275 also wait longer for LockTest.testLockUpdateFkTarget
Signed-off-by: Scott Marlow <smarlow@redhat.com>
2023-06-21 11:32:32 +02:00
Scott Marlow d208dda7e7 HHH-16275 wait longer for LockTest.testLock*FkTarget to insert row on the database server to avoid occasional fail with timeout getting lock
Signed-off-by: Scott Marlow <smarlow@redhat.com>
2023-06-21 11:32:32 +02:00
Yoann Rodière 23dafff99e Fix a few invalid file headers
Looks like my IDE was misconfigured when I contributed those files.
2023-06-21 10:56:30 +02:00
Christian Beikov bbb7bcf389 HHH-16721 Make sure join predicate is propagated to correlation on lazy initialization 2023-06-20 18:40:37 +02:00
Christian Beikov 1cc94c76b9 HHH-16589 Limit in clause padding to Dialect.getInExpressionCountLimit and fix negated in predicate splitting 2023-06-20 18:37:06 +02:00
Adrodoc 56955367ba HHH-16589 In clause padding can no longer cause in clauses to exceed Dialect.getInExpressionCountLimit 2023-06-20 18:37:06 +02:00