Commit Graph

9087 Commits

Author SHA1 Message Date
Gavin dbc7b2359b extract an oft-repeated expression as a new method of JdbcTypeIndicators
write some Javadoc about types
2022-11-13 00:39:25 +01:00
Gavin 77a1be10b1 some cleanups + doc for SqlTypes 2022-11-12 12:02:17 +01:00
Gavin King 5dfb90bb73 HHH-15679 proposed fix to OffsetTime handling
The idea is: convert all OffsetTimes to the system offset before sending them on
2022-11-12 01:11:21 +01:00
Gavin 39f85a2dca HHH-15709 test value of timestamp literal 2022-11-12 01:09:00 +01:00
Gavin 1f9439b2ed HHH-15709 fix rendering of timestamp literal when there is no timezone
for Postgres, Cockroach, and H2
2022-11-12 01:09:00 +01:00
Gavin 9073d6192b Revert "fix an issue with postgres timestamp literals"
This reverts commit 0b021e56f9.
2022-11-11 21:30:01 +01:00
Gavin 0b021e56f9 fix an issue with postgres timestamp literals 2022-11-11 21:19:46 +01:00
Gavin 53d9935237 clean up some code duplication!
cc @beikov
2022-11-11 21:19:46 +01:00
Jan Schatteman f0ea66b872 HHH-15704 - Fix regression in StandardForeignKeyExporter and add test case for this issue
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-11-11 19:46:03 +01:00
Gavin 9eaeff05ec we forgot to deprecate ReplicationMode 2022-11-10 18:30:54 +01:00
Gavin 3762f4a6e5 more jdoc for "minimal puts" 2022-11-10 18:30:54 +01:00
Christian Beikov 61421d5d54 JPA requires that IllegalStateException be thrown instead of UOE 2022-11-10 16:44:06 +01:00
Christian Beikov 7a335393c7 HHH-15660 Make use of ReflectionOptimizer in more cases 2022-11-10 16:42:17 +01:00
Christian Beikov 7a14e5c07f HHH-15631 Enable reflection optimizer by default Christian Beikov 2022-11-10 16:42:17 +01:00
Christian Beikov 4fdbb3d5f6 Some reflection optimizer related fixes 2022-11-10 16:42:17 +01:00
Emond Papegaaij 2a93aa5467 HHH-15703 Append remainder of SQL fragment after last parameter 2022-11-10 16:28:07 +01:00
Christian Beikov 90a752a0ee HHH-15328 Add support for CTE WITH clause 2022-11-10 13:25:21 +01:00
Gavin King 215d411ffa HHH-15702 also add matching getters 2022-11-10 11:17:19 +01:00
Gavin King 778675b867 HHH-15702 add Session.setCacheRetrieveMode, Session.setCacheStoreMode 2022-11-10 11:17:19 +01:00
Gavin King 5c90779a02 HHH-15702 add SelectionQuery.setCacheRetrieveMode, SelectionQuery.setCacheStoreMode
also clean up some unnecessary overriding in Query hierarchy
2022-11-10 11:17:19 +01:00
Gavin King a56a7c523b HHH-15702 Javadoc for CacheMode
talk about how it relates to the JPA enums
2022-11-10 11:17:19 +01:00
Gavin King 51e2531c9c Javadoc for FetchMode, @Fetch, and @BatchSize 2022-11-10 00:41:25 +01:00
Gavin King bd7140eef7 HHH-15701 deprecate CacheModeType since it is a dupe of CacheMode
improve Javadoc
2022-11-09 23:38:29 +01:00
Gavin King 7bcbfdcc12 move getLockMode() up to SelectionQuery
squash some warnings in the query APIs
2022-11-09 21:50:50 +01:00
Gavin King c966acf178 JPA requires that IllegalStateException be thrown instead of UOE
leave code comments making this very clear, because it wasn't
clear at all (and is sort-of wrong)

on the other hand, add getHibernateLockMode(), and let the client
bypass the stupid JPA restriction
2022-11-09 21:50:50 +01:00
Jan Schatteman 2a92267cd8 HHH-13106 - Remove erroneous (incomplete) test and add a new one for this issue
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-11-09 20:00:55 +01:00
Gavin King 1607252bc3 HHH-15697 deprecate lock(entityName)
since we no longer encourage passing a detached object to this method
2022-11-09 18:20:04 +01:00
Gavin King 89c1b0f0ce HHH-15696 very basic test for multiply-mapped entity class 2022-11-09 18:20:04 +01:00
Gavin King 1cc7b72c4c HHH-15689 fix SessionFactoryBuilder#addEntityNameResolver() and add Configuration#addEntityNameResolver() 2022-11-09 18:20:04 +01:00
Gavin King f71cf01620 HHH-15652 roll back addition of remove(entityName, instance)
I messed up and forgot we don't want people passing detached
instances to remove().

reverts 4274cb4313
2022-11-09 14:34:02 +01:00
Gavin King 6f85a56cad add a note about explcict entity names to Session jdoc 2022-11-09 14:34:02 +01:00
Gavin King a12ba4c2e4 more verbiage surrounding cache concurrency
this is an important thing, and in the past we've been
very stingy on the documentation side
2022-11-09 12:23:12 +01:00
Gavin King cd425e3502 HHH-15691 add @Cache(includeLazy) and deprecate stringly-typed include member
+ add some javadoc
2022-11-09 11:28:13 +01:00
Gavin King d00b92259f Javadoc for @LazyGroup 2022-11-09 11:28:13 +01:00
Gavin King d8fcade838 Javadoc for @Cache and CacheConcurrencyStrategy 2022-11-09 11:28:13 +01:00
Gavin King d4b7aeeb3c Javadoc for @Cascade and CascadeType 2022-11-08 23:19:05 +01:00
Gavin King 3f7133f80b attempt to reduce allocations of LockOptions
- Sanne says we were allocating too many of these, so add a static instance
  of LockOptions for each LockMode
