Commit Graph

5499 Commits

Author SHA1 Message Date
Martin Vietz 180656e9f3 HHH-14064 - Fix documentation for schema-generation 2020-06-09 14:38:55 +01:00
Réda Housni Alaoui 5963dc7fe8 HHH-13980 NullPointerException on AbstractEntityGraphVisitationStrategy.startingCollectionIndex 2020-05-31 07:50:49 -05:00
Gail Badner 6df82bb6a6 HHH-14044 : Extract code from Loader into protected methods 2020-05-29 10:27:37 +01:00
Hannes Rosenögger b9703e33d4 HHH-14022 Revert HHH-13322 Fix Oracle dialect's introduced in 5.4.13 that is causing issues with sequence increment determination 2020-05-29 10:12:34 +01:00
Jason Pyeron 0804de87b4 HHH-10956 reduced runtime complexity, added Component.getProperty(int)
Component.getProperty(String) was looping and comparing, but we already now the position of the property
2020-05-29 08:32:18 +01:00
Andrea Boriero 2db3ce2643 HHH-10956 an exception has to thrown when the composite key is an association and its value is null 2020-05-29 08:32:18 +01:00
Andrea Boriero 114e16f64f HHH-10956 Add additional test 2020-05-29 08:32:18 +01:00
Andrea Boriero cfcd2ac40f HHH-10956 Moved tests using GenerationType#IDENTITY into another class annotated with @RequiresDialectFeature(DialectChecks.SupportsIdentityColumns.class) 2020-05-29 08:32:18 +01:00
Jason Pyeron 42b38b60cf HHH-10956 put one line if in {} 2020-05-29 08:32:18 +01:00
Jason Pyeron e37a8da568 HHH-10956 added more complext tests with self referential FK
* known issue: HHH-13971, test marked as @Ignore
* added some output debugging to help developers review CI/CD logs
* 8 tests, 1 ignored, 0.745s duration
2020-05-29 08:32:18 +01:00
Jason Pyeron e42fe94f65 HHH-10956 fixed failed insertion with IdClass with partial identifier generation
* regression introduced by HHH-4848
* AbstractEntityTuplizer lines 179 and 311 formatting issues, preserved
* bug HHH-9662 blocks testing of Identity insertion
2020-05-29 08:32:18 +01:00
Jason Pyeron da2b24b598 HHH-10956 created test cases IdClass with partial identifier generatiod, all marked @FailureExpected 2020-05-29 08:32:18 +01:00
Andrea Boriero 58fe82e730 Revert "HHH-14022 Oracle-Dialect does not find Sequences outside User-Schema"
This reverts commit ca0ae9bfad.
2020-05-29 07:42:39 +01:00
varun.shrivastava ca0ae9bfad HHH-14022 Oracle-Dialect does not find Sequences outside User-Schema 2020-05-29 07:01:22 +01:00
Sanne Grinovero c013ae12b7 HHH-14047 Expose some methods of EntityManagerFactoryBuilderImpl to extensions 2020-05-28 20:49:25 +01:00
Sanne Grinovero 76e305ba75 HHH-14047 Allow customization of the StandardServiceRegistryBuilder by extending the EntityManagerFactoryBuilderImpl 2020-05-28 20:49:25 +01:00
Sanne Grinovero d7373a86bb HHH-14046 Allow customizing the type of SessionFactory by changing the initial ServiceInitiator list 2020-05-28 20:49:25 +01:00
Andrea Boriero 2baa5fccdc HHH-13959 Add nullability and uniqueness for @OneToOne with @JoinTable 2020-05-28 18:39:16 +01:00
Andrea Boriero 038b3ce487 HHH-13959 Add test for issue 2020-05-28 18:39:16 +01:00
gavinking 1d2d67677f HHH-14049 AbstractEntityPersister make three private methods protected for use in Hibernate Reactive 2020-05-28 18:27:42 +01:00
gavinking b5edf6cabe HHH-14048 Expose lazy property fetching to Hibernate reactive 2020-05-28 18:20:42 +01:00
gavinking 17152bfbba expose a private field to Hibernate Reactive
needed to support Criteria queries
2020-05-26 08:04:40 +01:00
Steve Ebersole 50a5da07c1 HHH-14033 - SQL script parsing problem with multi-line comments
- Better handling of multi-line comments
- Restructured some internal classes to consolidate packages
- Added "system"-style SchemaToolingLogging

