Commit Graph

10588 Commits

Author SHA1 Message Date
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