Commit Graph

9893 Commits

Author SHA1 Message Date
Andrea Boriero 2331389b5f HHH-16009 jakarta @OrderBy annotation generates a non-transformed column name in the SQL query for a composite key's field 2023-02-27 17:03:48 +01:00
Andrea Boriero 32ee9f8d93 HHH-16009 Code refactoring 2023-02-27 17:03:48 +01:00
Andrea Boriero d6fd1dd056 HHH-16009 Add test for issue 2023-02-27 17:03:48 +01:00
Marco Belladelli b16ad226ba HHH-16185 Custom trunc/truncate implementation that handles both numeric and datetimes 2023-02-27 17:01:45 +01:00
Marco Belladelli 789c131c2d HHH-16185 Implement portable date_trunc function emulation and tests 2023-02-27 17:01:45 +01:00
Georgios Andrianakis 9cec39c316 Fix logging in AbstractCollectionInitializer
The previous version of the code lead to misleading
log statements being printed when debug logging
was enabled for 'org.hibernate.orm.results.loading.collection'
2023-02-27 14:11:07 +01:00
Andrea Boriero 346da69979 HHH-16202 @OrderBy not applied to collections when @Fetch(value = FetchMode.SUBSELECT) 2023-02-27 14:10:18 +01:00
Andrea Boriero 8776a8068a HHH-16202 Add test for issue 2023-02-27 14:10:18 +01:00
shin-mallang 3edb588ca2 HHH-16233 Fix logs for mutable non-root entity 2023-02-27 13:20:03 +01:00
Davide D'Alto c7a651660e HHH-16220 Add MutationExecutorStandard#getNonBatchedStatementGroup
For Hibernate Reactive
2023-02-27 12:53:22 +01:00
Sanne Grinovero 598b782387 HHH-16228 Allow Dialect wrapper to expose the wrapped instance 2023-02-24 22:04:09 +00:00
Sanne Grinovero 9ec32782a0 HHH-16228 Avoid delegating protected methods using during construction 2023-02-24 19:49:31 +00:00
Steve Ebersole 5451ed7437 HHH-16227 - Introduce SqmMultiTableMutationStrategyProvider 2023-02-24 09:52:18 -06:00
Sanne Grinovero 132ac1bd21 HHH-16228 Introduce a Dialect wrapper base class 2023-02-24 13:50:40 +00:00
Steve Ebersole b3619cc129 HHH-16226 - Introduce JdbcValuesMappingProducerProvider 2023-02-24 07:33:15 -06:00
Sanne Grinovero ce9501e0e5 HHH-16222 Improve warning triggered when the PostgreSQL JDBC driver is not accessible 2023-02-23 14:58:59 +00:00
Sanne Grinovero b328b1a3fb HHH-16221 Improve extensibility of CockroachDB and PostgreSQL dialects 2023-02-23 14:58:53 +00:00
Andrea Boriero 87bf20f1bb HHH-16175 Fix sybase test failure 2023-02-23 09:04:49 +01:00
Sanne Grinovero 56cd6a2ca0 HHH-16214 Use a more efficient Map implementation in SqmFunctionRegistry 2023-02-21 18:39:58 +00:00
Steve Ebersole b600f36d7e Fixed up some SessionFactory-related deprecation warnings 2023-02-21 09:00:46 -06:00
Yoann Rodière 100d9351cd HHH-16177 Test catalog/schema creation/dropping in DefaultCatalogAndSchemaTest 2023-02-21 09:24:38 +01:00
Yoann Rodière 0233d8ebd9 HHH-16177 Take into account the default catalog/schema when creating/dropping catalogs/schemas 2023-02-21 09:24:38 +01:00
Andrea Boriero 35fbd6695a AssertionError in StandardEntityGraphTraversalStateImpl.traverse when using entity graph 2023-02-21 09:12:44 +01:00
Yoann Rodière 5589583ca6 HHH-16175 Test entity graphs when including either all attributes or no attributes 2023-02-21 09:12:44 +01:00
Gavin f10d3e6841 fix mistake in Oracle timestamp rendering
we need to include the time zone
2023-02-20 21:08:16 +01:00
Gavin King 696bbf3ff8 add tests for casts to/from OffsetDateTime 2023-02-20 21:08:16 +01:00
Andrea Boriero 3dc196c673 HHH-16119 Fix test typo 2023-02-20 14:37:56 +01:00
Andrea Boriero aac3f5fc85 HHH-16184 Two queries are execute to initialize empty collections 2023-02-20 14:24:02 +01:00
Andrea Boriero 2ee1c970a3 HHH-16184 Add test for issue 2023-02-20 14:24:02 +01:00
Gavin King 7e629957e4 very minor javadoc formatting change 2023-02-20 12:40:06 +01:00
Georgios Andrianakis 61e078fbd8 Apply changes needed for support of @ValueGenerationType in Hibernate Reactive 2023-02-20 09:33:18 +01:00
Marco Belladelli 4cc5941798 HHH-16155 Disable batching when generated properties are found 2023-02-20 09:31:50 +01:00
Marco Belladelli c3174e6b62 HHH-16155 Add test for issue 2023-02-20 09:31:50 +01:00
Sanne Grinovero 73ce912dc2 HHH-16194 Failure to automatically integrate with Bean Validation is excessively noisy 2023-02-17 16:52:19 +00:00
Steve Ebersole 1db04f54af Misc 2023-02-16 21:00:46 -06:00
Christian Beikov 01659ed71d HHH-14514 Fix auto eviction of collection cache 2023-02-16 09:06:15 +01:00
Jan Schatteman 2019fca0cb HHH-16082 - Correction to the epoch extraction for DB2
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2023-02-15 23:54:28 +01:00
Jan Schatteman 7ba3bb98a4 HHH-16169 - Fix potential NullPointerException in CollectionEntry
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2023-02-14 18:44:23 +01:00
Jan Schatteman ab860995ef HHH-16082 - Correction to the epoch extraction for HANA
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2023-02-14 18:42:07 +01:00
Davide D'Alto 3992f722a8 HHH-16183 Change scopes of private methods in InsertCoordinator 2023-02-14 18:27:10 +01:00
Marco Belladelli d866909285 HHH-16080 Add test for issue 2023-02-14 12:24:00 +01:00
Paul Ferraro 105253df5f HHH-16172 Expose internal state of 2nd-level cache keys 2023-02-13 21:08:48 +00:00
Christian Beikov 4e961e85c8 HHH-16150 Fix a little issue with SessionFactoryImpl#disintegrate 2023-02-13 18:54:17 +01:00
Yoann Rodière 6a96986ec1 HHH-16150 Fix schema not being dropped on bootstrap failure with the "create-drop" strategy 2023-02-13 18:54:17 +01:00
Andrea Boriero 50b835b145 HHH-16119 Named native queries do not work with jakarta.persistence.Tuple result class 2023-02-13 18:53:34 +01:00
Andrea Boriero 41961d457a HHH-16119 Add test for issue 2023-02-13 18:53:34 +01:00
Christian Beikov 404698b004 Replace mockito for some tests with custom spies 2023-02-13 18:40:46 +01:00
Marco Belladelli edd1c7b7ae HHH-16109 Don't add limits to named queries when not needed 2023-02-13 17:00:36 +01:00
Marco Belladelli 98ca6fcfb3 HHH-16109 Add test for issue 2023-02-13 17:00:36 +01:00
Andrea Boriero 6f23c6fd00 HHH-15990 unable to determine TableReference when associate ManyToOne fetch lazy and NotFound IGNORE 2023-02-13 16:58:47 +01:00
Andrea Boriero 77ae4201d1 HHH-15990 Add test for issue 2023-02-13 16:58:47 +01:00
Christian Beikov 9ef49c596d Get rid of most capturing lambdas in write path 2023-02-13 16:57:24 +01:00
Marco Belladelli 57f5769ee5 HHH-16170 Check for enums in update statement 2023-02-13 16:55:15 +01:00
Marco Belladelli 984f7ff571 HHH-16170 Add test for issue 2023-02-13 16:55:15 +01:00
Gavin King f3833e71a9 HHH-16174 support for extract(epoch from ...) in HQL 2023-02-13 15:40:24 +01:00
Jan Schatteman b430c6066a HHH-16131 - Correction to workaround for date calculation errors on Oracle (first workaround failed on Oracle 11)
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2023-02-13 10:20:13 +01:00
Christian Beikov 300a792bb6 Fix TenantIdTest when VM has nanosecond precision 2023-02-13 10:06:50 +01:00
Christian Beikov 0769c8c917 Use an instant in tests that fits the millisecond resolution of Sybase 2023-02-10 18:22:09 +01:00
Gavin King 9d254f4f8e HHH-16133 allow before-execution generators for embeddable properties
and by side-effect allow @TenantId for embeddable properties
2023-02-10 17:42:55 +01:00
Gavin King 19c559dfb9 very minor jdoc changes 2023-02-10 17:42:55 +01:00
Christian Beikov 241cdf16d9 Get rid of capturing lambdas for Bindable#JdbcValueConsumer 2023-02-10 16:08:09 +01:00
Steve Ebersole 973434c8f1 HHH-16148 - Introduce Immutability (MutabilityPlan) for use with @Mutability
HHH-16141 - Support @Mutability and @Immutable on UserType
HHH-16147 - Support @Mutability and @Immutable on AttributeConverter
HHH-16146 - Improve User Guide documentation for (im)mutability
2023-02-10 08:38:40 -06:00
Christian Beikov ecf8e1ce39 Get rid of Clause parameter in JdbcParameterBindings 2023-02-10 15:33:45 +01:00
Andrea Boriero 6e87e4ba1d HHH-16165 Incorrect SQL generated when using SELECT DISTINCT and @OrderBy 2023-02-10 15:01:06 +01:00
Andrea Boriero 32f0981b5b HHH-16165 Add test for issue 2023-02-10 15:01:06 +01:00
Marco Belladelli 74b811d99a HHH-16137 Fix check when replacing jdbc parameter 2023-02-10 15:00:21 +01:00
Marco Belladelli 4c699f8d75 HHH-16137 Add test for issue 2023-02-10 15:00:21 +01:00
Christian Beikov 8e0e4caa61 Remove identity generation strategy from entity in tests that doesn't need it 2023-02-10 14:59:18 +01:00
Marco Belladelli 68f50c26e7 HHH-16157 Add test for issue and fix duplicate discriminator conditions in join fetch queries 2023-02-09 18:26:09 +01:00
Marco Belladelli ac359b6736 HHH-16037 HHH-16053 Add test for issues 2023-02-09 18:26:09 +01:00
Marco Belladelli 7af29eacd7 HHH-15829 Add test for issue 2023-02-09 18:26:09 +01:00
Christian Beikov 1d6951aac3 HHH-16123 Add another test and fix rendering the pruned subquery in UnionSubclassEntityPersister 2023-02-09 14:01:38 +01:00
Marco Belladelli 6fc3ec6901 HHH-16123 Add test for issue 2023-02-09 14:01:38 +01:00
Marco Belladelli 8f4cbd335f HHH-16112 No expectation for one-shot collection delete using update 2023-02-09 10:22:20 +01:00
Marco Belladelli 6feaf2a9e9 HHH-16112 Add test for issue 2023-02-09 10:22:20 +01:00
Gavin King 958cdfb09f remove an obsolete constructor no longer called by Quarkus
and delete the stupid InformixDialectTestCase
2023-02-08 21:39:56 +01:00
Marco Belladelli 1fcd53dc78 HHH-16136 Initialize bytecode-enhanced proxy for associated entities 2023-02-08 18:22:35 +01:00
Marco Belladelli 521f85a20d HHH-16136 Add test for issue 2023-02-08 18:22:35 +01:00
Christian Beikov f8a17f16c4 HHH-15898 Allow explicit configuration of the UDT column order 2023-02-08 18:07:26 +01:00
Jan Schatteman 60520667c1 Remove calls to deprecated createQuery method from FunctionTests
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2023-02-08 17:52:24 +01:00
Jan Schatteman 35682e50da HHH-16131 - Added workaround and test for date calculcation errors on Oracle
Temporarily excluded TiDB from that test (until they fix https://github.com/pingcap/tidb/issues/41052)

Added tidb to the docker_db script

Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2023-02-08 17:52:24 +01:00
Jan Schatteman 8b9d199fcf HHH-16151 - Fix potential NullPointerException in SqmTreePrinter for the like excape character
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2023-02-08 16:22:01 +01:00
Christian Beikov 5e26bf0c3e HHH-15875 Fix join fetch support for associations within embedded ids 2023-02-08 14:04:02 +01:00
Christian Beikov f2842732f8 [HHH-16122] Fix determining the type of a property during type variable resolving for mapped superclasses 2023-02-07 17:50:16 +01:00
Markus Heiden aa76d057d9 [HHH-16122] Add test to reproduce problem 2023-02-07 17:50:16 +01:00
Steve Ebersole 63715770e9 HHH-16081 - Converted collection-as-basic values are considered immutable
HHH-16132 - Dirty checking broken for collection-as-basic mappings (test)
2023-02-06 13:03:17 -06:00
Marco Belladelli 2f6f17912f HHH-15733 Change convert logic to default to value for Map collections of basic types 2023-02-06 18:35:33 +01:00
Marco Belladelli b1a16f419c HHH-15733 Add test for issue 2023-02-06 18:35:33 +01:00
Christian Beikov 3df56ac794 Fix tests for Oracle 11 2023-02-06 10:10:14 +01:00
Marco Belladelli c7541cf06a HHH-15998 Check dynamic instantiation arguments in group by clause 2023-02-03 19:00:24 +01:00
Marco Belladelli a34182d3f5 HHH-15991 Add test for issue 2023-02-03 19:00:24 +01:00
Marco Belladelli 027c308104 HHH-15998 Add test for issue 2023-02-03 19:00:24 +01:00
Marco Belladelli 890e4ad62c HHH-16040 New coercing assembler when types are different from expected 2023-02-03 17:53:06 +01:00
Marco Belladelli b2689fa929 HHH-15916 Add test for issue 2023-02-03 17:53:06 +01:00
Marco Belladelli bb0f4b2807 HHH-16040 Add test for issue 2023-02-03 17:53:06 +01:00
Andrea Boriero 974afe26f0 HHH-16117 Querying entity with collection in Embeddable causes 'A collection with cascade=all-delete-orphan was no longer referenced by the owning entity instance' 2023-02-03 17:47:15 +01:00
Andrea Boriero 7b6d158245 HHH-16117 Add test for issue 2023-02-03 17:47:15 +01:00
Andrea Boriero b2f0ead740 HHH-16075 Add test for issue 2023-02-03 17:46:57 +01:00
Andrea Boriero d34f50589c HHH-16120 Error advancing (next) ResultSet position 2023-02-03 17:46:02 +01:00
Andrea Boriero 3f814d8845 HHH-16120 Add test for issue 2023-02-03 17:46:02 +01:00
Andrea Boriero bea5bfbe89 HHH-15944 Joins on non-managed-type polymorphisms don't work 2023-02-03 17:45:21 +01:00
Andrea Boriero ab7d05c150 HHH-15944 Add test for issue 2023-02-03 17:45:21 +01:00
Andrea Boriero 9b59f7c1b6 HHH-15970 Add test for issue 2023-02-03 17:42:48 +01:00
Andrea Boriero ba0fa8c26d HHH-15969 Inheritance: org.hibernate.PropertyAccessException Exception 2023-02-03 17:41:03 +01:00
Andrea Boriero 08941ba7fc HHH-15969 Add test for issue 2023-02-03 17:41:03 +01:00
Jan Schatteman 0cac315519 HHH-15665 - Fix and added test for issue
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2023-02-03 17:39:38 +01:00
Marco Belladelli e884ab3082 HHH-16003 Create correct table group for embedded valued paths 2023-02-03 12:02:34 +01:00
Marco Belladelli 2e3a18a3c6 HHH-16003 Add test for issue 2023-02-03 12:02:34 +01:00
Christian Beikov f11a18dae0 Fix HANA test issues 2023-02-02 19:07:15 +01:00
Gavin King f6f2db18da remove unused imports 2023-02-02 11:03:10 +01:00
Sanne Grinovero b1030044f5 HHH-16124 Remove deprecated method CacheTransactionSynchronization#getCurrentTransactionStartTimestamp 2023-02-01 14:08:59 +00:00
Gavin King cc42864351 javadoc some things about falling back from JPA to native APIs 2023-01-31 11:55:05 +01:00
Yanming Zhou cd50a98c66 Fix wrong @Deprecated since version 2023-01-30 21:24:19 +00:00
Yoann Rodière ff8b673689 HHH-16104 Clarify that tests in package org.hibernate.orm.test.cdi.general.nonregistrymanaged are about Hibernate Search
By renaming that package to
org.hibernate.orm.test.cdi.general.hibernatesearch, renaming the test
classes to include "HibernateSearch" in their name, and adapting
comments.
2023-01-30 11:24:59 +01:00
Steve Ebersole 2c78d83b5a HHH-16113 - Add version checks for MERGE support to dialects 2023-01-27 22:19:39 -06:00
Christian Beikov 16ca1a0595 HHH-15443 Allow JdbcType to wrap read and write expressions 2023-01-27 14:26:42 -06:00
Steve Ebersole 67f8bee35a HHH-16110 - MERGE for optional table update PostgreSQL 2023-01-27 11:25:39 -06:00
Jan Schatteman b39c52b4d9 HHH-4299 - Add test for issue
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2023-01-27 17:53:31 +01:00
Marco Belladelli 46104cc50e HHH-15822 Make sure MappedSuperclass can act as type for entity valued paths 2023-01-27 14:58:19 +01:00
Marco Belladelli dcf62801dc HHH-15822 Add test for issue 2023-01-27 14:58:19 +01:00
Jan Schatteman cbf63345d4 HHH-16020 - Fix for error that surfaced in the LegacyOracleLimitHandler due to the fix for HHH-16020
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2023-01-27 11:19:58 +01:00
Steve Ebersole 1d62d2d66e HHH-16101 - MERGE for optional table updates on Oracle 2023-01-26 12:49:59 -06:00
Steve Ebersole ee8d80a8bd HHH-16069 - Skip CDI for Hibernate extensions by default 2023-01-26 12:19:31 -06:00
Andrea Boriero 6ebafc1cae HHH-16108 NullPointerException when flushing a (simple) entity update for models with bytecode enhancement and multiple one-to-one associations (some lazy) 2023-01-26 18:09:14 +01:00
Yoann Rodière 6bc1b24443 HHH-16108 Test a (simple) entity update for models with bytecode enhancement and multiple one-to-one associations (some lazy)
Stack trace:

java.lang.NullPointerException: Cannot invoke "org.hibernate.metamodel.mapping.SelectableMapping.isFormula()" because "selectable" is null

	at org.hibernate.persister.entity.mutation.UpdateCoordinatorStandard.processSet(UpdateCoordinatorStandard.java:665)
	at org.hibernate.persister.entity.mutation.UpdateCoordinatorStandard.processAttribute(UpdateCoordinatorStandard.java:640)
	at org.hibernate.persister.entity.mutation.UpdateCoordinatorStandard.analyzeUpdateValues(UpdateCoordinatorStandard.java:600)
	at org.hibernate.persister.entity.mutation.UpdateCoordinatorStandard.performUpdate(UpdateCoordinatorStandard.java:256)
	at org.hibernate.persister.entity.mutation.UpdateCoordinatorStandard.coordinateUpdate(UpdateCoordinatorStandard.java:203)
	at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2766)
	at org.hibernate.action.internal.EntityUpdateAction.execute(EntityUpdateAction.java:165)
	at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:616)
	at org.hibernate.engine.spi.ActionQueue.lambda$executeActions$1(ActionQueue.java:487)
	at java.base/java.util.LinkedHashMap.forEach(LinkedHashMap.java:721)
	at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:484)
	at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:358)
	at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:39)
	at org.hibernate.event.service.internal.EventListenerGroupImpl.fireEventOnEachListener(EventListenerGroupImpl.java:127)
	at org.hibernate.internal.SessionImpl.doFlush(SessionImpl.java:1412)
	at org.hibernate.internal.SessionImpl.managedFlush(SessionImpl.java:485)
	at org.hibernate.internal.SessionImpl.flushBeforeTransactionCompletion(SessionImpl.java:2277)
	at org.hibernate.internal.SessionImpl.beforeTransactionCompletion(SessionImpl.java:1942)
	at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.beforeTransactionCompletion(JdbcCoordinatorImpl.java:426)
	at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl.beforeCompletionCallback(JdbcResourceLocalTransactionCoordinatorImpl.java:169)
	at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl$TransactionDriverControlImpl.commit(JdbcResourceLocalTransactionCoordinatorImpl.java:267)
	at org.hibernate.engine.transaction.internal.TransactionImpl.commit(TransactionImpl.java:101)
	at org.hibernate.testing.transaction.TransactionUtil2.inTransaction(TransactionUtil2.java:128)
	at org.hibernate.testing.transaction.TransactionUtil2.lambda$inTransaction$0(TransactionUtil2.java:76)
	at org.hibernate.testing.transaction.TransactionUtil2.inSession(TransactionUtil2.java:35)
	at org.hibernate.testing.transaction.TransactionUtil2.inTransaction(TransactionUtil2.java:74)
	at org.hibernate.testing.junit4.BaseNonConfigCoreFunctionalTestCase.inTransaction(BaseNonConfigCoreFunctionalTestCase.java:590)
	at org.hibernate.orm.test.bytecode.enhancement.lazy.proxy.LazyOneToOneMultiLevelTest.testPersist(LazyOneToOneMultiLevelTest.java:56)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:568)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
