Commit Graph

10853 Commits

Author SHA1 Message Date
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
Gavin King 4e7c5df4fe note uniqueness of names in the Javadoc 2023-06-20 17:53:04 +02:00
marko-bekhta a63eed837d HHH-16815 Add default implementation throwing an exception for sorting methods on Query 2023-06-20 17:29:37 +02:00
marko-bekhta ada88805f8 HHH-16815 Remove some unused methods 2023-06-20 17:29:37 +02:00
Marco Belladelli cbac1b82c0 HHH-16773 Fix functional dependency support for TiDB and Cockroach 2023-06-20 14:21:23 +02:00
Marco Belladelli fd690f378d HHH-16784 Always resolve generic interface classes to Object type 2023-06-20 14:20:34 +02:00
Marco Belladelli eb53368115 HHH-16784 Add test for issue 2023-06-20 14:20:34 +02:00
Andrea Boriero 55f46ced44 HHH-16461 @Version + session.refresh(entity, LockMode.PESSIMISTIC_WRITE) leads to StaleObjectStateException 2023-06-20 12:21:59 +02:00
Yoann Rodière f78c5d375d HHH-16461 Test @Version + session.refresh(entity, LockMode.PESSIMISTIC_WRITE) 2023-06-20 12:21:59 +02:00
Gavin King fb4f5ba617 HHH-16823 support for nvarchar on MySQL
In H6 we stopped producing nvarchar columns on MySQL, but it's
needed for MySQL 5.7. On the other hand, actually nvarchar is
deprecated in MySQL 8.