This commit:

- removed some temporary logging
- better comments in parsers
2020-05-20 07:13:41 -05:00
Steve Ebersole 7dfb0fdf24 HHH-14033 - SQL script parsing problem with multi-line comments
- Better handling of multi-line comments
- Restructured some internal classes to consolidate packages
- Added "system"-style SchemaToolingLogging

This commit:

- unifies handling of Antlr `-traceParser` across parsers
- adds comment crediting to Terrance Parr for the BLOCK_COMMENT lexer rule in the sql-script grammar
2020-05-20 07:02:20 -05:00
Steve Ebersole b658e903d7 HHH-14033 - SQL script parsing problem with multi-line comments
- Better handling of multi-line comments
- Restructured some internal classes to consolidate packages
- Added "system"-style SchemaToolingLogging
2020-05-19 12:25:34 -05:00
Andrea Boriero 084f713949 HHH-13179 Fix license header 2020-05-18 18:42:31 +01:00
Davide D'Alto e28d77ac33 Revert "HHH-13997 Use functions for the creation of ActionQueue and PersistenceContext"
This reverts commit 00acb1f213.
2020-05-18 15:08:45 +01:00
Davide D'Alto 00acb1f213 HHH-13997 Use functions for the creation of ActionQueue and PersistenceContext 2020-05-18 14:31:53 +01:00
Davide D'Alto 9cd2236fd3 HHH-13997 : Add methods to SessionImpl and StatefulPersistenceContext; make Loader method protected
* Change visibility for Loader#registerNonExists
* Methods for creating PersistenceContext and ActionQueue
* Add StatefulPersistenceContext#initializeNonLazyCollections(Consumer<PersistentCollection> initializeAction)
2020-05-18 14:31:53 +01:00
Sanne Grinovero 2d7022ecec HHH-14029 Generally improve handling of all post-load events 2020-05-18 14:15:34 +01:00
Sanne Grinovero b08ae4cd14 HHH-14029 Improve 2LC post-load event invocations 2020-05-18 14:15:15 +01:00
Lars Karlström 02c3cc9e2e HHH-13179 Fixed code formatting issue 2020-05-18 07:51:57 -05:00
Lars Karlström 4413433ace HHH-13179 Subclass 2nd level caching now works for XML mappings 2020-05-18 07:51:57 -05:00
Davide D'Alto 88a712bab7 HHH-14024 Fix NativeSQLQueryPlanEqualsTest compilation error 2020-05-18 12:53:12 +01:00
gavinking 92b559abda HHH-14024 add QueryPlanCreator functional interface
simplifies customization of HQLQueryPlan instantiation
2020-05-18 06:47:34 -05:00
Davide D'Alto 4a7f9ec0d6 HHH-14026 Change scope to protected for SessionImple#verifyImmutableEntityUpdate 2020-05-18 06:47:34 -05:00
Davide D'Alto 9fd9c0533d HHH-14025 Add method to return the query statements for update queries 2020-05-18 06:47:34 -05:00
Davide D'Alto 42acc81067 HHH-14028 Change scope of various private methods to protected
So that Hibernate Reactive can reuse them.
2020-05-18 06:47:34 -05:00
Davide D'Alto 0633559f9f HHH-14024 Allow the creation of a different QueryPlanCache 2020-05-18 06:47:34 -05:00
Davide D'Alto d914c8aabc HHH-14027 Allow the creation of a different QueryLoader 2020-05-18 06:47:34 -05:00
Davide D'Alto 5968044118 HHH-14024 Allow the creation of a different QueryPlan 2020-05-18 06:47:34 -05:00
Sanne Grinovero e23dad19ca HHH-14019 Adding some comments to the new SPI 2020-05-13 22:29:41 +01:00
gavinking 137c524a14 HHH-14019 Allow customizing the Database target in the Schema Management tool
Add an API allowing Hibernate Reactive to plug in to schema export:
we've decided that HR should not use JDBC for schema export
2020-05-13 22:25:25 +01:00
Sanne Grinovero cb4909a5e1 HHH-14004 Attempt to load from 2LC when initializing an Enhanced Proxy 2020-05-13 21:33:01 +01:00
Sanne Grinovero 947dda618e HHH-14004 Test for Cacheable Enhanced Proxies 2020-05-13 21:33:01 +01:00
Andrea Boriero 0e1713a3a0 HHH-13936 Add additional test 2020-05-12 10:55:39 +01:00
Jonathan Bregler fa4ead1baa HHH-13996: Update documentation for HANA Cloud 2020-05-11 22:39:04 +01:00
Yoann Rodière 1a28fd419e HHH-14006 Test extended bytecode enhancement for mapped superclasses and entity superclasses 2020-05-11 22:15:14 +01:00
Yoann Rodière 5c5b347614 HHH-14006 Take inherited fields into account in extended bytecode enhancement 2020-05-11 22:15:14 +01:00
Sanne Grinovero bc12eee661 Revert "HHH-13950 Update to Bean Validation 3 preview: Hibernate Validator 7.0.0.Alpha1"
This reverts commit b9a24f458c.
2020-05-11 18:00:20 +01:00
Sanne Grinovero 6dd7d09ba0 Revert "HHH-13950 Apply the mass replace script to switch to Jakarta Validation API"
This reverts commit 60abc8aa76.
2020-05-11 18:00:07 +01:00
michiel.hendriks 585ca8e2bf HHH-13936 Call pulseTransactionCoordinator before checking for transaction in flush() 2020-05-11 16:01:43 +01:00
Sanne Grinovero 2c12ca401d HHH-13995 Remove dead code from StandardBasicTypes 2020-04-30 19:20:23 +01:00
Sanne Grinovero 922ec04422 HHH-13994 Bootstrap analysis: avoid initializing unused JtaPlatform classes 2020-04-30 19:20:23 +01:00
Sanne Grinovero 49405effce HHH-13993 Bootstrap analysis: avoid initializing many Dialect classes 2020-04-30 19:20:22 +01:00
Sanne Grinovero 41cd5ab359 HHH-13976 Some javadoc clarifications and code style adjustments 2020-04-30 14:43:33 +01:00
barreiro 4d0bd0f080 HHH-13976 Introduce BEFORE_TRANSACTION_COMPLETION release mode 2020-04-30 14:43:27 +01:00
Andrea Boriero 250160d923 HHH-13986 Fix test failure on MariaDB 2020-04-29 11:12:35 +01:00
Andrea Boriero 859ffb608a HHH-13986 SequenceHiLoGeneratorNoIncrementTest is not testing the right Optimiser 2020-04-28 17:48:28 +01:00
Steve Ebersole 08bf2bb906 HHH-13890 : Add support for custom EventType and listeners - EventEngine 2020-04-22 13:26:22 -05:00
Panagiotis Sotiropoulos 55e54795c3 HHH-13960 Add SAXReader sec features to match the defaults 2020-04-21 10:49:59 +01:00
Sanne Grinovero 60abc8aa76 HHH-13950 Apply the mass replace script to switch to Jakarta Validation API
For reference, this is the script being applied:
find . -type f -name '*\..java' -o -name '*.\.adoc' -o -name '*.\.gradle' | xargs sed -i 's/javax\.validation/jakarta\.validation/g'
2020-04-20 12:16:36 +01:00
Sanne Grinovero b9a24f458c HHH-13950 Update to Bean Validation 3 preview: Hibernate Validator 7.0.0.Alpha1
We apply the update int two steps:
 - some hand-rolled changes, such as switching the dependency to the new Hibernate Validator preview build
 - running a replace-all scripts