- just generally rationalize the code that deals with defaulting LockOptions
- change the impl of CascadingActions.LOCK because lock scope has nothing
  to do with cascading, and I don't see any reason why the LockOptions should
  not simply propagate if cascading is explicitly turned on
2022-11-08 22:45:29 +01:00
Gavin King 39bef7bc70 HHH-15682 fix potential classloading deadlock
+ add some documentation around follow-on locking
2022-11-08 22:45:29 +01:00
Gavin King 23ff00142f more javadoc about @Generated
including its relationship to @ColumnTransformer
2022-11-08 13:06:58 +01:00
Gavin King 61c128000b HHH-15672 introduce Generated(UPDATE) for properties only generated on update 2022-11-08 12:36:38 +01:00
Gavin King aaeed841c8 work on javadoc for UserType and CompositeUserType 2022-11-08 09:39:55 +01:00
Gavin King 2f1e85095c add link to EntityNameResolver in Interceptor javadoc
also fix a typo and get rid of uses of <tt> and <br>
2022-11-08 02:16:43 +01:00
Gavin King 450a159a8d improve javadoc for EntityNameResolver 2022-11-08 01:37:28 +01:00
Gavin King 9d141a2793 improve javadoc for LockModes, and deprecate LockOptions.SKIP_LOCKED
Use LockMode.UPGRADE_SKIPLOCKED instead of setting the timeout to -2.
2022-11-08 00:58:36 +01:00
Gavin King 02ad34091c HHH-15683+HHH-15684 clean up the handling of LockOptions for queries
This contains a change to LockOptions.overlay() which is breaking
in principle, but more natural and less fragile.

It also deprecates SelectionQuery.setAliasSpecificLockMode() which
I believe was added in 6.0 by mistake. The method is an overload of
setLockMode() in the rest of the hierarchy.
2022-11-08 00:58:36 +01:00
Gavin King 58ba65f529 HHH-15682 add ImmutableLockOptions
here we had an amazing idiom: static final instances of a mutable value class
2022-11-08 00:58:36 +01:00
Gavin King 61294250b3 HHH-15680 deprecate LockRequest and add overloads of lock() which accept LockOptions 2022-11-08 00:58:36 +01:00
Gavin King 4b7fcb5123 HHH-15681 use enum instead of boolean of lock scopes
also a bunch of Javadoc improvement for LockOptions and friends
2022-11-08 00:58:36 +01:00
Gavin King a5fa3739e2 HHH-15678,HHH-15677,HHH-15676 add two methods to SessionFactory and deprecate one
- added getDefinedFetchProfileNames() for consistency
- added findEntityGraphByName() which already existed but was not exposed
- deprecated getFilterDefinition() since it's a layer-breaker
- improved+added some Javadoc
2022-11-08 00:29:55 +01:00
Davide D'Alto af5ebb2a7f HHH-15581 Extract skipRow and bindParameters from DeferredResultSetAccess
So that Hibernate Reactive can call them.
2022-11-07 14:29:15 +00:00
Davide D'Alto 2f45da6e35 HHH-15581 Extract ResultHelper#createRowReader
This way Hibernate Reactive can call it and avoid
duplicated code.
2022-11-07 14:29:15 +00:00
Davide D'Alto 954eb793aa HHH-15581 Make EntityAction extends ComparableEntityAction 2022-11-07 14:29:15 +00:00
Davide D'Alto 76ba315194 HHH-15581 Add ComparableEntityAction interface 2022-11-07 14:29:15 +00:00
Davide D'Alto 75765905cc HHH-15581 Add getters so that Hibernate Reactive can access the fields 2022-11-07 14:29:15 +00:00
Davide D'Alto 1a9a3c1c4b HHH-15581 Extend the scope of several methods
This way Hibernate Reactive can access or override them.
2022-11-07 14:29:15 +00:00
Andrea Boriero 3897f61136 HHH-15608 Error In Native Query where column is mapped twice 2022-11-07 10:42:51 +01:00
Andrea Boriero 2ddd9b1e08 HHH-15608 Add test for issue 2022-11-07 10:42:51 +01:00
Philippe Marschall 4aede4ca88 HHH-15670 Implement RequiresDialectFeature.reverse()
- implement RequiresDialectFeature.reverse()
- remove not-feature checks to reverse = true
2022-11-07 09:32:22 +01:00
Christian Beikov 0b733d4ba2 HHH-15641 Enable inlineDirtyChecking and lazyLoading for enhancement by default and deprecate the setting 2022-11-07 09:19:26 +01:00
Gavin King c1e1b58e57 link to equivalent JPA operations on PersistenceUtil in javadoc 2022-11-06 15:10:52 +01:00
Gavin King 971a022eb6 Javadoc surrounding fetch profiles 2022-11-06 15:10:52 +01:00
Gavin King f9164fc32f explain what a second-level cache is in Javadoc 2022-11-05 13:37:17 +01:00
Gavin King 4a2792bed8 improvements to javadoc for StatelessSession, Session, and overview page 2022-11-05 13:37:17 +01:00
Gavin King c7b42097aa light cleanup of AnnotationBinder 2022-11-05 11:28:23 +01:00
Gavin King 3d9bf07ac8 miscellaneous code cleanups 2022-11-04 22:31:43 +01:00
Gavin King 0d2aa57b5d HHH-15671 remove long-deleted interface RelationalModel 2022-11-04 22:31:43 +01:00
Gavin King ba3d5b4dd7 deprecate impls of decrecated interface NamingStrategy 2022-11-04 22:31:43 +01:00
Gavin King 7593d580b7 fix name of ResultSetMappingSecondPass 2022-11-04 22:31:43 +01:00
Gavin King a39fcf7669 remove unused direct annotation impl CustomizableColumns 2022-11-04 22:31:43 +01:00
Gavin King cea6774f01 HHH-15663 add @Generated(sql=....) 2022-11-04 17:51:00 +01:00
Gavin King f6e65dc91a tests for HHH-15663 and HHH-15570 2022-11-04 17:51:00 +01:00
Gavin King 383ffa56eb HHH-15663 add writable member to @Generated annotation
This is useful if you're using custom SQL, e.g. @SqlInsert.

