Christian Beikov
33d601f146
HHH-16658 Propagate entity name uses from predicates and subqueries properly to the upper context
2023-05-25 10:23:42 +02:00
Gavin
e1af41173b
javadoc cleanups
2023-05-25 09:46:43 +02:00
Gavin
156fd51e5c
improve javadoc code examples in XxxxLoadAccess
2023-05-25 00:42:24 +02:00
Gavin
76fa597d1b
improvements to typesafety of NaturalIdLoadAccess
...
and clean up its jdoc and the jdoc of its friends
2023-05-25 00:17:59 +02:00
Gavin
5efa49f7d1
HHH-16600 @Basic(optional=false) on embeddable held by single table subclass
...
don't generate a 'not null' constraint for a field of an embeddable class if
it belongs to a subclass in single table inheritance hierarchy
2023-05-24 22:08:54 +02:00
Andrea Boriero
84547e8f4c
HHH-16370 Using MapKey on ManyToMany leads to wrong insert SQL
2023-05-24 21:28:18 +02:00
Andrea Boriero
d4d82e67fd
HHH-16370 Add test for issue
2023-05-24 21:28:18 +02:00
Guenther Demetz
01f4c74d6b
HHH-16558 - Detaching an entity removes natural-id cross-reference from shared cache
2023-05-24 11:33:20 -05:00
Gavin
2b27d98a89
HHH-16654 much more efficient implementation of default fetch profile
2023-05-24 18:14:10 +02:00
Jan Schatteman
35da6000fd
HHH-16649 - This commit effectively reverts d8bf6499
(HHH-15910), in which static remove methods were added to the Hibernate class
...
The reason for this is that the methods in fact don't work, since the machinery behind
them just isn't there, nor has it even been.
The CollectionSizeTest that was modified to test these new methods was
incomplete and hid this fact.
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2023-05-24 18:12:31 +02:00
Marco Belladelli
1c55a4766f
HHH-16532 Fix NPE for @Any association fetches
2023-05-24 17:23:06 +02:00
Marco Belladelli
a05e3cd2fa
HHH-16532 Add test for issue
2023-05-24 17:23:06 +02:00
Marco Belladelli
7116dc9def
HHH-16543 Correct check for polymorphic root common attributes
2023-05-24 17:17:46 +02:00
Marco Belladelli
c6c24700a5
HHH-16543 Add test for issue
2023-05-24 17:17:46 +02:00
Gavin
d3db740035
HHH-16360 fix schema update precision/scale handling
2023-05-24 16:50:21 +02:00
Sanne Grinovero
57cbaed2a9
HHH-16685 Avoid extreme cache misses on EntityPersister#implementsLifecycle()
2023-05-24 12:08:44 +01:00
Sanne Grinovero
5c60b632a1
HHH-16683 Micro optimisations for MappingMetamodelImpl.getEntityDescriptor
2023-05-24 11:58:49 +01:00
Gavin
1d30b0161f
add nissing <p> to javadoc
2023-05-24 00:22:14 +02:00
Gavin
80feb108fb
javadoc improvements
2023-05-24 00:14:44 +02:00
Gavin
7b3c77c0c3
introduce @View annotation
2023-05-24 00:14:44 +02:00
Andrea Boriero
2bebcf5e95
HHH-16669 Batch loading prevents throwing ObjectNotFoundException on initialization of non-existent enhanced entity
2023-05-23 20:43:20 +01:00
Andrea Boriero
f9954aa873
HHH-16669 Test for issue: when batch loading not throwing ObjectNotFoundException on proxy init
2023-05-23 20:43:20 +01:00
Sanne Grinovero
bf82d53516
HHH-16679 Avoid type pollution problems on iterations of List<JdbcParameter>
2023-05-23 19:41:52 +01:00
Gavin
f54ff9de3e
remove redundant @SuppressWarnings
2023-05-23 17:34:34 +02:00
Gavin
dc1fe43f52
change the names because Steve didn't like fetching()/loading()
2023-05-23 17:34:34 +02:00
Gavin
d424957cac
two API improvements to EntityGraphs
...
1. make fetch/load graph distinction clearer in the XxxxLoadAccess APIs
2. addPluralSubgraph(), which is missing in JPA
2023-05-23 17:34:34 +02:00
Marco Belladelli
e84dfb2a8c
HHH-16565 Clear PC entry for 2LC inconsistent return class entities
2023-05-23 17:33:04 +02:00
Marco Belladelli
f0affe7804
HHH-16565 Add test for issue
2023-05-23 17:33:04 +02:00
Gavin
66d67795a3
HHH-16666 fix test
2023-05-23 16:50:25 +02:00
Gavin
176abffdd5
HHH-16654 introduce a "default" fetch profile with eager to-ones in it
...
also, make the query translator always respect the fetch type specified
in the fetch profile (previously it would ignore it for statically-EAGER
many-to-ones, which was inconsistent and made little sense)
2023-05-23 16:50:25 +02:00
Gavin
b3e27788fa
fix bug in query plan cache where fetch profiles were not considered
2023-05-23 16:50:25 +02:00
Gavin
ba0221da36
HHH-16666 introduce @FetchProfileOverride instead of reusing @Fetch
...
There are differences in the implied timing, so this is more consistent
2023-05-23 16:50:25 +02:00
Gavin
c636c83d7e
HHH-16651 cleaner separation of "fetch method" vs "fetch timing"
2023-05-23 16:50:25 +02:00
Christian Beikov
7ed0241dc5
HHH-16676 Handle treat expressions in toHqlString
2023-05-23 13:40:46 +02:00
Gavin
e79cbe8669
disable a test on Oracle, because it fails on new JDBC drivers
...
cc @beikov
2023-05-23 11:05:43 +01:00
Gavin
3be2dc5978
HHH-16651 promote new operations from SessionBuilder to Session
...
setFetchBatchSize() and setSubselectFetchEnabled()
2023-05-23 07:51:02 +02:00
Gavin
6215a8ef42
add some additional hints for EM.setProperty()
2023-05-23 07:51:02 +02:00
Gavin
9c90bd505d
HHH-16651 clean up API of the engine.profile package
...
FetchProfile should really be immutable so lets move toward that
2023-05-22 23:43:23 +02:00
Gavin
ad9fae044d
HHH-16651 fix test
2023-05-22 23:43:23 +02:00
Gavin
a5ae1a479a
HHH-16651 support all fetch styles in fetch profiles
...
Finally, after all these years!
2023-05-22 23:43:23 +02:00
Christian Beikov
4795b94f68
HHH-16657 Propagate PROJECTION entity name use from subquery to outer table group
2023-05-22 18:53:09 +02:00
Christian Beikov
7f5ebc207e
HHH-16655 Fix parse error for HQL window frames
2023-05-22 18:53:09 +02:00
Christian Beikov
f49bce8bde
HHH-16656 Register ranking window functions for H2 1.4.200
2023-05-22 18:53:09 +02:00
Gavin
36a77785e8
HHH-16666 give @FetchOverride.mode a default (the only supported value!)
...
Talk about low-hanging fruit!
2023-05-22 18:45:41 +02:00
Gavin
f2dbe7a9cb
HHH-16666 allow fetch profiles to be defined using the @Fetch annotation
...
1. You may now declare an empty named @FetchProfile, and
2. add associations to it using @Fetch.
Note that @Fetch becomes a repeatable annotation.
2023-05-22 18:45:41 +02:00
Gavin
2daeadd449
share more code between the batch loaders
2023-05-22 18:45:28 +02:00
Gavin
2926d1781d
trim array holding batch of ids before passing to JDBC
...
before this, the array length was the batch size, and
was padded with nulls, which isn't great if you have
a large batch size, I suppose
2023-05-22 18:45:28 +02:00
Gavin
f2017cd5a0
HHH-16651 improve probability of getting cached loader
2023-05-22 18:45:28 +02:00
Gavin
8bf5bb0d98
HHH-16651 change a test since we don't use array batch loader for one id anymore
2023-05-22 18:45:28 +02:00
Gavin
475aefb434
HHH-16651 use single id loader when there is one id in the batch
2023-05-22 18:45:28 +02:00
Gavin
97b653aaec
HHH-16651 ooops, fix condition on affected-by
2023-05-22 18:45:28 +02:00
Gavin
c2ceb4c279
HHH-16651 get rid of Preparable interface
...
I can't figure out why it's required but perhaps I'm missing something
2023-05-22 18:45:28 +02:00
Gavin
bbd8df93ca
HHH-16651 make persisters return adapted loaders for session batch size
2023-05-22 18:45:28 +02:00
Gavin
3097c47b3d
HHH-16659 add Query.setEntityGraph()
...
and turn a log message into an IllegalArgumentException
2023-05-22 18:45:28 +02:00
Gavin
e102dea3be
lay foundation for making batch/subselect fetching per-session
...
still need to fix caching of loaders in persisters
2023-05-22 18:45:28 +02:00
Gavin
ed213d7cdf
add applySubselectFetchEnabled() to builder
...
improve some Javadoc
2023-05-22 18:45:28 +02:00
Gavin
eb959722f9
HHH-16651 introduce new setting to globally enable the use of subselect fetching
...
and lay foundation for making this settable on the Session
2023-05-22 18:45:28 +02:00
Christian Beikov
fa15bba8c8
HHH-16663 Fix TCK failure due to wrong refactoring in schema management Action enum
2023-05-22 13:32:19 +02:00
Gavin
4ebc24daa0
HHH-16650 add test
2023-05-22 10:07:27 +02:00
Gavin
eded6e8ff9
HHH-16650 fix for native queries with "unknown" numeric types on Oracle
...
Oracle reports FLOAT/DOUBLE PRECISION as NUMBER, which is wrong. The
workaround was to look at the scale, which it reports as -127 for
FLOAT. But certain other expression also get scale -127, and this
could cause truncation of least-significant digits when we read them
into a Java Double.
2023-05-22 10:07:27 +02:00
Gavin
d9d5ea57d4
change the format of an exception msg
2023-05-20 17:07:28 +02:00
Gavin
60cec44467
some minor cleanups
2023-05-20 17:07:28 +02:00
Gavin
fb28443081
raft of minor code cleanups
2023-05-20 12:48:19 +02:00
Gavin
4247f7b155
allow instantiation via non-public constructor in HQL
2023-05-20 12:09:17 +02:00
Gavin
f673441ab3
HHH-16647 allow unqualified use of query result type in HQL instantiation
2023-05-20 12:09:17 +02:00
Gavin
addd88000c
improve error reporting in DynamicInstantiation stuff
2023-05-20 12:09:17 +02:00
Gavin
f38de6217b
HHH-16601 log second-level cache RegionFactory initiation
2023-05-20 09:27:35 +02:00
Gavin
689414e347
improve some error messages
...
also, tell StringType know how to convert ints and longs
2023-05-19 15:53:25 +02:00
Gavin
47d8a63f16
HHH-16638 allow @DialectOverride for @SQLInsert and friends
2023-05-19 12:36:25 +02:00
Andrea Boriero
62c05eadb9
HHH-16570 Batch fetch with FetchMode JOIN might lead to multiplication in OneToMany items
2023-05-19 11:41:40 +02:00
Andrea Boriero
87fc258109
HHH-16570 Add test for issue
2023-05-19 11:41:40 +02:00
Jarkko Hyöty
6c8bb03c93
HHH-16433 Fix forced follow on locking with order by
2023-05-19 11:31:49 +02:00
Gavin
eafe6fd79b
HHH-16637 add methods to SessionFactory for handling lifecycle of StatelessSession
...
also clean up the related code
2023-05-19 09:44:47 +02:00
Steve Ebersole
2ce3eef67a
HHH-16626 - JPA hint for Session (EntityManager) level tenant-id
2023-05-18 15:05:54 -05:00
Sanne Grinovero
71a335dbe6
HHH-16630 Refactor code to avoid frequent lookup of Service MutationExecutorService
2023-05-18 14:38:11 +02:00
Sanne Grinovero
1c8e6fe462
HHH-16631 Avoid unnecessary INFO logging at bootstrap
2023-05-18 14:38:11 +02:00
Sanne Grinovero
46d66ec141
HHH-16625 Introduce a compilation unit among tests to serve as reminder about Quarkus requirements
2023-05-18 14:38:11 +02:00
Sanne Grinovero
67488980e0
HHH-16625 Introduce a compilation unit among tests to serve as reminder about Quarkus requirements
2023-05-18 12:17:55 +02:00
Sanne Grinovero
a8ce9f615c
HHH-16625 Expose enough state from MetadataImpl to allow cloning it
2023-05-18 12:17:55 +02:00
Gavin
c5d7030741
fix misleading parameter name
2023-05-18 11:26:59 +02:00
Andrea Boriero
97ab6f6879
HHH-16569 Batch fetch leads to some collections to be wrongly initialized with empty due to wrong generated SQL
2023-05-18 09:41:18 +02:00
Andrea Boriero
f4617621c6
HHH-16569 Add test for issue
2023-05-18 09:41:18 +02:00
Andrea Boriero
aa93bac008
HHH-16573 NPE with embeddable element collection with updateable = false
2023-05-18 09:36:19 +02:00
Yoann Rodière
b6721961dd
HHH-16573 Reproduce NPE with embeddable element collection with updateable = false
2023-05-18 09:36:19 +02:00
Marco Belladelli
a8fe62ebb3
HHH-16472 Allow null discriminators for treated left/full joins
2023-05-17 18:04:40 +02:00
Marco Belladelli
04684da054
HHH-16472 Add test for issue
2023-05-17 18:04:40 +02:00
Christian Beikov
bee160e9f2
HHH-16541 Don't report supportsSkipLocked() for Sybase
2023-05-17 16:22:31 +02:00
Gavin
8fcd3a1f54
get rid of a stack trace
...
because some amazing geniuses on stackoverflow who know
much more than me about Hibernate are obsessing over this
DEBUG-level log message
2023-05-17 13:00:30 +02:00
Gavin
a2f1ee3364
squash two warnings
2023-05-17 12:59:33 +02:00
Christian Beikov
7823b48a3a
HHH-16541 Fix Sybase test issues and HSQLDB hanging
2023-05-17 11:41:18 +02:00
Christian Beikov
031098a248
HHH-16541 Don't consider uninitialized LazyTableGroup for follow-on locking emulation. Fix lock mode upgrade for follow-on locking
2023-05-16 12:58:25 -05:00
Christian Beikov
93d0121b9a
HHH-16541 - (Jakarta EE 10 Platform TCK) jpa/core/lock/query/Client.java#getResultListTest1 test regression
2023-05-16 12:58:25 -05:00
Steve Ebersole
8f94719152
HHH-16538 - Remove BeanValidationIntegrator#BV_CHECK_CLASS
2023-05-16 12:36:32 -05:00
Gavin
d43e89cc4a
HHH-16604 partial fix to 'ENUM member of collection'
...
fix for the case of a fully-qualified name, i.e. org.package.Enum.ENUM
2023-05-15 16:54:47 +02:00
Marco Belladelli
f310338198
HHH-16576 Fix column aliases when rendering query part with table reference aliasing emulation
2023-05-15 16:06:04 +02:00
Zhihong Yu
8e21d0eb54
HHH-16542 - Correct typo in javadoc
2023-05-15 15:56:08 +02:00
Gavin
7f361157e4
HHH-16603, HHH-9763 fix some tests:
...
- test that @Cache on a subclass throws instead of WARNs
- remove @FailureExpected because HHH-9763 is now fixed
- correct test with wrong expectation for SharedCacheMode.UNSPECIFIED
- fix test that did not realize ImmmutableMutabilityPlan requires Serializable
2023-05-15 15:11:12 +02:00
Gavin
f709763dab
HHH-16603, HHH-9763 fix some issues with interpreting @Cache/@Cacheable annotations
...
1. throw instead of logging a WARN if @Cache is on a subclass.
I just lost 1/2 an hour of my life due to this being a WARN.
Logging WARNs is a terrible way to report user error!
2. Fix interpretation of SharedCacheMode.UNSPECIFIED
2023-05-15 15:11:12 +02:00
Christian Beikov
eb6e848de3
HHH-15726 Fix treat disjunction handling and improve pushdown
2023-05-15 10:07:08 +02:00
Marco Belladelli
4e9a643346
Fix several tests failing on Oracle 11 and some others on older dbs
2023-05-15 09:27:35 +02:00