2023-01-26 18:09:14 +01:00
Andrea Boriero 6c385f7890 HHH-16106 Using BatchEntitySelectFetchInitializer causes PostLoad to be called before references are initialized 2023-01-26 16:14:46 +01:00
Andrea Boriero 10458da711 HHH-16106 Add test for issue 2023-01-26 16:14:46 +01:00
Vedran Prišćan d18cdbec35 HHH-16096 Passing an ExtendedBeanManager which is notified too late leads to initialization error 2023-01-26 09:03:28 -06:00
Marco Belladelli 94b20bafc8 HHH-16070 Check for type parameters when setting declared identifier 2023-01-26 13:52:34 +01:00
Marco Belladelli 3bfb2f66a1 HHH-16070 Add test for issue 2023-01-26 13:52:34 +01:00
Marco Belladelli 7cd6d0422f HHH-16023 Check fetchable declaring type when not found in persister 2023-01-26 13:06:50 +01:00
Marco Belladelli 64b3855c73 HHH-16023 Add test for issue 2023-01-26 13:06:50 +01:00
Sanne Grinovero ae37509b11 HHH-16099 Introduce three-state handling for dirty levels to avoid excessive warnings
We now differentiate between an Attribute which has been marked as "real dirty" from
one which needs to be "treated like dirty", so to not bother end users with a WARN
log when a non-updateable property had not been updated explicitly by them.
2023-01-26 08:35:26 +00:00
Steve Ebersole e27dc5bc47 HHH-16103 - MERGE for optional table updates on SQL Server 2023-01-26 00:41:58 -06:00
Steve Ebersole 5525b8d9b7 HHH-16103 - MERGE for optional table updates on SQL Server 2023-01-26 00:41:58 -06:00
Steve Ebersole a742f5e988 HHH-16069 - Skip CDI for Hibernate extensions by default 2023-01-26 00:29:24 -06:00
Sanne Grinovero 9e033c8aea HHH-16099 Minor refactoring, extract local constants in UpdateCoordinatorStandard 2023-01-25 21:52:21 +00:00
Gavin e00bdc7cb2 fix typo in jdoc 2023-01-25 22:04:03 +01:00
Sanne Grinovero 0b5cb6c649 HHH-16090 BasicResultAssembler logging optimisations 2023-01-25 17:57:26 +00:00
Christian Beikov 033eeb7241 Make session part of JdbcValueBindings 2023-01-25 18:15:11 +01:00
Christian Beikov e841b0aaae Get rid of some capturing lambdas 2023-01-25 18:15:11 +01:00
Steve Ebersole 420e561f21 HHH-16099 - Log about immutable properties only if dirty on update 2023-01-25 11:00:12 -06:00
Marco Belladelli eca3ff13bd HHH-16062 Apply settings and hints to criteria queries 2023-01-25 17:52:33 +01:00
Marco Belladelli 136169d43a HHH-16062 Add test for issue 2023-01-25 17:52:33 +01:00
Yoann Rodière 528d897c4d HHH-16085 Test mapping arrays with @JdbcTypeCode(Type.VARBINARY)
This is useful to revert to pre-6.1 behavior for array mapping in particular.
2023-01-25 17:47:30 +01:00
Christian Beikov e464f53df8 Fix compile error 2023-01-25 17:43:52 +01:00
Andrea Boriero 49779ed4dc HHH-16005 Add test for issue 2023-01-25 17:13:40 +01:00
Andrea Boriero f15d6ee5fb HHH-16025 Using BatchEntitySelectFetchInitializer with caching leads to caching wrong values 2023-01-25 17:05:35 +01:00
Andrea Boriero ac0a27eca2 HHH-16025 Add test for issue 2023-01-25 17:05:35 +01:00
Andrea Boriero b033b88472 HHH-15921 @BatchSize and @IdClass on join column throws exception 2023-01-25 17:05:35 +01:00
Andrea Boriero dbaca049c8 HHH-16039 Add test for issue 2023-01-25 17:05:35 +01:00
Andrea Boriero 8d0729f543 HHH-15921 Add test for issue 2023-01-25 17:05:35 +01:00
Marco Belladelli f9b169242a HHH-16043 Correct single ID and init empty for batch collection loading 2023-01-25 17:01:31 +01:00
Marco Belladelli 17506b7f80 HHH-16043 Add test for issue 2023-01-25 17:01:31 +01:00
Sanne Grinovero 2d7774b9ab HHH-16091 Optimize also AbstractStandardBasicType#compare and #fromString 2023-01-25 14:21:29 +00:00
Sanne Grinovero 12c7252c59 HHH-16091 Make AbstractStandardBasicType#getMutabilityPlan return a constant too 2023-01-25 14:21:29 +00:00
Sanne Grinovero b77bbf0650 HHH-16091 Make AbstractStandardBasicType#getReturnedClass return a constant 2023-01-25 14:21:29 +00:00
Sanne Grinovero 12abcc4c60 HHH-16091 AbstractStandardBasicType to avoid megamorphic dispatch when dealing with AbstractClassJavaType 2023-01-25 14:21:29 +00:00
Sanne Grinovero 1652102c1a HHH-16092 Trim allocation size of CacheKeyImplementation, avoid Objects::deepEquals 2023-01-25 12:00:38 +00:00
Gavin 4ca5902672 mention the query result set cache in the javadoc 2023-01-25 09:52:37 +01:00
Christian Beikov a0d162cde8 Fix test failure by respecting custom insert/delete SQL for secondary tables 2023-01-25 09:32:16 +01:00
Gavin 0bb04b1021 HHH-16089 allow @Synchronize for a collection 2023-01-25 00:19:42 +01:00
Steve Ebersole 2a24876f69 HHH-16084 - MERGE (upsert) for optional table updates - H2 2023-01-24 10:00:54 -06:00
Steve Ebersole 21b7745768 HHH-16084 - MERGE (upsert) for optional table updates - H2 2023-01-24 10:00:54 -06:00
Marco Belladelli 998f2ef21f HHH-15933 Better property owner check + new test case for JoinedSubclass 2023-01-24 14:16:08 +01:00
Marco Belladelli 49690bf4ce HHH-15933 Table reference by name and change referenced property owner 2023-01-24 14:16:08 +01:00
Andrea Boriero a4e2fe57cc HHH-16033 Many-to-Many inverse mapping referencing the same class uses pk instead of fk field for removal 2023-01-24 10:49:31 +01:00
William Burns ea8b0649a2 HHH-16033 Many-to-Many inverse mapping referencing the same class uses pk instead of fk field for removal
* Just reproducer for issue
2023-01-24 10:49:31 +01:00
Andrea Boriero 1638c074d5 HHH-16031 @ManyToMany with @JoinTable(inverseColumn = ...) and SortedSet may results in data loss 2023-01-24 10:49:31 +01:00
Andrea Boriero f4aec1cd0a HHH-16031 @ManyToMany with @JoinTable(inverseColumn = ...) and SortedSet may results in data loss 2023-01-24 10:49:31 +01:00
Yoann Rodière 241fe54d0a HHH-16031 Test @ManyToMany + @JoinTable(inverseColumn) on a SortedSet 2023-01-24 10:49:31 +01:00
Andrea Boriero 0983b47252 HHH-16049 Setting a property to its current value with bytecode enhancement enabled results in unnecessary SQL Update in some (many) cases 2023-01-24 10:40:52 +01:00
Andrea Boriero 3d9a1bce9b HHH-16049 Test setting a property to its current value with bytecode enhancement enabled 2023-01-24 10:40:52 +01:00
Yoann Rodière 5bd1f7c05b HHH-16049 Test setting a property to its current value with bytecode enhancement enabled 2023-01-24 10:40:52 +01:00
Yoann Rodière acbfa0a060 HHH-16049 Restructure lazy-basic tests for easier re-execution and better test reports 2023-01-24 10:40:52 +01:00
Marco Belladelli 12c69c8528 Fix wrong version check in from dual for select only for MySQL 2023-01-24 09:05:04 +01:00
Steve Ebersole 6e442aaed5 HHH-16077 - Added named native queries cannot specify result-class 2023-01-23 21:32:31 -06:00
Steve Ebersole e7b2f9b121 HHH-16077 - Added named native queries cannot specify result-class 2023-01-23 20:26:49 -06:00
Gavin 4a37bf8017 fix another typo 2023-01-23 16:54:34 +01:00
Gavin ea6d76b9b4 fix typos 2023-01-23 16:49:23 +01:00
Gavin 6e590a0149 clean up impl of query hint interpretation
use 'switch' statements
2023-01-23 16:34:10 +01:00
Marco Belladelli 8755129648 HHH-16050 StandardStack optimization using custom array implementation 2023-01-23 11:51:57 +00:00
Andrea Boriero 01db71c272 HHH-16061 SqmDynamicInstantiation warns about dynamic Map instantiation when using an entity 2023-01-23 09:16:55 +01:00
Andrea Boriero e6b94398de HHH-16061 Add test for issue 2023-01-23 09:16:55 +01:00
Gavin e0e3921503 more query space javadoc improvements 2023-01-22 21:25:13 +01:00
Gavin 662594fd5f HHH-16079 rewrite javadoc relating to query spaces + add @Synchronize(logical=false) 2023-01-22 14:50:50 +01:00
Gavin 75f3f699b5 very minor cleanups 2023-01-22 14:50:50 +01:00
Steve Ebersole 35f0c57f07 HHH-15949 - Make MetadataBuilderContributor discoverable 2023-01-20 17:45:11 -06:00
Steve Ebersole b5022f94d3 HHH-15949 - Deprecate MetadataContributor 2023-01-20 16:42:14 -06:00
Steve Ebersole bab25b42e4 HHH-16077 - Added named native queries cannot specify result-class 2023-01-20 15:47:54 -06:00
Sanne Grinovero 94054f6a57 HHH-16072 Restore SPI removal SharedSessionContractImplementor.getTransactionStartTimestamp() 2023-01-20 21:37:55 +00:00
Sanne Grinovero 800873c43d HHH-16058 Removing Environment#getBytecodeProvider 2023-01-20 14:31:08 +00:00
Andrea Boriero 1e21d1c6d1 HHH-16006 Fix checkstyle error 2023-01-20 14:53:41 +01:00
Gavin 1b09d20da0 deprecate config property org.hibernate.flushMode on AvailableSettings
it's actually a JPA hint, and rightfully belongs on HibernateHints
2023-01-20 11:29:59 +01:00
Gavin a986a3806a add convenience method to retrieve Dialect from FunctionContributions
because in fairness this is a little hard to find
2023-01-19 23:57:40 +01:00
Steve Ebersole a552a73632 HHH-16006 - Implement an "additional mapping" contributor SPI 2023-01-19 16:30:46 -06:00
Davide D'Alto e03b3f051a
HHH-16059 Add getters to CteInsertHandler
And the relax scope of a private method.

