Yoann Rodière
12cb577f9f
HHH-14620 Test incorrect initialization of a collection with extended bytecode enhancement
2021-05-20 11:53:57 +02:00
Yoann Rodière
b9270e44b1
HHH-14620 Do not initialize collections just to take a snapshot of their size
...
As far as I can tell this is safe enough for dirty tracking:
* The collection tracker will return a size of -1 for that collection
* Which is exactly the behavior we currently get after
$$_hibernane_clearDirtyCollectionNames is called if a collection has
been "retrieved" (getter called) but was not initialized.
* This will mainly prevent some optimizations because we will no longer
be able to tell whether a collection is "dirty" or not.
I think we should be able to restore those optimizations: for
PersistentCollection instances, we would store the "initial" size
inside the collection itself upon initialization,
and we would compare THAT size to the current size in implementations
of $$_hibernate_areCollectionFieldsDirty (see
org.hibernate.bytecode.enhance.internal.bytebuddy.CodeTemplates).
Alternatively we could store the CollectionTracker inside the
PersistentCollection so that the collection can update the tracker
upon initialization.
However, that's outside the scope of this bug, that would require
significant testing, and that may cause conflicts with ORM 6, so I won't
do it here.
2021-05-20 11:53:57 +02:00
Sanne Grinovero
eb6c68cdc6
HHH-14621 Introduce new methods on EventListenerGroup which allow Hibernate Reactive to fire events more efficiently
2021-05-19 20:58:43 +01:00
Andrea Boriero
b30a68f5be
HHH-14596 WhereAnnotatedOneToManySizeTest fails on HANA database
2021-05-13 09:49:14 +02:00
Andrea Boriero
f7ab5f315d
HHH-14541 Only mark the session factory as closed *after* SessionFactoryObserver#sessionFactoryClosing was called
2021-05-12 17:27:14 +02:00
Yoann Rodière
eb4e397a04
HHH-14541 Only mark the session factory as closed *after* SessionFactoryObserver#sessionFactoryClosing was called
2021-05-12 16:25:02 +02:00
Yoann Rodière
7f152c36f7
HHH-14541 Test that the session factory is still open in SessionFactoryObserver#sessionFactoryClosing
2021-05-12 16:25:02 +02:00
Fabio Massimo Ercoli
d0febfd042
HHH-14585 Test more size() cases
...
In particular projections using a size function
2021-05-11 18:33:02 +02:00
Fabio Massimo Ercoli
a106ce29dc
HHH-14585 Handle filter fragment on CollectionSizeNode
2021-05-11 18:33:02 +02:00
Fabio Massimo Ercoli
15d9eb4112
HHH-14585 Skip test for some dialects
2021-05-11 18:33:02 +02:00
mrizzi
51529f5f20
HHH-14585 size() HQL function discards '@Where' clause
2021-05-11 18:33:02 +02:00
Yoann Rodière
72f4a2f610
HHH-12445 Remove unused constants related to "null"/"not-null" discriminator values
2021-05-04 09:18:55 +02:00
Yoann Rodière
662f86abe1
HHH-12445 Test "null"/"not-null" discriminator values
2021-05-04 09:18:55 +02:00
Yoann Rodière
1a2510df16
HHH-12445 Fix ORM not detecting "null"/"not null" discriminator values correctly for joined inheritance
2021-05-04 09:18:55 +02:00
Yoann Rodière
7144af5990
HHH-12445 Auto-detect when discriminator columns are nullable
2021-05-04 09:18:55 +02:00
Emmanuel Duchastenier
41c71bfed7
HHH-13779 (5.4) - Foreign key schema migrator should be case-insensitive
...
This avoids re-creating existing foreign keys with a different name,
after migrating from Hibernate 4 to Hibernate 5 (as implicit naming
convention has changed).
Actually, some RDBMS allow it (PostgreSQL, MySQL, MS SQL Server, ...)
and duplicate the same key, whereas others (Oracle, ...) do not
allow it and Schema update fails.
This fix ignores the case of the table and column name when checking
if a equivalent Foreign Key already exists (whatever its name)
Closes https://hibernate.atlassian.net/browse/HHH-13779
(cherry picked from commit 0b819863f2
)
2021-04-30 12:48:05 -05:00
Andrea Boriero
8dabefd111
HHH-14573 Remove useless call to EnhancementAsProxyLazinessInterceptor#isInitialized()
2021-04-30 13:11:01 +02:00
Christian Beikov
ff9e9eebc9
HHH-13946 Create Jakarta artifacts for hibernate-core, hibernate-envers, hibernate-jpamodelgen and hibernate-testing
2021-04-30 11:41:05 +02:00
Christian Beikov
eb8b8620d7
HHH-14274 Support for jakarta prefixed String properties for integrations
2021-04-30 11:41:05 +02:00
Christian Beikov
14b35bb3b6
HHH-14273 Support for jakarta.persistence prefixed String properties
2021-04-30 11:41:05 +02:00
Christian Beikov
c096b463ee
Emulate null ordering for CockroachDB
2021-04-29 13:43:52 +02:00
Sanne Grinovero
0a4cd8e800
HHH-14575 Adapt BasicProxyFactoryImpl to be more native-image friendly
2021-04-28 10:31:27 +01:00
Yoann Rodière
1023ee02b9
HHH-14571 Always report identifiers as initialized when using enhanced proxies
2021-04-22 17:25:18 +02:00
Yoann Rodière
6bc8421972
HHH-14571 Test that the identifier is always reported as initialized by Hibernate.isPropertyInitialized when using enhanced proxies
2021-04-22 17:25:18 +02:00
Christian Beikov
12f1c7917e
HHH-14475 Don't render subquery for collection functions
2021-04-22 12:19:45 +02:00
Burkhard Graves
96980606fd
HHH-14475 - select indices from ternary relation is broken since 5.4.13 (at least in mariadb)
2021-04-22 12:19:45 +02:00
Gavin King
179327cd40
[HHH-14031] on H2 1.4.200 and above use localtime/localtimestamp
...
As suggested by @famod we need to use localtime instead
or current_time because of changes in H2.
In particular the JDBC driver now refuses to convert
TIME/TIMESTAMP WITH TIME ZONE to plain TIME/TIMESTAMP.
2021-04-22 12:18:36 +02:00
Yoann Rodière
8389b1a7a2
HHH-14567 Do not reuse query plans after session filters changed
2021-04-19 17:58:57 +02:00
Yoann Rodière
3bac846de2
HHH-14567 Test enabling filters after query creation but before query execution
2021-04-19 17:58:57 +02:00
Yoann Rodière
4264bc55ac
HHH-14563 Remove the DOM4J dependency from hibernate-core
2021-04-19 15:39:35 +02:00
Yoann Rodière
87a3e0a5d8
HHH-14563 Remove a few obsolete references to DOM4J entity-mode
...
This mode was removed literally a decade ago.
2021-04-19 15:39:35 +02:00
Yoann Rodière
b076216e84
HHH-14563 Remove XmlMappingOptions
...
We don't need that anymore: XML mapping is either enabled or disabled,
there are no other options. So a boolean will do.
2021-04-19 15:39:35 +02:00
Yoann Rodière
6f5f6b32c3
HHH-14563 Remove DOM4J-based XML mapping
...
Use JAXB-based XML mapping everywhere.
2021-04-19 15:39:35 +02:00
Yoann Rodière
194e53a0fb
HHH-14563 Remove legacy tests for DOM4J-based XML mapping
2021-04-19 15:39:35 +02:00
Yoann Rodière
4f7bb75ec7
HHH-14529 Fix access type being ignored when defined at the entity level in orm.xml
...
That's a bug I introduced when I migrated code from dom4j to jaxb.
2021-04-19 15:39:35 +02:00
Yoann Rodière
5b830f3f5e
HHH-14529 Fix invalid order of elements in orm.xml files used for tests
...
Surprisingly, the XSD does mandate a specific order for some elements,
including "entity", "embeddable" and the children of "attributes".
It turns out we were allowing a wrong order with the dom4j
implementation, but we no longer do with the jaxb implementation.
2021-04-19 15:39:35 +02:00
Yoann Rodière
6723ed4626
HHH-14529 Fix incorrect attribute name for @NamedEntityGraph in JPAXMLOverriddenAnnotationReader
2021-04-19 15:39:35 +02:00
Andrea Boriero
6f75d96a99
HHH-14549 Collection with default field initializer will always be empty
2021-04-19 14:14:48 +02:00
Andrea Boriero
7620e0e395
HHH-14549 Add test for issue
2021-04-19 14:14:48 +02:00
Yoann Rodière
ac4f4ff4ad
HHH-14529 Implement the (opt-in) orm.xml handling using JAXB
2021-04-15 14:01:28 +02:00
Yoann Rodière
10aee2a9fa
HHH-14529 Add a common interface for Jaxb representations of associations
2021-04-15 14:01:28 +02:00
Yoann Rodière
437af3b4da
HHH-14529 Add a common interface for JaxbEntity, JaxbMappedSuperclass and JaxbEntityListener
2021-04-15 14:01:28 +02:00
Yoann Rodière
b4dd2e272f
HHH-14529 Add a few missing methods to the JAXB representation of ManagedType
2021-04-15 14:01:28 +02:00
Yoann Rodière
efe5424d35
HHH-14529 Add a few missing enum mappings for orm.xml
2021-04-15 14:01:28 +02:00
Yoann Rodière
bbc25cf28b
HHH-14529 Add common interface for JaxbEntity and JaxbMappedSuperclass
2021-04-15 14:01:28 +02:00
Yoann Rodière
8ab3a2f7e9
HHH-14529 Configuration and wiring to prefer JAXB over DOM4J for orm.xml handling
2021-04-15 14:01:28 +02:00
Yoann Rodière
e8cd9f8917
HHH-14529 Clean up constructors in JPAXMLOverriddenMetadataProvider and related
2021-04-15 14:01:28 +02:00
Yoann Rodière
ef6bb2679b
HHH-14529 Remove an unused orm.xml file from tests
2021-04-15 14:01:28 +02:00
Yoann Rodière
7291036680
HHH-14529 Copy orm.xml handling code to prepare for the new JAXB-based implementation
...
We will adapt the code in a later commit; I'm only doing the copy in
this commit in order to keep the review manageable.
2021-04-15 14:01:28 +02:00
Yoann Rodière
55ef4d47f2
HHH-14529 Remove commented-out code related to mapping parsing using dom4j
2021-04-15 14:01:28 +02:00
Yoann Rodière
f92275f6c2
HHH-14529 Clarify that most fields are final in JPAOverriddenAnnotationReader
2021-04-15 14:01:28 +02:00
Yoann Rodière
2907c95cbd
HHH-14529 Introduce JAXB bindings for JPA's orm.xml
...
Adapted from Steve's work on the unified JPA/ORM XML mapping. See:
4ff3795e60 (diff-b407928c3aa7ee1f231e0119ff70345caa5f6a83ed6348128c5159afbe3c6df2)
https://github.com/sebersole/hibernate-orm/compare/jandex-binding
Co-authored-by: Steve Ebersole <steve@hibernate.org>
2021-04-15 14:01:28 +02:00
Yoann Rodière
252fb65f95
HHH-14529 Remove an unused xjb file
2021-04-15 14:01:28 +02:00
Yoann Rodière
18f23ee701
HHH-14529 Fix invalid namespace URIs in MappingXsdSupport
...
Probably copy/pasted from ConfigXsdSupport, and we forgot to add the
"/orm" suffix.
2021-04-15 14:01:28 +02:00
Yoann Rodière
fcc63d9ab0
HHH-14529 Stop using two separate BootstrapServiceRegistries for the same SessionFactory in BaseCoreFunctionalTestCase
2021-04-15 14:01:28 +02:00
Yoann Rodière
ebb30aa178
HHH-14530 Allow adding pre-parsed XML mappings to MetadataSources
...
Signed-off-by: Yoann Rodière <yoann@hibernate.org>
2021-04-15 14:01:28 +02:00
Yoann Rodière
571af7bc9e
HHH-14557 Test JDBC resources are released on each rollback
2021-04-14 14:15:07 +02:00
Yoann Rodière
e03beca97f
HHH-14557 Test JDBC resources are released on each commit
...
Not just on session closing.
2021-04-14 14:15:07 +02:00
Yoann Rodière
3825a671a7
HHH-14557 Always release JDBC connection and resources on rollback
2021-04-14 14:15:07 +02:00
Christian Beikov
b166e684e1
Skip certain LockTests for Oracle on GH Actions which don't work there
2021-04-06 16:12:19 +02:00
Gail Badner
ad84aaf0bc
HHH-14537 : Updated test as requested; added tests that lazy associations with non-existing entity is unaffected.
2021-03-30 11:19:38 -07:00
Gail Badner
3c1e16e06c
HHH-14537 EntityNotFoundException thrown when non-existing association with @NotFound(IGNORE) mapped has proxy in PersistenceContext
2021-03-30 11:19:38 -07:00
Gail Badner
9cb9137fb8
HHH-14537 : Added test for issue
2021-03-30 11:19:38 -07:00
Christian Beikov
2b06123635
Try dropping local tables in same connection
2021-03-25 09:20:39 +01:00
Guillaume Smet
2c1aedd176
HHH-12867 Add test case
2021-03-24 09:40:11 +01:00
Steve Ebersole
725faa258f
HHH-14509 : Git master -> main branch renaming
2021-03-19 10:59:03 -05:00
Gautham Kumar
b4bf58188c
HHH-14449 : ResultStream closing is not properly handled
2021-03-18 07:22:42 -05:00
Sanne Grinovero
2c39bc0ac6
HHH-14502 Iterations and memory retention improvements for processing of PropertyContainer metadata
2021-03-15 17:13:27 +00:00
Andrea Boriero
9f22dafe17
HHH-14499 Explicitly listing mapped classes which are @MappedSuperClass might break narrowing down of generics
2021-03-15 16:44:21 +00:00
Andrea Boriero
394d6ab2d4
HHH-14499 Add test for issue
2021-03-15 16:44:21 +00:00
randymay
44d78d9b85
HHH-12076 Fix index out of bounds exception and allow table group joins for collection joins as well
2021-03-12 14:53:13 +01:00
Christian Beikov
52684bba26
Fix concurrency issue in QueryCacheTest
2021-03-12 08:06:33 +01:00
Christian Beikov
d1445efd82
HHH-9663 Implement support for orphan removal of assocations within embeddables
2021-03-12 08:06:33 +01:00
Jaanus Hansen
8101e3e47d
HHH-9663 added failing test case for Embeddable orphanRemoval
2021-03-12 08:06:33 +01:00
Steve Ebersole
9952c09843
HHH-14491 - Apply default allocation/increment size for @GeneratedValue(AUTO)
...
HHH-14492 - Prefer sequence-per-entity (hierarchy) for @GeneratedValue(AUTO) by default
- added test as @FailureExpected to track this into 6.0
2021-03-10 16:23:42 -06:00
Christian Beikov
a514460bb9
HHH-9182 Cleanup grammar ambiguity issues
2021-03-05 15:20:03 +01:00
Yoann Rodière
fb079d077c
HHH-14439 Test executing the same query with subselects a second time with different list parameters
...
Signed-off-by: Yoann Rodière <yoann@hibernate.org>
2021-03-04 08:35:23 +01:00
Yoann Rodière
81071a4594
HHH-14439 Clean up expanded list parameters before re-executing a query
...
Signed-off-by: Yoann Rodière <yoann@hibernate.org>
2021-03-04 08:35:23 +01:00
Vlad Mihalcea
ed3bbf15e4
HHH-13077 - Optimize query plan call count
2021-03-03 08:07:53 -06:00
johnniang
2d5d6061c5
HHH-14473 add test case
2021-03-03 11:06:13 +00:00
johnniang
f03dd44107
HHH-14473 Resolve managed class name with class loader as well
2021-03-03 11:06:13 +00:00
Sanne Grinovero
f7c85fad4a
HHH-14477 Log warnings about the use of Javassist as BytecodeProvider being deprecated
2021-03-03 10:57:35 +00:00
Christian Beikov
44f4f93a29
HHH-9182 Test and fix HQL rules to allow more expression types in aggregate functions
2021-03-03 08:34:12 +01:00
Gail Badner
34a361058d
HHH-14390 HHH-14466 : StackOverflowError loading inverse side of associations owned by associated entity ID
...
Improved code comments as recommended by Steve Ebersole.
2021-03-02 14:13:48 -08:00
Gail Badner
cb18fdb4f7
HHH-14390 : StackOverflowError with @Fetch(FetchMode.SELECT) mapped for entity with an ID that is a bidirectional one-to-one eager association
...
Move fix into FetchStyleLoadPlanBuildingAssociationVisitationStrategy
2021-03-02 14:13:47 -08:00
Gail Badner
2bacaabc37
HHH-14466 : StackOverflowError loading an entity with eager one-to-many if bidirectional and many-to-one side is the ID
2021-03-02 14:13:47 -08:00
Christian Beikov
59735d2329
HHH-14471 Fix concurrency issue due to builder sharing in DynamicBatchingEntityLoader
2021-03-02 18:11:47 +01:00
Christian Beikov
1714c022e2
HHH-11076 Log a warning if uninitialized collection unsets session when filters are enabled
2021-03-02 17:28:13 +01:00
Sanne Grinovero
eb639a2d95
HHH-14474 Method AbstractEntityPersister#getAppropriateUniqueKeyLoader also need to change in protected
2021-03-02 13:25:59 +00:00
Sanne Grinovero
17bffb08a5
HHH-14474 Style and formatting improvements
2021-03-02 10:26:58 +00:00
Gavin King
4fad616d4b
HHH-14474 Refactor internal visibility to allow Hibernate Reactive to implement non-primary key associations
...
see https://github.com/hibernate/hibernate-reactive/issues/565
2021-03-02 10:26:47 +00:00
Sanne Grinovero
6868c68278
HHH-14443 Formatting and style fixes
2021-03-01 16:13:02 +00:00
Francois van Delft
de3f3c1d74
HHH-14443 Add hashcode to ObjectTypeCacheEntry, so query cache can do a successfull lookup for queryies with AnyTypes
2021-03-01 16:05:38 +00:00
gbadner
a90aaa48b4
HHH-14467 Avoid false positives when detecting *ToOne associations that are part of the identifier
...
Co-authored-by: Yoann Rodière <yoann@hibernate.org>
2021-03-01 08:37:14 +01:00
Gail Badner
021b2741ab
HHH-14467 Simplify detection of *ToOne associations that are part of the entity identifier
2021-03-01 08:37:14 +01:00
Yoann Rodière
b6b83536e6
HHH-14467 Test referencing an entity whose ID is derived
...
Signed-off-by: Yoann Rodière <yoann@hibernate.org>
2021-03-01 08:37:14 +01:00
Yoann Rodière
9b991310b5
HHH-14467 Fix relative ordering of second pass for associations and derived IDs
...
Always execute second pass for associations referencing an entity with
derived ID after the second pass for that entity's derived ID.
Signed-off-by: Yoann Rodière <yoann@hibernate.org>
2021-03-01 08:37:14 +01:00
Gavin King
496e5995b2
deprecate old code for fetching id by natural id
2021-02-24 07:59:57 -06:00
Gavin King
3a24c700fc
cache the @NaturalId loaders
...
and clean up some of the other loader caching code
2021-02-24 07:59:57 -06:00
Gavin King
e0ee9f5b0a
make it easy for Hibernate Reactive to reuse the @NaturalId stuff
2021-02-24 07:59:57 -06:00