This individual commit represents the first set of changes.
When porting this change to a different branch, this one should be cherry picked while the second change
is better ported by running the same script once again.
2020-04-20 12:14:24 +01:00
Sanne Grinovero 3f2a4947a7 HHH-13952 Remove dependency to Arquillian as its no longer used 2020-04-17 14:27:19 +01:00
Sanne Grinovero 1aa2e858ba HHH-13952 Remove all WildFly based integration tests 2020-04-17 14:27:19 +01:00
Sanne Grinovero 2b279c6a83 HHH-13952 Remove our ability to build the Wildfly feature pack and run integration tests on WildFly 2020-04-17 14:27:19 +01:00
Jonathan Bregler 95c9526dda HHH-13917: Add support for HANA Cloud 2020-04-17 13:30:38 +01:00
Gail Badner 4741fa4f33 HHH-11903 : @OneToOne Derived ID is null when returned by query when bidirectional 2020-04-16 14:29:58 -07:00
Steve Ebersole 2ddf58907e HHH-13948 - EnhancedSetterImpl should define writeReplace 2020-04-16 14:48:07 +01:00
Gail Badner 2a4c10a663 HHH-13890 Add support for custom event types and listeners 2020-04-16 14:12:44 +01:00
Yoann Rodière 1060baf74b HHH-13682 Enable extended bytecode enhancement in NaturalIdInUninitializedAssociationTest
This test accesses a field of an entity directly and expects it to be
automatically initialized; this cannot work without extended bytecode
enhancement.