This way Hibernate Reactive can access them.
2023-01-19 12:28:40 +01:00
Davide D'Alto e2baceb382
HHH-16059 Add getters and relax scopes
extending CteInsertStrategy and CteMutationStrategy
2023-01-19 11:00:38 +01:00
Jan Schatteman f53a29ab12 HHH-16020 - Fix for incorrect offset parameter index and add test for
issue

Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2023-01-18 19:59:07 +01:00
Sanne Grinovero 67dc1ed835 HHH-16052 EntityKey and CollectionKey equality optimisation 2023-01-17 16:47:22 +00:00
Gavin cf65a2d275 improve javadoc for hibernate.hbm2ddl.import_files_sql_extractor 2023-01-17 00:43:52 +01:00
Sanne Grinovero 84a652bfe7 HHH-16051 Avoid stateful lambdas on invocations of Stack#findCurrentFirst 2023-01-16 21:39:15 +00:00
Sanne Grinovero c570b11dcd HHH-16047 Allow reusing of FlushEntityEvent instances 2023-01-16 15:11:15 +00:00
Sanne Grinovero 9f88b56099 HHH-16046 Improve memory safety of mutations in EventListenerGroupImpl
Also avoid for method listeners() to allocate a new List at each use;
 this method was deprecated but it appears it’s still being used in
 various event processors, which is being flagged as a performance issue.
