Commit Graph

10897 Commits

Author SHA1 Message Date
Andrea Boriero 7f4c25095e Implement Composite Foreign Key for EmbeddedId 2020-04-21 16:44:03 -05:00
Gail Badner 903bb292e7 HHH-13916 : Add a unique Session "token" 2020-04-21 16:26:40 -05:00
Nathan Xu 7bca059f94 replace '\n' with platform specific char in both SqmTreePrinter and SqlTreePrinter 2020-04-21 16:24:52 -05:00
Nathan Xu 23719ff481 implement readonly loader feature 2020-04-21 16:23:39 -05:00
Steve Ebersole ced4f5e602 Various changes around how basic values are handled in terms of mapping consumption for annotations and how value conversions happen
* Split BasicType "resolution" into 2 - one used for reading (mapping model) versus one used from writing (legacy persister model)
* @SqlTypeCode, @SqlType, @SqlTypeRegistration
* @JavaType, @JavaTypeRegistration
* @Mutability
* jdbc_mappings.adoc section for DomainModel chapter

[*] At the moment, neither @SqlTypeRegistration nor @JavaTypeRegistration support has been implemented
[*] Still need to make sure @Mutability is propogated properly in all the cases
[*] jdbc_mappings.adoc still needs a lot of attention
2020-04-21 16:09:46 -05:00
Panagiotis Sotiropoulos 6e07062b20 HHH-13960 One more checkstyle fix 2020-04-21 11:10:36 +01:00
Panagiotis Sotiropoulos 55e54795c3 HHH-13960 Add SAXReader sec features to match the defaults 2020-04-21 10:49:59 +01:00
Nathan Xu 52a101291d fix a RE sloppiness in IndexQueryHintHandler 2020-04-20 13:29:59 -05:00
gavinking 5e53f2130e Also fix spelling error in method name
Caught by @NathanQingyangXu
2020-04-20 13:11:43 -05:00
gavinking d3d92f9a95 Use lambda syntax to instantiate SQLExceptionConversionDelegates
Especially remove the amazingly verbose CacheSQLExceptionConversionDelegate
2020-04-20 13:11:42 -05:00
gavinking 5fc35980fd Clean up ViolatedConstraintNameExtract-o-rs
- Fix the spelling error in the name of this hierarchy
- Use delegation to an anonymous function instead of overriding in
  TemplateViolatedConstraintNameExtractor
2020-04-20 13:06:00 -05:00
Andrea Boriero 56873732b7 Fix errors after merge 2020-04-20 14:10:07 +01:00
Andrea Boriero 88d65adafb Merge remote-tracking branch 'upstream/master' into wip/6.0_merge_35 2020-04-20 13:44:39 +01:00
Andrea Boriero 0a5ae91c08 fix errors after merge 2020-04-20 12:37:33 +01:00
Andrea Boriero a0b4566264 Merge remote-tracking branch 'upstream/master' into wip/6.0_merge_34 2020-04-20 12:17:22 +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
Andrea Boriero 32e4a16623 Fix merge issues 2020-04-17 15:03:19 +01:00
Andrea Boriero 7ced01d303 Merge remote-tracking branch 'upstream/master' into wip/6.0_merge_32 2020-04-17 14:39:36 +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 c1423c9cb1 HHH-13952 Amend the WildFly integration documentation to warn the feature is gone 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
Andrea Boriero 9547c9ca09 Merge remote-tracking branch 'upstream/master' into wip/6.0_merge_31 2020-04-17 07:53:00 +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
Scott Marlow 1cd56964c6 HHH-13953 Upgrade dom4j to 2.1.3 2020-04-16 12:46:18 -04: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
Andrea Boriero 132a4121b5 Fix issues after merging master 2020-04-16 11:46:19 +01:00
Andrea Boriero 2ccf7fab9e Merge remote-tracking branch 'upstream/master' into wip/6.0_merge_30 2020-04-16 11:03:49 +01:00
Yoann Rodière 588115bb0a HHH-13682 Restore the system property net.bytebuddy.experimental=true in tests on JDK15+
Turns out it's necessary for JDKs with experimental support.
2020-04-16 10:12:00 +01:00
Sanne Grinovero 0b4bcce3fa HHH-13947 Switch the JPA Javadoc prefix URL to a build parameter
Applying the following script, and setting the current value as a
documentation parameter:

find . -type f -name '*.java' -o -name '*.adoc'  -o -name '.xml' | xargs sed -i 's/https:\/\/javaee\.github\.io\/javaee-spec\/javadocs\/javax\/persistence\//\{jpaJavadocUrlPrefix\}/g'

Having the script might help re-migrating existing documentation patches,
or forward porting subsequent improvements from previous branches.

The javadocs for JPA 3.0 have not been published yet at this point;
having a parameter will make it easier to leave this single task for
a later point in time.
2020-04-14 23:41:07 +01:00
Andrea Boriero 299826b9b7 HHH-13937 Get rid of junit5 compile-time dependencies 2020-04-14 14:23:29 +01:00
Yoann Rodière 5fab58bf76 HHH-13682 Upgrade to forbiddenapis 2.7
So that we can feed it Java 13/14 bytecode
2020-04-14 13:36:43 +01:00
Yoann Rodière b32ff5cd9c HHH-13682 Allow forcing the tested Java version in the Gradle build
... just in case we need that for some cutting-edge JDK, for example 15,
that would not be supported by Gradle yet.
2020-04-14 13:36:43 +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
Yoann Rodière 96f7870528 HHH-13682 Do not set net.bytebuddy.experimental=true in tests anymore
It's no longer necessary since we upgraded to byte-buddy 1.10.2,
and it causes bytecode to be converted from Java 14 to Java 12 in some
cases (I don't know why).
2020-04-14 13:36:43 +01:00
Yoann Rodière 0cdf4c19e3 HHH-13682 Generate Java 13/14 bytecode for tests when building with JDK13/14 2020-04-14 13:36:43 +01:00
Yoann Rodière c906989989 HHH-13682 Remove unnecessary checks around Java 8 compatibility
The build requires JDK8+, so we're alwways Java 8 compatible.
2020-04-14 13:36:43 +01:00
Sanne Grinovero 0069aa7be9 Switching version to 5.5.0-SNAPSHOT 2020-04-14 12:23:38 +01:00
Nathan Xu 34d5a2ae7a implement @Filter for loader 2020-04-14 10:54:05 +01:00
Nathan Xu c23ded50ba update user guide regarding the new feature of `@SortNatural` by default 2020-04-14 10:48:32 +01:00
Nathan Xu 7e571cc75c fix some obvious logging bugs 2020-04-14 10:35:51 +01:00
Nathan Xu a91383a226 revert back v5 implementation of fetch entity graph 2020-04-14 10:22:55 +01:00
Nathan Xu 11c5a1019f renaming and some legacy code fixing 2020-04-14 10:22:55 +01:00
Andrea Boriero 5d1aea1897 Fix merge checkstyle and compilation errors 2020-04-09 11:07:00 +01:00
Andrea Boriero 5c86c4a805 Merge remote-tracking branch 'upstream/master' into wip/6.0_merge_29 2020-04-09 07:37:11 +01:00
Andrea Boriero ba0902d99a 5.4.14 2020-04-06 18:48:40 +01:00
Andrea Boriero b897a36f2f Fix issue with generated pom missing project description 2020-04-06 18:21:11 +01:00