So use 'varchar character set utf8' instead.
2023-06-20 09:30:51 +02:00
Andrea Boriero c9baeb5c68 HHH-16794 With Bytecode enhancement a lazy ManyToOne association targeting an Entity annotated with @Proxy(lazy = false) is eagerly loaded 2023-06-19 15:49:39 +02:00
Andrea Boriero d71a0f77e1 HHH-16794 Add test for issue 2023-06-19 15:49:39 +02:00
Andrea Boriero 46bfc59cd1 HHH-16743 StackOverflowError when loading a ManyToOne whith @Proxy(lazy=false) 2023-06-19 13:44:21 +02:00
gtoison 4933303f0b HHH-16743 Add test for issue 2023-06-19 13:44:21 +02:00
Gavin King bc8c0a238c clean up some imports in tests 2023-06-18 03:24:29 +02:00
Gavin King 7d79760b9a HHH-16633 make GenericDialect public
oops, tests did not catch this
2023-06-18 03:21:05 +02:00
Gavin King 7ecec615d3 HHH-16815 fix generic signature of ascending() / descending()
+ code cleanups in the Query hierarchy
2023-06-17 23:10:48 +02:00
Gavin King c6658fbb84 HHH-16815 add ascending()/descending()/unordered() to SelectionQuery
This is going to be very convenient
2023-06-17 20:07:02 +02:00
Gavin King b1998782e9 HHH-16633 introduce new package for @HQL, @SQL, @CheckHQL annotations 2023-06-17 20:07:02 +02:00
Gavin King cfe545ec3d HHH-16633 introduce native query methods to JPA metamodel generator 2023-06-17 20:07:02 +02:00
Gavin King 698b245753 HHH-16633 introduce query methods to JPA metamodel generator 2023-06-17 20:07:02 +02:00
Gavin King d3e15a7cc1
don't throw ParsingException (it represents a bug in the parser) (#6819)
- we should throw SyntaxException for expected conditions
- also, avoid the use of weirdo non-standard hyphenation in error messages
2023-06-17 14:08:14 +02:00
Gavin King ce98e3ea49
ParsingException should extend QueryException (#6816) 2023-06-16 21:55:43 +02:00
Marco Belladelli 336f83b03e HHH-16537 Check correlated too for compatible joined group 2023-06-16 17:22:42 +02:00
Marco Belladelli 562a3d901e HHH-16537 Add test for issue 2023-06-16 17:22:42 +02:00
Steve Ebersole 4e72ccb097 HHH-16809 - Add JavaType#createArray
https://hibernate.atlassian.net/browse/HHH-16809

Clean-up dead references to `JavaType#getSpecializedTypeDeclaration`
2023-06-16 09:59:34 -05:00
Marco Belladelli 9dca8f084b HHH-16713 Fix number of row counts check in BatchImpl 2023-06-16 14:08:43 +02:00
Marco Belladelli de5987b3b3 HHH-16713 Add test for issue 2023-06-16 14:08:43 +02:00
Marco Belladelli e5d59b64fd HHH-16773 Introduce support for group/order by PK functional dependency 2023-06-16 14:06:54 +02:00
Gavin King 715212c694 fix links to deprecated annotation in jdoc 2023-06-16 13:57:31 +02:00
Gavin King 7cf4fd0626
update the QuickStart guide (#6807)
* update the code examples in the quickstart

* update the quickstart document

* slightly restructure the quickstart document
2023-06-15 23:52:49 +02:00
Gavin King 126207bbfe
HHH-16805 typecheck arguments of HQL arithmetic operators (#6804) 2023-06-15 17:26:59 +02:00
Gavin King aff3c105b6
lighter punctuation in binding/extracting log message (#6790) 2023-06-15 16:22:36 +02:00
Gavin King 96941f3775
HHH-16802 typecheck subquery predicates (#6801) 2023-06-15 11:51:08 +02:00
Andrea Boriero 9d052413fc HHH-16797 - Mark org.hibernate.metamodel as incubating 2023-06-15 10:44:50 +02:00
Christian Beikov e8acf51608 HHH-16739 Fix several failures when comparing enum parameters with constant values 2023-06-14 19:13:36 +02:00
Steve Ebersole f24660e1fd HHH-16797 - Mark org.hibernate.metamodel as incubating
https://hibernate.atlassian.net/browse/HHH-16797
2023-06-14 10:42:36 -05:00
Marco Belladelli b0419a8fe2 HHH-16678 Add back query literal initialization assertion 2023-06-14 17:25:05 +02:00
Marco Belladelli 6984c4a9e8 HHH-16678 Use seed and next for version increase query literal 2023-06-14 17:25:05 +02:00
Marco Belladelli e31754086a HHH-16678 Add test for issue 2023-06-14 17:25:05 +02:00
Andrea Boriero 4878a1d277 HHH-16744 Wrong class created when reusing a join column for different entities in multiple ManyToOne 2023-06-14 13:17:59 +02:00
gtoison 7223a5eb53 HHH-16474 issue reproducer 2023-06-14 13:17:59 +02:00
Gavin King b971b1e377 introduce UnknownFilterException for consistency with UnknownProfileException 2023-06-14 12:28:43 +02:00
Marco Belladelli d63323cb63 HHH-16714 Add test and fix structured cache for inheritance subtypes 2023-06-14 10:29:30 +02:00
Andrea Boriero 7d0f313efe HHH-16767 From#getJoins throws exception if non-attribute was joined 2023-06-14 10:22:58 +02:00
Andrea Boriero c6ae189ca5 HHH-16767 Add test for issue 2023-06-14 10:22:58 +02:00
Andrea Boriero 37aa5b21a3 HHH-16750 ClassCastException when an Entity with an ElementCollection has an EmbeddableId with just one field and Batch is enabled 2023-06-14 10:21:07 +02:00
Andrea Boriero 254d01484d HHH-16750 Add test for issue 2023-06-14 10:21:07 +02:00
Andrea Boriero 6b8beaaf3a HHH-16740 Fetching an element collection on an entity with a composite id fails when batch size > 1 2023-06-14 10:21:07 +02:00
marko-bekhta f3c21bbab2 HHH-16740 Add a test case to reproduce the issue 2023-06-14 10:21:07 +02:00
Andrea Boriero a64748ba84 HHH-16673 Fail to get access lazy fetched field ( @ManyToOne ) wich is part of a composite Id (using an @IdClass) when stored in L2 cache 2023-06-14 10:19:35 +02:00
Andrea Boriero 036631f42c HHH-16673 Add test for issue 2023-06-14 10:19:35 +02:00
Gavin King 9adffa4e4f further work on query parser exceptions
I missed a couple of things
2023-06-14 10:02:00 +02:00
Christian Beikov d859f43748 HHH-16782 Allow query plan caching of criteria queries 2023-06-14 07:39:49 +02:00
Christian Beikov 97a699a3e1 HHH-16749 Reuse BasicType from Value for JPA Metamodel instead of creating dedicated BasicDomainType instances 2023-06-14 07:39:29 +02:00
Jan-Willem Gmelig Meyling 6ed858a461 HHH-16749 Reproducer for incorrect function argument domain type 2023-06-14 07:39:29 +02:00
Christian Beikov 2fb7cdd08b HHH-16697 Fix auto type discovery for aggregate functions on Oracle 2023-06-13 20:59:58 +02:00
Christian Beikov 1a9732a5c2 HHH-16786 Fix NPE in SqmParameterInterpretation when binding null for select item in insert-select statement 2023-06-13 20:59:07 +02:00
Christian Beikov 2ad5cdd9b9 HHH-16787 Multi-valued parameter with single element parameter list fails with no such element exception 2023-06-13 20:57:32 +02:00
Gavin King 694eee977f
Query parser exceptions (#6782)
* clean up exception reporting in query translator

especially, introduce SyntaxException, since SemanticException and
ParsingException were both being misused to report syntax errors
2023-06-13 19:53:19 +02:00
Christian Beikov f50cbce7ba Allow access to sqlBuffer via @Internal method 2023-06-13 18:21:57 +02:00
Steve Ebersole d16482697c Add target and retention to `@JavaServiceLoadable` 2023-06-13 11:06:37 -05:00
Yoann Rodière 7450f916f1 Test non-standard access with extended bytecode enhancement
Turns out there is nothing wrong and these tests already pass.
2023-06-13 11:29:45 +02:00
Gavin d43f618eba deprecated some exception constructors we need to migrate away from
it's really important to report the actual HQL that caused the failure
2023-06-13 01:20:19 +02:00
Gavin e2cf383f7a fix up the error message in InterpretationException 2023-06-13 01:20:19 +02:00
Gavin 3a8e66d600 HHH-16783 split @Any discriminator handling into two subclasses 2023-06-13 01:20:19 +02:00
Gavin 925d09528d HHH-16783 allow implicit discriminator mappings in @Any 2023-06-13 01:20:19 +02:00
Cedomir Igaly b364a9d50a HHH-16614 - Properly handling before/after tables on creation for auxiliary database objects 2023-06-12 18:14:04 +02:00
Marco Belladelli 8408849a50 HHH-16770 Only expand top level entity valued paths for group/order by 2023-06-12 16:45:30 +02:00
Marco Belladelli 15310330f8 HHH-16770 Add test for issue 2023-06-12 16:45:30 +02:00
Cedomir Igaly 3e8056de8e HHH-16759 - ComponentType.isMutable should return false when component is record; replace method(s) should return original for immutable classes 2023-06-12 15:18:12 +02:00
Cedomir Igaly 86ed7abd97 HHH-16759 - Test case - merge embedded record 2023-06-12 15:18:12 +02:00
Gavin a3534bcab4 clean up RepresentationMode enum 2023-06-12 14:09:21 +02:00
Christian Beikov f0ebb55026 HHH-16774 Ensure composite field tracking enhancement works also when @Embedded annotation is missing 2023-06-12 11:00:48 +02:00
Marco Belladelli 47eb862e06 HHH-16745 Consider loading entity entries when checking if transient 2023-06-12 09:30:49 +02:00
Benedikt Biallowons b157ec35c6 HHH-16745 Add test for issue 2023-06-12 09:30:49 +02:00
Marco Belladelli ecc7dc1880 HHH-16761 Throw error for identifier properties not found in `@IdClass` 2023-06-12 09:28:15 +02:00
Gavin 45133f1df2 HHH-16777 add typesafe version of Hibernate.isPropertyInitialized()
like in HR
2023-06-11 10:19:14 +02:00
Gavin e6ec43f257 very minor code/comment changes 2023-06-11 10:19:14 +02:00
Gavin bc81eb6d19 fix error reported for empty HQL string 2023-06-10 23:54:54 +02:00
Gavin e0d08a5f26 avoid printing {element} in err message 2023-06-09 23:09:05 +02:00
Jan Schatteman e18dde78bf HHH-16472 - Add test for issue
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2023-06-09 22:40:29 +02:00
Gavin 43af98fa52 HHH-16731 fix validation of @Any mappings 2023-06-09 22:11:42 +02:00
Gavin 5110fd4653 HHH-16776 more consistent reporting of errors in attribute paths
and squash some warnings
2023-06-09 22:11:42 +02:00
Aurimas Niekis 9075cf84fb
HHH-16772 Added a check method to `SetFieldOnArgument` setter bytecode generator to check if value type is 64-bit and adjust operand stack size accordingly. (#6756)
HHH-16772 Added a check method to `SetFieldOnArgument` setter bytecode generator to check if value type is 64-bit and adjust operand stack size accordingly.
2023-06-09 18:49:24 +02:00
Gavin 81deaa1049 add missing @Override 2023-06-09 17:24:58 +02:00
Gavin bdacc8b05f make it easier to mock the QueryEngine 2023-06-09 17:24:58 +02:00
Gavin 910c5d4276 slightly improve some error messages 2023-06-09 17:24:58 +02:00
Gavin f7ab7f4afc fix error when treat target type is not found 2023-06-09 17:24:58 +02:00
Gavin 0a98b41f0e fix an IOOB exception in SqmPathRegistryImpl 2023-06-09 17:24:58 +02:00
Gavin a3e6e06519 refactor out a function so that it can be used by query-validator 2023-06-09 17:24:58 +02:00
Gavin 0ae432f0fb misc minor changes 2023-06-09 17:24:58 +02:00
Gavin 3dff3fb20e API changes for query-validator 2023-06-09 17:24:58 +02:00
Oleksii Klochko 67f737f4ab HHH-16640: Return this instead of null for method chaining 2023-06-09 00:21:15 +02:00
Gavin a707d8e345 remove obsolete warning suppression in test 2023-06-08 19:02:32 +02:00
Gavin 4bbf67fb3b get rid of backticks in error message 2023-06-08 19:02:32 +02:00
Gavin 33c9338520 fix a CCE from SemanticQueryBuilder 2023-06-08 19:02:32 +02:00
Marco Belladelli 7e115eb8f4 HHH-16719 Add test for issue 2023-06-07 13:48:29 +02:00
Cedomir Igaly 670db01c9a HHH-16612 Use qualified table name for embeddable mappings 2023-06-06 16:17:31 +02:00
Cedomir Igaly bda41ec0b9 HHH-16612 Add test for issue 2023-06-06 16:17:31 +02:00
Marco Belladelli bf1068be7e HHH-16661 Use qualified table names for entity name by table name map 2023-06-06 16:17:31 +02:00
Marco Belladelli 53d474d85f HHH-16661 Add test for issue 2023-06-06 16:17:31 +02:00
Gavin d567b839da HHH-16727 initial work on StatelessSession.upsert()
marked @Incubating
2023-06-06 16:08:05 +02:00
Gavin 3af493a344 failure no longer expected for test 2023-06-06 16:08:05 +02:00
Gavin 37c071fa20 better formatting for 'merge' and 'case' 2023-06-06 16:08:05 +02:00
Marco Belladelli 95e6ed1001 HHH-16641 Add test and fix order column on generic non-map associations 2023-06-06 15:56:16 +02:00
Andrea Boriero f8275f1a70 HHH-16624 Do not create subselects when there are fewer than 2 results 2023-06-06 10:11:19 +02:00
Andrea Boriero 4c1d8a19bf HHH-16624 Add test for issue 2023-06-06 10:11:19 +02:00