2023-01-15 11:31:27 +00:00
Sanne Grinovero 48df4e15aa HHH-16046 EventListener iterations should avoid using EventListenerGroup#listeners when possible 2023-01-15 11:31:27 +00:00
Gavin a1d43adad4 Oracle does support offsets/zones in datetime literals
+ some minor cleanups
2023-01-14 15:14:04 +01:00
Gavin 6a238adc6c tolerate 'local' keyword in date and time literals
no reason to choke on this, doesn't seem to be ambiguous
2023-01-14 15:14:04 +01:00
Gavin 4a87bc4bb8 use custom-rendered datetime literals on MySQL instead of JDBC escapes 2023-01-14 15:14:04 +01:00
Gavin 2aece6fb95 HHH-16035 use custom-rendered datetime literals on DB2 instad of JDBC escapes
The JDBC escapes didn't play so well with duration arithmetic.
2023-01-14 15:14:04 +01:00
Gavin 8f29ae95c9 more javadoc for Dialect.getFractionalSecondPrecisionInNanos() 2023-01-14 15:14:04 +01:00
Gavin 56774f80d7 fix handling of typestamp arithmetic on Sybase
this was a total inconsistent mess that made no sense
2023-01-14 15:14:04 +01:00
Gavin c852d1ca0d more HQL duration tests 2023-01-14 15:14:04 +01:00
Gavin a9414fa6be disable test for no-longer-allowed literal syntax
I had to disallow this because it was too ambiguous
2023-01-13 16:34:46 +01:00
Gavin ae978b3d10 fix an ambiguity in the grammar of datetime literals
this was my very stupid mistake
2023-01-13 16:34:46 +01:00
Gavin 43cce5fe5e HHH-16035 fix bug with Durations magnitude being off by 10^9 2023-01-13 16:34:46 +01:00
Gavin 2f5f5b9a50 HHH-16035 add a test for cast(duration as Long) + tests for duration arithmetic/literals
(pulls in duration arithmetic tests from other branch)
2023-01-13 16:34:46 +01:00
Gavin 6f7b17d36b HHH-16035 change the default for hibernate.type.preferred_duration_jdbc_type to NUMERIC
There's really no value at all in having h2 as the only platform where Duration
is persisted as 'interval second' by default. People usually use h2 for testing,
and probably actually prefer if the schema is more similar to the schema of
their "real" database.