Also improve the Javadoc surrounding all this stuff.
2022-11-04 17:51:00 +01:00
Gavin King aef9ab2425 HHH-15570 allow @SqlInsert, @SqlUpdate, @SqlDelete for secondary tables 2022-11-04 17:51:00 +01:00
Andrea Boriero 28b253512e HHH-15666 When a reference entry is found in the Second Level Cache there is not need to set its values 2022-11-04 16:15:54 +01:00
Andrea Boriero 865f28a5d5 HHH-15666 Add test for issue 2022-11-04 16:15:54 +01:00
Sanne Grinovero ca79c91c56 HHH-15662 ClasscastException caused by check for Managed rather than ManagedEntity 2022-11-04 08:54:05 +00:00
Sanne Grinovero bde7362d9c HHH-15634 Extracting reusable Type constants from ByteBuddy InlineDirtyCheckingHandler 2022-11-03 19:48:42 +00:00
Sanne Grinovero 93355272fd HHH-15634 Extracting constant for @Transient annotation in ByteBuddy Enhancer 2022-11-03 19:48:42 +00:00
Scott Marlow a40fea29c0 HHH-15656 use privileged action when invoking ScheduledExecutorService.shutdown
Signed-off-by: Scott Marlow <smarlow@redhat.com>
2022-11-03 17:41:28 +01:00
Scott Marlow 8f2325ed4a HHH-15655 use privileged operation when defining classes
Signed-off-by: Scott Marlow <smarlow@redhat.com>
2022-11-03 17:41:28 +01:00
Gavin King 0b34025f1a HHH-15652 add missing Session.remove(entityName, object) method
Since we deprecated delete() there's no blessed way to do this.
2022-11-02 19:21:00 +01:00
Gavin King bb0edab332 rewrite EntityBinder 2022-11-02 19:20:17 +01:00
Gavin King 3cd90d7615 clean up CollectionBinder and friends 2022-11-02 19:20:17 +01:00
Gavin King 38b4e8e01b very minor cleanups, and more Javadoc in BinderHelper 2022-11-02 19:20:17 +01:00
Gavin King e2f42cd0bc introduce ForeignKeyType and AnnotationJoinColumns.getReferencedColumnsType() 2022-11-02 19:20:17 +01:00
Gavin King 849246e3cd finally move propertyName from AnnotatedColumn 2022-11-02 19:20:17 +01:00
Gavin King e4c1d493e3 finally move context + joins from AnnotatedColumn 2022-11-02 19:20:17 +01:00
Gavin King 18003b92dc finally move propertyHolder from AnnotatedColumn 2022-11-02 19:20:17 +01:00
Gavin King 585522fde1 extract some little helper methods 2022-11-02 19:20:17 +01:00
Gavin King ec336f3a23 introduce AnnotatedColumns 2022-11-02 19:20:17 +01:00
Gavin King 653bf987bd introduce AnnotatedJoinColumns and remove deprecated stuff 2022-11-02 19:20:17 +01:00
Gavin King ce12d4a586 improve Javadoc to types in mapping package 2022-11-02 18:52:56 +01:00
Gavin King cbaf856e18 squash some generic type-related warnings 2022-11-02 18:52:56 +01:00
Christian Beikov a471bbea8c HHH-15648 Fix fetching association and using implicit path in condition 2022-11-02 11:53:23 +01:00
Sanne Grinovero 60e81a7a4d HHH-15651 Refactoring of common iterations in EntityEntryContext 2022-11-01 20:45:35 +00:00
Sanne Grinovero cdbf92fd71 HHH-15651 StatefulPersistenceContext#clear shouldn't need defensive copies for iteration 2022-11-01 20:45:35 +00:00
Sanne Grinovero 001de2b203 HHH-15651 Logging guard improvements in StatefulPersistenceContext 2022-11-01 20:45:35 +00:00
Sanne Grinovero bedbd402e6 HHH-15649 Additional performance fixes relating to Klass's _secondary_super_cache interaction with entity enhancement 2022-11-01 11:18:54 +00:00
Gavin King 77d1bdac4c Javadoc improvements for naming strategies and Any mappings 2022-11-01 11:56:19 +01:00
Andrea Boriero 90b1cfe2c3 HHH-15634 Lazy basic property does not get updated on change: inline dirty checking, lazy basic properties are not upated when set to null 2022-10-31 11:45:31 +01:00
Andrea Boriero 6d99eb1068 HHH-15634 Lazy basic property does not get updated on change 2022-10-31 11:45:31 +01:00
Andrea Boriero ee372fad58 HHH-15634 Run the tests also without dirty checking enabled 2022-10-31 11:45:31 +01:00
Yoann Rodière d5aa85e90c HHH-15634 Test updating one or all of multiple lazy basic properties 2022-10-31 11:45:31 +01:00
Yoann Rodière b82d906841 HHH-15634 Test updating a single lazy property with no lazy group 2022-10-31 11:45:31 +01:00
Yoann Rodière 66daac53a2 HHH-15634 Fix naming of LazyBasicFieldAccessTest/LazyBasicPropertyAccessTest
For some reason they were reversed.
2022-10-31 11:45:31 +01:00
Christian Beikov 9bd269aa5d Fix test for HANA 2022-10-31 11:18:11 +01:00
Gavin King ecdd7e20cb remove more usages of some deprecated methods 2022-10-29 23:32:05 +02:00
Gavin King bb0541d754 remove more usages of some deprecated methods 2022-10-29 23:32:05 +02:00
Gavin King 6e8d609485 squash warnings + remove usages of some deprecated methods 2022-10-29 23:32:05 +02:00
Gavin King ce860e31ff put some annotations back in a very important test 2022-10-29 15:10:10 +02:00
Gavin King f676a1e2af deprecate some operations of AnnotatedJoinColumn
+ some light refactoring
2022-10-29 15:10:10 +02:00
Gavin King 257bfdb391 slightly improve some Javadoc on metamodel-related stuff 2022-10-29 11:11:23 +02:00
Gavin King f253d8f216 remove useless @JoinColumns annotation for mosts tests and examples 2022-10-29 02:09:00 +02:00
Gavin King 66776f6b78 simplify a method 2022-10-29 02:09:00 +02:00
Gavin King 749e5e6b38 HHH-15627 fix uninformative error message 2022-10-29 02:09:00 +02:00
Gavin King ed65962fb3 more binding work related to OneToOne and ManyToOne to ToOneBinder where it belongs
and stuff in common goes to BinderHelper
2022-10-29 02:09:00 +02:00
Gavin King 8b3030aa8b avoid passing property-level information via the first AnnotatedJoinColumn 2022-10-29 02:09:00 +02:00
Gavin King d9392d6601 fix ugly toString()s 2022-10-29 02:09:00 +02:00
Gavin King 070f7e5d3a clean up collection SecondPass stuff 2022-10-29 02:09:00 +02:00
Gavin King 79642022a6 fix warnings in a test 2022-10-29 02:09:00 +02:00
Gavin King ab8f79e258 HHH-14014 test demonstrating the issue is solved 2022-10-29 02:09:00 +02:00
Gavin King 86906013c2 further cleanups to the Binder code 2022-10-29 02:09:00 +02:00
Gavin King f4687ac048 prefer importing JPA annotations 2022-10-29 02:09:00 +02:00
Gavin King 9cd834758a minor javadoc improvements 2022-10-29 02:09:00 +02:00
Christian Beikov 2f4712909a HHH-15636 Indexed Fetchable access via IndexedConsumer and by position and get rid of some capturing lambdas 2022-10-28 13:21:49 +02:00
Sanne Grinovero 53076f3029 HHH-15616 Mitigate performance impact of entity enhancement on Klass's _secondary_super_cache 2022-10-28 12:06:17 +02:00
Gavin King 16c39c0925 more sensible toString() 2022-10-28 03:19:05 +02:00
Gavin King 5ea136781c remove some uses of java.util.Properties 2022-10-28 03:19:05 +02:00
Gavin King 239fc9a835 clean up foreign key binding code 2022-10-28 03:19:05 +02:00
Gavin King 264d3c711c more consistent formatting for error messages 2022-10-28 03:19:05 +02:00
Gavin King 412319819e add some wildcards 2022-10-28 03:19:05 +02:00
Gavin King 25cb085f48 HHH-15622, HHH-13054, HHH-14940, HHH-15355 organize the tests 2022-10-27 23:06:20 +02:00
Gavin King b6792bdb19 HHH-13054 handle referencedColumnName to entities with multiple @Id properties 2022-10-27 23:06:20 +02:00
Gavin King 1f4c8f7b19 HHH-14940 loosen a check 2022-10-27 23:06:20 +02:00
Gavin King 335e480735 HHH-15355 virtual synthetic properties for multi-column inverse one-to-ones 2022-10-27 23:06:20 +02:00
Andrea Boriero fc0b19aceb HHH-15585 Add support for DB2 aliases for schema validation 2022-10-27 20:38:22 +02:00
Andrea Boriero b1f92863cb HHH-15585 Add test for issue 2022-10-27 20:38:22 +02:00
Andrea Boriero 42890e3a8d HHH-15607 @NamedEntityGraph is not working when try to load Basic attribute with OneToMany relation 2022-10-27 20:35:49 +02:00
Andrea Boriero a7b87fe4eb HHH-15607 Add test for issue 2022-10-27 20:35:49 +02:00
Andrea Boriero dd1bd43846 HHH-15622 Query bug in @NamedEntityGraph when doing Eager loading of @OneToOne mappings in Single Table inheritance 2022-10-27 16:49:04 +01:00
Andrea Boriero a4f2c936dc HHH-15622 Add test for issue 2022-10-27 16:49:04 +01:00
Gavin King 3fd84f14ec HHH-12930 fix limitations mapping associations to non-primary unique keys
This now handles cases where the unique key includes @Embeddable properties
of the target entity. It also produces *much* better error messages when
something is wrong.
2022-10-27 17:47:21 +02:00
Scott Marlow 7b9c14d8a1 add DEBUG flag save of loaded entity as proxy
Signed-off-by: Scott Marlow <smarlow@redhat.com>
2022-10-27 17:07:36 +02:00
Christian Beikov b3b62ad685 HHH-15635 Avoid type pollution in EnhancedSetterImpl 2022-10-27 13:35:02 +02:00
Christian Beikov ec72bab0a9 HHH-15633 Intern entity name to improve EntityKey#equals 2022-10-27 13:35:02 +02:00
Christian Beikov 0561839140 HHH-15632 Avoid unnecessary PersistenceContext#getEntity call in AbstractEntityInitializer 2022-10-27 13:35:02 +02:00
Gavin King e59a736679 improve Javadoc of @ColumnTransformer 2022-10-25 11:17:17 +02:00
Christian Beikov 771f338961 HHH-15619, HHH-15620 Expose HBM query configs through respective hints and don't mark transformed HBM model as metadata complete 2022-10-21 14:38:44 +02:00
Christian Beikov ee7c2ee041 HHH-15615 Add EDB PostgreSQL Advanced to test matrix and fix issues 2022-10-21 12:35:46 +02:00
Christian Beikov 940f15b63e HHH-15528 Add Cockroach to Jenkins nightly test matrix and fix issues 2022-10-21 09:51:16 +02:00
Gavin King f7acf4d93c very minor cleanups in AbstractEntityPersister 2022-10-20 00:01:42 +02:00
Christian Beikov 049d151248 HHH-15605 Fix parameter binding of converted TemporalJavaType 2022-10-19 19:05:57 +02:00
Christian Beikov 149da829cd HHH-15610 Remove internal CacheKeyValueDescriptor uses from Type and JavaType 2022-10-19 18:08:21 +02:00
Sanne Grinovero 08d1d9704b HHH-15566 Improve efficiency of CallbackRegistryImpl 2022-10-19 15:57:34 +01:00
Gavin King 24f75fb8e8 HHH-15613 remove lateral roots from criteria API 2022-10-19 16:47:12 +02:00
Gavin King 3357d1e5a0 squash some warnings in SemanticQueryBuilder 2022-10-19 16:47:12 +02:00
Gavin King a42c52615e HHH-15613 remove 'lateral' from fromRoot rule
it means the same thing as 'join lateral', and is currently ignored by HQL
2022-10-19 16:47:12 +02:00
Jan Schatteman 0baefce734 HHH-15561 - Fixed and added test for issue
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-10-14 23:26:16 +02:00
Christian Beikov f13230803d HHH-15590 Test that JdbcLiteralFormatter works for all supported java types 2022-10-13 15:21:51 +02:00
Sanne Grinovero b56d25c2b2 HHH-15598 Remove unused functionality from ByteCodeHelper 2022-10-12 15:37:24 +01:00
Sanne Grinovero 6fbb9633aa HHH-15598 Remove InstrumentedClassLoader, demote ByteCodeHelper to test helper 2022-10-12 15:37:24 +01:00
Christian Beikov 6b6cd51edf HHH-15592 Fix NPE for uses of JdbcExceptionHelper.extractSqlState 2022-10-12 15:48:20 +02:00
Sanne Grinovero bf8040638c HHH-15595 Delete ClassLoadingStrategyHelper 2022-10-12 09:00:40 +01:00
Sanne Grinovero fe4091bd42 HHH-15595 Fallback JVM version for ByteBuddy can be bumped to JAVA_V11 2022-10-12 09:00:40 +01:00
Sanne Grinovero 622273aeb2 HHH-15595 ClassLoadingStrategyHelper no longer needs to use reflection to be compatible with Java 8 2022-10-12 09:00:40 +01:00
Gavin King f1dd638519 clean up formatting of javadoc in Dialect 2022-10-08 22:20:03 +02:00
Gavin King f5a5990d03 try to make var_xxx() and sdtev_xxx() more portable 2022-10-08 21:27:43 +02:00
Gavin King 477f1e7af6 HHH-15588 promote sinh(), cosh(), and tanh() 2022-10-08 18:58:42 +02:00
Gavin King 20b905507f HHH-15584 use count_big() on Sybase and SQL Server 2022-10-07 17:03:37 +02:00
Gavin King 635c23bc4a get rid of ugly message
+ refresh code in ExceptionConverterImpl
2022-10-07 15:17:13 +02:00
Gavin King 2a9f6dafee Maria has a median() function 2022-10-07 10:28:04 +02:00
Andrea Boriero bf7a51cb84 HHH-15582 SpannerDialect, schema update tries to create existing tables 2022-10-07 10:19:11 +02:00
Andrea Boriero 0198e5b3c8 HHH-15573 SpannerDialect, schema creation generates SQL containing 'null' instead of the column type 2022-10-07 10:02:24 +02:00
Andrea Boriero 1fd5f29dcf HHH-15573 Add test for issue 2022-10-07 10:02:24 +02:00
Gavin King 4451611311 HHH-15518 bless degrees() and radians() as standard
- add a test
- emulate them on HANA and Oracle
2022-10-06 23:20:02 +02:00
Gavin King 1c3819a77b remove test duplication 2022-10-06 23:20:02 +02:00
Gavin King 59d99025de HANA has a median() function 2022-10-06 22:41:19 +02:00
Gavin King 4a1fe85f0d add test for median() 2022-10-06 21:41:28 +02:00
Christian Beikov fa89e3e5fa HHH-15531 Use dense_rank instead of row_number when query uses distinct 2022-10-06 08:37:15 +02:00
Christian Beikov 8193fe6792 HHH-15580 Emulate lt/gt/le/ge tuple-comparisons when unsupported 2022-10-05 18:18:09 +02:00
Christian Beikov 5f2d5e3938 HHH-15578 Add min/max emulation for uuid on PostgreSQL 2022-10-05 11:44:52 +02:00
Christian Beikov b392f663c3 HHH-15495 Consider UUID to be comparable 2022-10-05 11:44:52 +02:00
The-Arne 8b9b02b8b8 HHH-15495 - add test case 2022-10-05 11:44:52 +02:00
Christian Beikov 12df6317ec HHH-15548 Fix schema validation issues on PostgreSQL with Instant type 2022-10-04 16:21:58 +02:00
Christian Beikov 7e1d4cad83 HHH-15543 Don't throw CNFE with OracleDialect when JDBC driver classes are invisible 2022-10-04 14:15:22 +02:00
Andrea Boriero a9c55587f2 HHH-15497 Count query when counting polymorphic subclasses by type fails when run twice 2022-10-04 13:03:38 +02:00
Andrea Boriero 7af0642f5b HHH-15497 Add test for issue 2022-10-04 13:03:38 +02:00
Andrea Boriero 1237977c5c HHH-15498 Delete Query fails to determine the ValueMapping for SqmParameter 2022-10-04 12:31:21 +02:00
Andrea Boriero c2fab87fed HHH-15498 Add test for issue 2022-10-04 12:31:21 +02:00
Andrea Boriero 90b308511d HHH-15576 Emulation of tuple comparison produces a wrong SQL query for NOT EQUAL operator 2022-10-04 12:17:29 +02:00
Andrea Boriero b2e4348d62 HHH-15572 Emulation of tuple comparison produces a wrong SQL query, missing a closing parenthesis 2022-10-04 12:17:29 +02:00
Andrea Boriero fe1ff7a829 HHH-15554 Merge of an Entity with an immutable composite user type throws NPE 2022-10-04 12:17:29 +02:00
Andrea Boriero 89bd029bce HHH-15554 Add test for issue 2022-10-04 12:17:29 +02:00
Jan Schatteman 0c3f3bb2c7 HHH-15257 added test (ported over from 5.6)
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-10-03 20:23:50 +02:00
Gavin King 87211e7cd4 HHH-15564 add @SecondaryRow annotation
and HHH-15565 completely remove the notion of subsequent select fetching for
secondary tables ... and deprecate the member of @Table which turns this on,
since the actual underlying functionality is missing in H6!

