Commit Graph

8903 Commits

Author SHA1 Message Date
Gavin 58e9c2a0fc use default noop methods on SessionEventListener
- also, mark it @Incubating, as was already documented
- improve the jdoc for SessionEventListener and StatementInspector
2022-11-16 18:20:08 +01:00
Sanne Grinovero be2999d054 HHH-15693 Introduce a fast-path access for ClassLoaderService being retrieved from ServiceRegistry 2022-11-16 17:12:28 +00:00
Sanne Grinovero 1eeccd32eb CacheHelper#fromSharedCache no longer needs to return a Serializable object 2022-11-16 15:15:06 +00:00
Gavin 3fabde0cd9 remove a method I accidentally pushed 2022-11-16 14:13:41 +01:00
Gavin ed956d514a HHH-15729 introduce SchemaManager, a programmatic API for schema export
featuring a brand new SchemaTruncator!
2022-11-16 14:10:08 +01:00
Christian Beikov 7d9ffc6158 HHH-15728 Improve query cache key hash code to reduce collisions 2022-11-16 11:06:31 +01:00
Christian Beikov 68324b9297 HHH-15719 Hint UniqueSematics.NONE for entity queries without collection join fetches 2022-11-16 11:06:21 +01:00
Gavin 38c591f823 joc punctuation fix 2022-11-14 18:15:56 +01:00
Christian Beikov 8c1aa482f9 Switch to debug logging for reflection optimizer issues 2022-11-14 14:48:02 +01:00
Christian Beikov 99f9ccdd11 HHH-15569 Replace list and map with array to improve state extraction for entity initializing 2022-11-14 14:46:11 +01:00
Gavin 1d5f6b5c13 finish off jdoc for DDLTypes 2022-11-14 13:19:36 +01:00
Gavin e72d0aeb41 even more jdoc about query cache invalidation 2022-11-13 15:42:15 +01:00
Gavin 1d5c0a60d3 better error reporting in DialectContext and service registry 2022-11-13 15:35:53 +01:00
Gavin 110596adb7 deprecate two unused types in the cache SPI + add javadoc
also correct some errors in the names of types - this is
why it's better to use @link!!
2022-11-13 13:32:58 +01:00
Gavin cf9578a9e0 add some cross-refs to the Javadoc
so we can easily find where these settings ultimately come from
2022-11-13 11:42:46 +01:00
Gavin f58e450ea8 make a test more robust 2022-11-13 00:39:25 +01:00
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