Also, this tiny change fixes issues 1. and 2. of HHH-16035 as a side-effect.
2023-01-13 16:34:46 +01:00
Matías Santurio 669be6a776 HHH-16038 Fix PersistenceContext.setDefaultReadonly javadoc mistake 2023-01-13 15:02:39 +01:00
Christian Beikov 80b638aeca Introduce getSingleJdbcMapping() and getJdbcMapping(int) to improve JdbcMappingContainer accesses 2023-01-13 09:04:15 +01:00
Sanne Grinovero d64873bde6 HHH-15305 Some dead code elimination and analysis cleanup 2023-01-12 22:24:39 +00:00
Sanne Grinovero 3d4cb14627 HHH-15305 Switch size management in BoundedConcurrentHashMap to use an AtomicInteger 2023-01-12 22:00:36 +00:00
franz1981 7e5c3c8dde HHH-15305 Update custom LIRS implementation based on BoundedConcurrentHashMap 2023-01-12 21:49:08 +00:00
Andrea Boriero 2143ced49e HHH-15604 Identically-named association in entity root and elementcollection of embeddables leads to assertion error 2023-01-12 18:19:38 +01:00
Andrea Boriero b774f80ce9 HHH-15966 ElementCollection with nested Embeddables fails with ArrayIndexOutOfBoundsException 2023-01-12 18:19:38 +01:00
Andrea Boriero 00018731f8 HHH-15604 Identically-named association in entity root and elementcollection of embeddables leads to assertion error 2023-01-12 18:19:38 +01:00
Yoann Rodière cfc7b7ba66 HHH-15604 Test identically-named association in entity root and elementcollection of embeddables 2023-01-12 18:19:38 +01:00
Marco Belladelli b5d58e69ae HHH-15928 Check distinct and sub-queries for SQLServer fetch / offset 2023-01-12 17:22:58 +01:00
Marco Belladelli 21d7d2bb10 HHH-15928 Add test for issue 2023-01-12 17:22:58 +01:00
Marco Belladelli 73da49626d Fix select without from in old versions of MySQL and MariaDB 2023-01-12 17:21:05 +01:00
Andrea Boriero 7b308d048f HHH-15902 @OneToMany relationship with @Where on child table generates wrong sql 2023-01-12 15:23:09 +01:00
Andrea Boriero 3765837b9e HHH-15902 Add test for issue 2023-01-12 15:23:09 +01:00
Sanne Grinovero b037047e24 HHH-16030 Improve name for method EntityInitializer#isInitialized and avoid providing a default implementation 2023-01-12 14:22:05 +00:00
Sanne Grinovero 146f7fc234 HHH-16029 Remove misleading method EntityInitializer#isEntityResultInitializer 2023-01-12 14:22:05 +00:00
Sanne Grinovero b725dc4f20 Prefer using asEntityInitializer() over direct cast 2023-01-12 14:22:05 +00:00
Marco Belladelli 8fa39d773b HHH-16014 Cache treated paths + root logic in copy context for paths 2023-01-12 13:27:58 +01:00
Marco Belladelli b0d03e39e2 HHH-16004 Add test for issue 2023-01-12 13:27:58 +01:00
Andrea Boriero 303da7fca8 HHH-15986 Eager Bidirectional association, initializing an HibernateProxy should associate to the circular association the HibernateProxy itself 2023-01-12 10:34:22 +01:00
Andrea Boriero e0ff430936 HHH-15986 Add test for issue 2023-01-12 10:34:22 +01:00
Gavin a3b2e9b4ae HHH-16028 allow FunctionContributor to be registered programmatically
since we can do this with its friend TypeContributor
2023-01-12 00:36:14 +01:00
Gavin 2e84d51838 HHH-16027 add TypeContributions.contributeAttributeConverter() 2023-01-12 00:36:14 +01:00
Gavin 7444b26db4 HHH-15948 move org.hibernate.metamodel.model.convert to org.hibernate.type.descriptor.converter 2023-01-11 17:56:54 +01:00
Gavin 32c8977406 deprecate layer-breaking method SessionFactory.getSessionFactoryOptions() 2023-01-11 12:50:43 +01:00
Gavin e23318aa95 remove type parameter from StatelessSessionBuilder
this was already done for SessionBuilder, but apparently StatelessSessionBuilder got forgotten
2023-01-11 12:50:43 +01:00
Gavin 1606953a32 make SelfRenderingFunctionSqlAstExpression not blow up with NPE
this doesn't exactly *fix* cases with a nonsensible argument list,
but it at least gives us a chance to produce a more meaningful error
2023-01-11 12:46:18 +01:00
Gavin 296cbb88bd fix queries like 'select ... where ...' with no 'from' clause
this was another bug that resulted from the unnecessary use of
the untypesafe getChild() method in SemanticQueryBuilder. It's
really important that we migrate away from that, who knows how
many other bugs are lurking?
2023-01-11 12:46:18 +01:00
Christian Beikov c402431b9f Fix null constraint violation issue introduced in previous commit 2023-01-11 12:07:33 +01:00
Christian Beikov 82fbbd6c0e Remove unnecessary usage of identity generation to avoid Oracle 11 issues 2023-01-10 18:46:56 +01:00
Steve Ebersole 2a302a59ff Move IndexedConsumer and IndexedBiConsumer to more top-level package 2023-01-10 08:40:28 -06:00
Gavin 5d86d88c03 HHH-16010 fix two bugs in natural id handling found just by inspection of code
- fix place where id and entity had always been passed in reversed order
- fix place where whole state array was passes instead of natural id array
- change the API of NaturalIdResolutions because it never needs the session,
  and the fix involved calling it from a place we did not have one
- and also clean up a bunch of warnings
- improve some visually-ugly code in AbstractEntityEntry
2023-01-10 15:11:32 +01:00
Andrea Boriero 6d15c1d115 HHH-15647 Add test for issue 2023-01-10 10:54:42 +01:00