This used to work with Java 8 bytecode, but only by chance. It seems
that Java 8 bytecode relies on "synthetic", static access methods
inserted by the compiler to access the fields of entities in this test:
any access to the field is done through this access method instead of
through a direct field access. Since we apply bytecode enhancement to
all methods of entities, this means that access to fields triggers
initialization, without any bytecode enhancement in the caller class.

I believe this is specific to nested classes, but couldn't find a
source. For reference, the bytecode of access methods looks like this:

  static int access$002(org.hibernate.test.bytecode.enhancement.lazy.NaturalIdInUninitializedAssociationTest$AnEntity, int);
    Code:
       0: aload_0
       1: iload_1
       2: dup_x1
       3: putfield      #3                  // Field id:I
       6: ireturn

  static org.hibernate.test.bytecode.enhancement.lazy.NaturalIdInUninitializedAssociationTest$EntityImmutableNaturalId access$102(org.hibernate.test.bytecode.enhancement.lazy.NaturalIdInUninitializedAssociationTest$AnEntity, org.hibernate.test.bytecode.enhancement.lazy.NaturalIdInUninitializedAssociationTest$EntityImmutableNaturalId);
    Code:
       0: aload_0
       1: aload_1
       2: dup_x1
       3: putfield      #2                  // Field entityImmutableNaturalId:Lorg/hibernate/test/bytecode/enhancement/lazy/NaturalIdInUninitializedAssociationTest$EntityImmutableNaturalId;
       6: areturn

With Java 11, however, access to fields of entities is done directly,
even for nested classes. So the access methods no longer exist, and we
don't get automatic initialization upon field access. We need extended
bytecode enhancement, like we would in any other case of field access
(in particular accessing fields of non-nested classes).
2020-04-14 13:36:43 +01:00
Andrea Boriero b897a36f2f Fix issue with generated pom missing project description 2020-04-06 18:21:11 +01:00
Sanne Grinovero 6ea9844874 HHH-13935 Allow subclasses of StandardServiceRegistryBuilder to initialize a custom list of StandardServiceInitiator(s) 2020-04-06 16:10:44 +01:00
Yoann Rodière bee15c498f HHH-13925 Fix malformed @author tags in javadoc
You're not supposed to use unescaped "<" or ">".

