Commit Graph

10815 Commits

Author SHA1 Message Date
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
Sanne Grinovero 8b9b5e7e68 HHH-14610 Upgrade to Byte Buddy 1.10.22 2021-05-16 14:56:53 +01:00
Andrea Boriero b30a68f5be HHH-14596 WhereAnnotatedOneToManySizeTest fails on HANA database 2021-05-13 09:49:14 +02:00
Nathan Xu 40851fc50d HHH-14406 fix Architecture svg image in user guide 2021-05-13 09:32:12 +02:00
Hibernate-CI 43539f0399 5.5.0-SNAPSHOT 2021-05-12 16:03:47 +00:00
Hibernate-CI 0dbffcc068 5.5.0.Beta1 2021-05-12 15:56:40 +00: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
Christian Beikov b36b8e4d1c
Enable publishing for hibernate-testing-jakarta 2021-05-12 14:11:53 +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
Christian Beikov 0c79d1d644 Fix service registry injection through connection provider delegate 2021-05-07 15:29:11 +02:00
Christian Beikov a8f00b00aa Make use of narayana Jakarta artifacts 2021-05-07 15:29:11 +02:00
Yoann Rodière 0750c6784e Only apply --add-opens to compiler JVM options when using JDK9+ 2021-05-07 11:00:43 +02:00
Christian Beikov 225429a4cf Fix publishing related issues in jakarta artifacts 2021-05-06 07:16:32 +02:00
Christian Beikov 129484557b Re-include the temporary jakarta testing modules 2021-05-06 06:37:41 +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
Hibernate-CI 830423422d 5.5.0-SNAPSHOT 2021-04-30 12:30:04 +00:00
Hibernate-CI 996debdc54 5.5.0.Alpha1 2021-04-30 12:24:18 +00:00
Andrea Boriero 8dabefd111 HHH-14573 Remove useless call to EnhancementAsProxyLazinessInterceptor#isInitialized() 2021-04-30 13:11:01 +02:00
Christian Beikov c29b2d27ee HHH-14577 Add Jenkinsfiles for running TCKs 2021-04-30 11:41:05 +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
Andrea Boriero cd97e59d21 HHH-14513 Move publishing release artifacts from BinTray 2021-04-29 20:59:18 +02:00
Andrea Boriero 9bcf10fb3f HHH-14513 Move publishing release artifacts from BinTray 2021-04-29 20:59:18 +02:00
Christian Beikov c096b463ee Emulate null ordering for CockroachDB 2021-04-29 13:43:52 +02:00
Andrea Boriero 127ee26f82 HHH-14513 Move publishing release artifacts from BinTray 2021-04-29 13:29:42 +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 b0abe9f37e HHH-14563 Remove the DOM4J dependency from hibernate-enhance-maven-plugin
As far as I can tell, this was only necessary as a transitive dependency
of Hibernate ORM.
2021-04-19 15:39:35 +02:00
Yoann Rodière d7e85a3c3c HHH-14563 Clarify that hibernate-spatial only needs dom4j for tests
For org.hibernate.spatial.testing.TestDataReader, to be precise.
2021-04-19 15:39:35 +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