+ some misc code cleanup in AbstractEntityPersister
2022-10-03 10:50:39 +02:00
Gavin King 1ff2b4e176 deprecate @SelectBeforeUpdate
since it's only useful with other already-deprecated functionality
2022-10-03 10:50:39 +02:00
Gavin King 6e94b35ee1 HHH-15549 remove mapping of NUMBER(1,0) to BOOLEAN on Oracle
This just seems wrong to me. We have no way to say that a NUMBER(1,0)
column isn't a single-digit number.

Simplify the other mappings for NUMBER(n,0).
2022-10-02 12:12:33 +02:00
Sanne Grinovero 126d8473c7 HHH-15567 Method name typo: registerInitilaizer in JdbcValuesSourceProcessingStateStandardImpl 2022-10-01 22:05:49 +01:00
Sanne Grinovero ba9bd35c9d HHH-15563 BeanValidation integration should prioritize jakarta.persistence.validation over javax.persistence.validation 2022-10-01 18:31:57 +01:00
Gavin King 04302caba0 fix SqlTypes.LONG32VARXXXX types and add a test
also fix a bug in initialization of JdbcTypeFamilyInformation

fix incorrect mapping for "long" types on Derby

use default for nicer-looking switch statements

improve some Javadoc
2022-10-01 12:57:30 +02:00
Christian Beikov f9afd3dcb7 HHH-13439 Encode Hibernate ORM version into build time enhanced entities 2022-09-30 20:56:03 +02:00
Gavin King ee08db2a1e move methods onto EntityBinder and CollectionBinder 2022-09-30 15:39:18 +02:00
Gavin King 4f4fd736dc define default values for @LazyCollection + @LazyToOne
this is low-hanging fruit
2022-09-30 15:39:18 +02:00
Gavin King a9c7c6d677 cleanups to binder code
- add two type checks + exceptions
- use static imports
- refactor out lots of little methods + remove some dupe code
- improve some Javadoc
2022-09-30 15:39:18 +02:00
Andrea Boriero f27b3a956d HHH-15552 Embeddable type cannot be cast to org.hibernate.usertype.CompositeUserType if referred to from a mapped superclass with generic parameter 2022-09-30 12:49:44 +02:00
Andrea Boriero 1aafc3c34a HHH-15552 Add test for issue 2022-09-30 12:49:44 +02:00
Andrea Boriero cfc9b9c679 HHH-15542 Cannot invoke 'org.hibernate.query.BindableType.getBindableJavaType()' because 'parameterType' is null 2022-09-30 11:11:52 +02:00
Andrea Boriero da1b1d6b75 HHH-15542 Add test for issue 2022-09-30 11:11:52 +02:00
Gavin King 8f9b998894 minor code cleanups to Actions 2022-09-29 23:53:06 +02:00
Gavin King a11ebdeefc minor changes to javadoc
add javadoc to Dialect.resolveSqlTypeCode()
2022-09-29 16:15:02 +02:00
Jan Schatteman fafd894f3b HHH-1134 - tests to verify this use case
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-09-28 18:56:12 +02:00
Gavin King 8de46167f6 clean up code in listener implementations
- try to use smaller methods with fewer params
- git rid of early exits
- tiny fix for unloaded proxy deletion
2022-09-28 13:41:04 +02:00
Gavin King fcd7a45a75 some cleanups after HHH-15509 2022-09-27 11:15:09 +02:00
Gavin King 49a2b20d76 HHH-15509 enable unloaded-proxy delete for entities with owned collections 2022-09-27 11:15:09 +02:00
Gavin King 17e8b727e9 workaround for bug in test or fix for HHH-11209 2022-09-27 11:15:09 +02:00
Gavin King 6c90b5d0a1 HHH-15509 fix tests 2022-09-27 11:15:09 +02:00
Gavin King e76a26165f HHH-15509 deletion of unloaded entity 2022-09-27 11:15:09 +02:00
Gavin King b7f93a04cf some minor cleanups to CollectionType 2022-09-27 11:15:09 +02:00
Gavin King bb996705b7 very minor code cleanups 2022-09-27 11:15:09 +02:00
Gavin King 39ae0bf264 enable a test on H2 2022-09-27 10:39:14 +02:00
Gavin King e930e7c68d big code cleanup to DefaultFlushEntityEventListener 2022-09-27 10:39:14 +02:00
Gavin King 1d12490dab improve javadocs of @Source and @NotFound 2022-09-27 10:39:14 +02:00
Gavin King 7d34f86a95 HHH-15509 correctly support @NotFound @ManyToMany
1. error if a non-@ManyToMany collection is @NotFound
2. disable constraint generation for @NotFound @ManyToMany
3. allow lazy fetching for @NotFound @ManyToMany
4. rework a completely bogus test so it makes sense
2022-09-26 15:05:34 +02:00
Jan Schatteman 5b907ae8b1 HHH-987/HHH-992 - Correction to the AuctionWithAbstractBidClassTest
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-09-23 19:13:57 +02:00
Andrea Boriero e8783e6075 HHH-15512 Querying for an entity persisted but not flushed to the database causes the exception 'A collection with cascade=all-delete-orphan was no longer referenced by the owning entity instance' 2022-09-23 11:46:00 +02:00
Andrea Boriero 036a37a7e8 HHH-15512 Add test for issue 2022-09-23 11:46:00 +02:00
Andrea Boriero a08716b67b HHH-15045 + HHH-15235 onFlushDirty() invoked on parent entity in a @OneToOne relationship when no table columns are changed - PropertyAccessException on merging Bidirectional OneToOne with EmbeddedId - Reverted HHH-14216 2022-09-23 11:33:39 +02:00
Andrea Boriero f935eb2430 HHH-15045 + HHH-15235 onFlushDirty() invoked on parent entity in a @OneToOne relationship when no table columns are changed - PropertyAccessException on merging Bidirectional OneToOne with EmbeddedId - Reverted HHH-14216 2022-09-23 09:12:47 +02:00
Andrea Boriero 914a2c561b HHH-15235 Add test for issue 2022-09-23 09:12:47 +02:00
Andrea Boriero ddf0cb7295 HHH-15045 Add test for issue 2022-09-23 09:12:47 +02:00
Andrea Boriero 15c4b24842 HHH-15045 Add additional test 2022-09-23 09:12:47 +02:00
Jan Schatteman 063cb0ccd9 Added test for the issues mentioned in HHH-987 and HHH-992
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-09-23 09:06:29 +02:00
Christian Beikov 93992147c5 HHH-15514 Fix security manager class rewriting issue 2022-09-22 16:48:55 +02:00
Jan Schatteman bb5aa62927 HHH-15487 - Remove support for PostgreSQL versions older than 10
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-09-21 19:57:32 +02:00
Andrea Boriero 893e1b096e HHH-15500 Cache key is huge since migration to 6 2022-09-21 18:00:39 +02:00
Jan Schatteman 89a98f2dc7 HHH-15489 - Remove support for Oracle versions older than 11.2
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-09-21 17:52:03 +02:00
Christian Beikov 6321016051 HHH-15532 Update PostgreSQL testing to version 10 and 14 2022-09-21 16:55:38 +02:00
Christian Beikov 5ad3abc628 HHH-15537 Implement lateral subquery emulation when nested correlation is unsupported 2022-09-21 13:28:36 +02:00
Christian Beikov 6b8a782d50 Fix cast for pi function on MySQL 5.7 2022-09-21 11:22:24 +02:00
Fabricio Gregorio 4ac2054784 HHH-15522 Implement a LazyInitializable interface that PersistentCollection and Envers collections extend or implement. Improve related tests. 2022-09-20 18:39:32 +02:00
Andrea Boriero 8a886039ec HHH-15520 ValueGeneration on @OneToOne leads to boot error 2022-09-20 11:40:26 +02:00
Andrea Boriero e931a8062d HHH-15520 Add test for issue 2022-09-20 11:40:26 +02:00
Christian Beikov 228eabec2c HHH-15527 Make sure that only a single query is executed when running an insert-select with an assigned id 2022-09-20 09:13:20 +02:00
Christian Beikov 77806f486e HHH-15527 Test that only a single query is executed when running an insert-select with an assigned id 2022-09-20 09:13:20 +02:00
Christian Beikov 544c1e0c94 HHH-15517 Fix for temporary table prefixing the qualified table name instead of just table name 2022-09-20 09:11:39 +02:00
Christian Beikov 398702a111 HHH-15517 Testcase for temporary table prefixing the qualified table name instead of just table name 2022-09-20 09:11:39 +02:00
Jan Schatteman e0e85c3398 HHH-15490 - Remove support for HSQLDB versions older than 2.6.1
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-09-20 08:58:37 +02:00
Jan Schatteman 1d76f970e8 HHH-15511 - fix version determination for CockroachDB
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-09-20 08:52:06 +02:00
Christian Beikov bfa17d3fc7 Allow excluding tests of all sub projects, not just hibernate-core 2022-09-19 14:51:57 +02:00
Gavin King b6011ca9c8 add some comments and two missing function registrations 2022-09-17 13:24:18 +02:00
Gavin King 7740121449 clean up old code + deprecate LockOptions.getAliasLockIterator() 2022-09-16 13:21:44 +02:00
Gavin King cf51b92aeb fix + test handling of chr() on Oracle, Derby, MySQL
- Derby simply doesn't have it
- in MySQL it's necessary to specify the character set
- add ascii() and chr() to OracleDialect
2022-09-16 13:21:44 +02:00
Gavin King 3ddfa3f47c HHH-15516 add two-arg form of log() to HQL 2022-09-16 13:21:44 +02:00
Gavin King 1b5935e66d HHH-15515 make pi a portable HQL function 2022-09-16 13:21:44 +02:00
Yoann Rodière 9804a22db0 HHH-15505 Test bytecode enhancement on entity whose field is defined both in mapped superclass and concrete entity 2022-09-16 08:19:44 +02:00
Yoann Rodière 9aabaf1220 HHH-15505 Fix bytecode enhancement on entity whose field is defined both in mapped superclass and concrete entity 2022-09-16 08:19:44 +02:00
Andrea Boriero 62ff89414b HHH-14943 Add test for issue 2022-09-15 11:19:15 +02:00
Christian Beikov 60bd1c657b HHH-15504 Add UUID support for SQL Server 2022-09-14 11:11:10 +02:00
Christian Beikov 69668c32b7 HHH-15503 Add UUID support for MariaDB 10.7 2022-09-14 11:10:10 +02:00
Sanne Grinovero 56125e2614 HHH-15502 Improved guarding of logging overhead 2022-09-13 13:22:18 +01:00
Andrea Boriero 6bf0b0ae41 HHH-15502 Improve NoCachingRegionFactory instantiation performance: Refactored NoCachingTransactionSynchronizationImpl to avoid timestamp creation, Renamed CacheTransactionSynchronization#getCurrentTransactionStartTimestamp method to getCachingTimestamp and removed SharedSessionContractImplementor#getTransactionStartTimestamp method 2022-09-12 19:37:03 +02:00
Jan Schatteman 3dec1ca4dc HHH-15447 - Remove references to deprecated dialects
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-09-12 16:05:00 +02:00
Andrea Boriero 8d9019e981 HHH-15482 CoercionException in criteria simple case statement 2022-09-12 09:37:00 +02:00
Andrea Boriero e9f09315fa HHH-15482 Add test for issue 2022-09-12 09:37:00 +02:00
Jan Schatteman 165bb9cf02 HHH-15446 - allow Dialect version to be specified separately from the dialect class name
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
Co-authored-by: Christian Beikov <christian.beikov@gmail.com>
2022-09-09 16:50:34 +02:00
Andrea Boriero 6904a19835 HHH-15481 NaturalId and Lazy cause a class cast Exception 2022-09-09 16:28:16 +02:00
Andrea Boriero 84c4a57099 HHH-15481 Add test for issue 2022-09-09 16:28:16 +02:00
Andrea Boriero 76c67f080c HHH-15485 Tests for Collections in default FetchGroup are not enabling this property 2022-09-09 14:44:37 +02:00
Andrea Boriero 1d1d38cb80 HHH-14387 Fix issue when bytecode enhancement enabled 2022-09-08 14:45:52 +02:00
Andrea Boriero ab15148a01 HHH-14387 Add more tests 2022-09-08 14:45:52 +02:00
Yoann Rodière 2cf9748430 HHH-14387 Demonstrate regression when bytecode enhancement enabled 2022-09-08 14:45:52 +02:00
Andrea Boriero 29e04afc67 HHH-15477 Criteria EXISTS Subquery referring the Root of the Query of which it is a Subquery causes 'Error interpreting query [SqmRoot not yet resolved to TableGroup]' 2022-09-08 12:13:31 +02:00
Andrea Boriero 6f7ed947be HHH-15477 Add test for issue 2022-09-08 12:13:31 +02:00
Gavin King 53e1ee2f19 fix error message 2022-09-08 09:46:23 +02:00
Gavin King 9005403344 very minor code cleanups in TableBinder 2022-09-08 09:46:23 +02:00
Andrea Boriero 38c8dc90c3 HHH-15356 Unable to get primary information on some dialects (ex: Oracle) when the PK column's position doesn't match the alphabetical name's order 2022-09-08 08:58:48 +02:00
Andrea Boriero 4265cc0ff9 HHH-15356 Add test for issue 2022-09-08 08:58:48 +02:00
Jan Schatteman ec49356c77 HHH-15181 / HHH-15197 / HHH-15198
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-09-07 17:00:57 +02:00
Jan Schatteman 11fb9440ef HHH-15192 - Remove support for Sybase ASE versions older than 16
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-09-07 16:51:57 +02:00
Yoann Rodière c0afae8cb3 HHH-15473 Instantiate collections in the default fetch group by default 2022-09-07 10:56:21 +01:00
Yoann Rodière 767ff43d8c HHH-15473 Test that collection properties are not initialized immediately on lazy proxies with enableCollectionInDefaultFetchGroup = true 2022-09-07 10:56:21 +01:00
Yoann Rodière 1399f3e65e HHH-15473 Actually set enableCollectionInDefaultFetchGroup(true) in relevant tests
The previous setup code was being ignored, so
enableCollectionInDefaultFetchGroup was actually `false` in these
tests...
2022-09-07 10:56:21 +01:00
Yoann Rodière febfd9d4b8 HHH-15473 Don't confuse property initialization for collection initialization in tests
Checking for property initialization was acceptable and pretty
much the only way to perform assertions before we fixed HHH-14620,
but now that initializing a property doesn't imply initializing
the collection, it's just plain wrong:

* If you expect the collection *not* to be initialized, then
  checking that that the property is not initialized is too strict:
  the assertion could fail because the property is initialized
  while the collection is not initialized.
* If you expect the collection to be initialized, then
  checking that that the property is initialized is not enough:
  the assertion could pass because the property is initialized
  while the collection is not initialized.

Besides, we can safely call the getter to test the collection
directly with Hibernate.isInitialized(entity.getCollection())
since a call to the getter is not supposed to trigger collection
initialization.
2022-09-07 10:56:21 +01:00
Yoann Rodière 560722dfaa HHH-15473 Copy/paste a few select tests to set collectionInDefaultFetchGroup to false explicitly 2022-09-07 10:56:21 +01:00
Andrea Boriero 16f865f100 HHH-15479 Removw megamorphic calls 2022-09-06 15:34:54 +02:00
Andrea Boriero 6156751188 HHH-15479 Add ListResultsConsumer.UniqueSemantic to QueryOptions 2022-09-06 15:34:54 +02:00
Andrea Boriero 12aaaff766 HHH-15479 Add Results#addUnique(R result) 2022-09-06 15:34:54 +02:00
Andrea Boriero 1905b03c95 HHH-15479 Improve ListresultConsumer duplication check method performance 2022-09-06 15:34:54 +02:00
Gavin King 601e82620d HHH-15483 allow @TenantId properties of type UUID, Long, Integer, etc
implementation is a bit nasty but it works
2022-09-06 15:15:56 +02:00
Andrea Boriero 6cf9d2d480 HHH-15465 Upgrade to Jandex 3.0.0 2022-09-06 15:14:19 +02:00
Jan Schatteman 17fa97d1b0 HHH-15182 - Remove support for MariaDB versions older than 10.3
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-09-06 15:04:04 +02:00
Jan Schatteman 5b0b1fa680 HHH-15179 - Move support for MySQL versions older than 5.7 into community dialects
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-09-06 15:04:04 +02:00
Jan Schatteman 429ab5b936 HHH-15180 - Remove support for SQL Server versions older than 2008
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-09-06 14:49:45 +02:00
Jan Schatteman 75f4c95274 HHH-15195 - Moving support for CockroachDB versions older than 21.1 into community dialects
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-09-06 14:48:04 +02:00
Jan Schatteman f33d3ed308 HHH-15190 - Remove support for H2 versions older than 1.4.197
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-09-06 14:45:37 +02:00
Christian Beikov 89f04d2274 HHH-15216 Revert moving classes out of the internal package 2022-09-05 11:38:31 +02:00
Jan Schatteman 4d4aaf3b4a HHH-15191 - Remove support for Derby versions older than 10.14.2.0
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2022-09-05 10:06:41 +02:00
Andrea Boriero 41b067e5a5 HHH-15159 Orphan removal of an entity with an @ElementCollection causes a ConstraintViolationException 2022-09-02 16:45:43 +02:00
Andrea Boriero 6c3d700fcc HHH-15159 Add test for issue 2022-09-02 16:45:43 +02:00
Christian Beikov a83ff54671 HHH-14387 Alternative fix for deletion of bytecode lazy collections, by creating PersistentCollection for deletedState 2022-09-02 16:43:53 +02:00