This wasn't detected by checkstyle in Gradle 5, but it is now, and that
fails the build.
2020-04-06 16:04:55 +02:00
Yoann Rodière aebf9d192f HHH-13925 Fix invalid javadoc syntax
This wasn't detected by checkstyle in Gradle 5, but it is now, and that
fails the build.
2020-04-06 16:04:55 +02:00
Sanne Grinovero e1aa8714c0 HHH-13930 Minor formatting improvements and comments 2020-04-05 23:07:39 +01:00
Stuart Douglas 0955394c82 HHH-13930 Allow for creation of unloaded proxies in ByteBuddyProxyHelper 2020-04-05 23:07:22 +01:00
Sanne Grinovero a975d0de19 HHH-13929 Add test coverage using PersistenceUtilHelper within exising test for Enhanced Proxies 2020-04-05 22:26:34 +01:00
Sanne Grinovero 2ac0d2ee91 HHH-13929 Improve the PersistenceUtilHelper to allow dealing with Enhanced Proxies 2020-04-05 22:26:31 +01:00
Yoann Rodière 2f32169249 HHH-13689 Replace uses of the deprecated osgi plugin with the biz.aQute.bnd plugin
https://docs.gradle.org/5.0-milestone-1/release-notes.html#deprecated-osgi-plugin
2020-04-01 10:54:56 -05:00
Yoann Rodière cee0fce043 HHH-13685 Replace uses of deprecated classifier property in Jar tasks with archiveClassifier 2020-04-01 09:53:13 -05:00
Nathan Xu 5f83662226 HHH-13889 fix the issue that inline string literal in Criteria is not escaped 2020-04-01 13:29:55 +01:00
Gail Badner e1d2aecef7 HHH-13910 : MySQL57Dialect selected by automatic dialect resolution when using MySQL 8.0 database 2020-03-26 21:02:44 -07:00
Gail Badner caded6cd40 HHH-13910 : Added and corrected tests 2020-03-26 20:59:55 -07:00
Gail Badner a54d657d98 HHH-13891 : ProxyFactory should not be built if any ID or property getter/setter methods are final 2020-03-25 18:36:05 -07:00
Gail Badner 3427bc8414 HHH-13891 : Added test 2020-03-25 18:36:05 -07:00
romainmoreau b5443deab3 Drop constraints using CASCADE
Co-Authored-By: William Cekan <wcekan@oath.com>
2020-03-19 13:58:26 -05:00
Romain Moreau b35ccc8e37 HHH-13711: drop constraints enabled for H2 2020-03-19 13:58:26 -05:00
Sanne Grinovero 486addab0c HHH-13897 ResultSetProcessingContextImpl: no need to clear collections before discarding the reference to them 2020-03-19 11:51:59 +00:00
Gail Badner 8c6f8025e3 HHH-13619 - Support for JPA's `size` function as a select expression
- Fix to work on Oracle by removing "as" between table name and alias
2020-03-12 14:42:11 -07:00
Steve Ebersole 26ab3c5362 HHH-13619 - Support for JPA's `size` function as a select expression
- PR revisions
2020-03-05 09:58:35 -06:00
Steve Ebersole 336c3b9e30 HHH-13619 - Support for JPA's `size` function as a select expression
- code cleanup
2020-03-04 12:37:37 -06:00
Steve Ebersole 692f19c83f HHH-13619 - Support for JPA's `size` function as a select expression
- initial support
2020-03-04 12:37:37 -06:00
Gail Badner 24cedfa6ec HHH-13619 : test cases 2020-03-04 12:36:24 -06:00
Andrea Boriero 5bf772c59d HHH-13322 Fix test 2020-03-02 11:48:54 +00:00
Nathan Xu 188c05cc33 HHH-13322 Fix Oracle dialect's 'getQuerySequencesString()' issue by limiting to current schema 2020-03-02 10:31:18 +00:00
Sanne Grinovero b856d534cb HHH-13876 Remove unused code from StandardStack 2020-02-26 09:59:23 +00:00
Sanne Grinovero e65ef1354c HHH-13876 Delete the immutable SingletonStack implementation as its no longer used 2020-02-26 09:44:17 +00:00
Sanne Grinovero 90c669108b HHH-13876 Remove method Stack#getPrevious as its unused and contains a bug 2020-02-26 09:42:06 +00:00
Davide D'Alto 4e58006f10 HHH-13878 Make some private methods in Loader protected
This way we can reduce the amount of copy and paste in Hibernate Rx.
2020-02-26 09:35:44 +00:00