Commit Graph

5541 Commits

Author SHA1 Message Date
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 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
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
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
Davide D'Alto fe52328ab6 HHH-13878 Remove final from SessionImpl#internalLoad
In Hibernate RX we need to override this method.
2020-02-26 09:35:44 +00:00
Vlad Mihalcea c76675f11a Changes according to PR review. Requires rebase! 2020-02-25 11:46:13 -06:00
Vlad Mihalcea c7aaf31cbe HHH-13879 - Slow query log should use System#nanoTime not System#currentTimeMillis 2020-02-25 11:46:13 -06:00
Gail Badner a7261ad053 HHH-13875 : Optional one-to-one does not always join the associated entity table when querying 2020-02-24 12:28:22 -08:00
Gail Badner b060b21851 HHH-13875 : Added test cases 2020-02-24 12:28:22 -08:00
The Geeky Asian b914b02dca HHH-13874 - Removing the @author added.
The newly added @author in the previous commit or deprecation messages has been removed in this commit.
2020-02-21 06:11:37 -06:00
The Geeky Asian e98e89d806 HHH-13874 - Messages added for the deprecated methods. 2020-02-21 06:11:37 -06:00
The Geeky Asian c4bd5937e3 HHH-13874 - Deprecating methods that will be removed soon
Two methods that are dropped in v6.0 are now marked as deprecated in this commit.

As discussed in the removal PR https://github.com/hibernate/hibernate-orm/pull/3229
2020-02-21 06:11:37 -06:00
Nathan Xu e9df1cb626 HHH-13853 fix minor issue 2020-02-21 12:04:12 +00:00
Vlad Mihalcea d9a335c429 HHH-13872 - Make the Java Stream close the underlying ScrollableResultsIterator upon calling a terminal operation 2020-02-21 06:03:42 -06:00
w1ida 28b8cebf9d HHH-13873 IdTableHelper can skip opening a connection when there's no statements to execute 2020-02-20 15:15:59 +00:00
Steve Ebersole 1042f23bee HHH-13103 - Allow Hibernate Types to get access to the current configuration properties using constructor injection 2020-02-18 15:22:05 -06:00
Vlad Mihalcea c346171b23 HHH-13103 - Allow Hibernate Types to get access to the current configuration properties 2020-02-18 15:22:05 -06:00
Vlad Mihalcea 9084ce497e HHH-13853 - Pass the merged Integration settings and Persistence Unit properties to buildBootstrapServiceRegistry 2020-02-18 11:42:51 -06:00
Sanne Grinovero 760386d2cf HHH-13864 Cosmetic change of format when reporting version number 2020-02-13 16:41:01 +00:00
Andrea Boriero 2f2d30e4e5 HHH-13861 Expose the doWork() and doReturningWork() APIs on StatelessSession as well 2020-02-13 09:33:00 +00:00
Sanne Grinovero 2ed15445c6 HHH-13859 Removing unused import 2020-02-11 15:11:07 +00:00
Sanne Grinovero d3fdb657d6 HHH-13859 Avoid attempting to index a module-info.class via Jandex 2020-02-11 15:11:07 +00:00
Andrea Boriero 5defe54d31 HHH-13856 Fix Oracle failing tests 2020-02-10 14:52:32 +00:00
Sanne Grinovero 90b69ffc7d HHH-13854 Allow extensions of StandardServiceRegistryBuilder to ignore Environment variables 2020-02-07 16:55:02 +00:00
Sanne Grinovero 11b1623774 HHH-13804 Update comments in Environment to suggest the ability to inject an externally defined ProxyFactoryFactory instance 2020-02-07 13:41:29 +00:00
Sanne Grinovero 8043e49384 HHH-13851 Remove a dead code field from PojoEntityTuplizer 2020-02-07 13:28:41 +00:00
Sanne Grinovero 0964b881f7 HHH-13851 Rework initialization of ProxyFactoryFactory, allow some code reuse from SPI 2020-02-07 13:28:32 +00:00
Sanne Grinovero 52ca2703f3 HHH-13850 Clear the BytecodeProvider caches both after SessionFactory creation and stop 2020-02-07 13:22:37 +00:00
Sanne Grinovero 5c81089d65 HHH-13849 Convert BytecodeProvider into a Service as well 2020-02-07 13:21:13 +00:00
Sanne Grinovero e19acd5a9c HHH-13849 Convert ProxyFactoryFactory into a Service, scope it to SessionFactory 2020-02-07 13:21:10 +00:00
Frank Doherty 4b037cdf8f HHH-13792 evict entity cache after transaction has committed for read-write cache access strategy
- changed EntityReadWriteAccess to remove the no-op unlockRegion method (now uses the method inherited from
  AbstractCachedDomainDataAccess, which calls evictAll)

- changed AbstractReadWriteAccess to add a no-op removeAll method (as this is called by the constructor in
  BulkOperationCleanupAction.EntityCleanup, during the transaction)

- added new file ReadWriteCacheTest with some test scenarios:
  - testDeleteHQL/testDeleteNativeQuery/testUpdateHQL/testUpdateNativeQuery which confirm that the fix corrects the
    scenario where stale entities could be loaded into the cache and remain there (because the eviction was
    happening before the transaction had committed)
  - testDelete/testUpdate show that entity updates/deletions were not affected by this issue (only HQL/native queries)
2020-02-05 15:47:13 +01:00
Hyunjin Choi 07ffd63b3a Fix typos in AbstractEntityPersister's generateSQLDeletStrings() method
Fix typo.
2020-02-05 15:27:16 +01:00
Sanne Grinovero ddb810510c HHH-13838 Allow extension of PersistenceXmlParser 2020-01-31 18:32:24 +00:00
Nathan Xu 19e35b86cc HHH-13809 Various improvements in the user guidesw 2020-01-31 09:30:28 +00:00
Sanne Grinovero cc7c7d7ee3 HHH-13837 Initialize the Hibernate VERSION as a real constant 2020-01-30 22:05:36 +00:00
Sanne Grinovero 5f302c57a7 HHH-13831 Avoid log level check within complex loops 2020-01-30 22:05:36 +00:00
Davide D'Alto 4cd9dd30a0 HHH-13831 Rename test class to EventListenerDuplicationStrategyTest 2020-01-30 18:09:23 +01:00
Davide D'Alto 0268ba9a33 HHH-13831 Test listeners error replacement strategy 2020-01-30 18:09:23 +01:00
Davide D'Alto e38d2be431 HHH-13831 Test listener keep original replacement strategy 2020-01-30 18:09:23 +01:00
Davide D'Alto 6670d03493 HHH-13831 Add tests for multiple listeners
We want to test what happens when we apply a replacement strategy
  that doesn't match all listeners.
2020-01-30 18:09:23 +01:00
Davide D'Alto 695e3a084e HHH-13831 Clean up existing tests for listeners 2020-01-30 18:09:23 +01:00
Davide D'Alto 7bf632e5c5 HHH-13831 Fix the way we keep track of the callers in test 2020-01-30 18:09:23 +01:00
Davide D'Alto c0a2b4f424 HHH-13831 Add missing placeholder to log message 2020-01-30 18:09:23 +01:00
Steve Ebersole 0a2dd4e126 HHH-13831 Refresh listeners when one is replaced 2020-01-30 18:09:23 +01:00
Steve Ebersole 2f86c4983f HHH-13831 Refresh listeners when one is replaced 2020-01-30 18:09:23 +01:00
Davide D'Alto 739ca869af HHH-13831 Test for replacing listeners 2020-01-30 18:09:23 +01:00
Davide D'Alto 5c1cc35f98 HHH-13831 Refresh listeners when one is replaced 2020-01-30 18:09:23 +01:00
Sanne Grinovero f7aba3ea17 HHH-13833 Replace references to Opcodes.ASM7 with OpenedClassReader.ASM_API 2020-01-30 09:02:43 +00:00
Nathan Xu 3eb49972f3 HHH-8776 add more 'final' keywords to align with existing coding style 2020-01-29 20:52:33 +01:00
Nathan Xu d02ce91e9c HHH-8776 add testing cases to prove 'fetch graph' takes precedence over 'fetch profile' 2020-01-29 20:52:33 +01:00
Nathan Xu 29f905dafc HHH-8776 fix check style issue 2020-01-29 20:52:33 +01:00
Nathan Xu f3cfff5cee HHH-8776 fix 'fetch graph' semantic 2020-01-29 20:52:33 +01:00
Gwenneg Lepage a4ba766620 HHH-13833 Replace OpCodes.ASM5 with OpCodes.ASM7 in the Byte Buddy enhancer 2020-01-29 15:48:53 +00:00
Sanne Grinovero 252ca9e98b HHH-13832 Optimise setting of default Flush Mode on a newly created Session 2020-01-29 15:42:23 +00:00
Jonathan Bregler b178f9e23a HHH-13783: fix test failure in HiLoSequenceMismatchStrategyTest 2020-01-28 21:36:32 +01:00
Andrea Boriero b51d34a22d HHH-13796 Fix test failure on Oracle 2020-01-28 15:18:06 +00:00
Nathan Xu 9d2ac546f3 HHH-13677 make org.hibernate.flushMode config take effect 2020-01-28 08:14:39 +00:00
Nathan Xu a6934467f7 HHH-6686 fix JQL exception in face of 'empty' 2020-01-27 14:55:39 +00:00
Andrea Boriero f1d1e62478 HHH-10844 Fix test formatting 2020-01-27 13:42:34 +00:00
Jan-Willem Gmelig Meyling 85bfcc6e21 HHH-13796 - Missing from clause in query from BinaryLogicOperatorNode row value constructor translation
https://hibernate.atlassian.net/browse/HHH-13796
2020-01-27 13:40:44 +00:00
Andrea Boriero c5581e6759 HHH-13783 Fix test failing on Oracle 2020-01-27 12:10:15 +00:00
Nathan Xu 0c8e3056dc HHH-13783 avoid SequenceMismatchStrategy checking for non-pooled optimizer 2020-01-24 12:15:43 +00:00
Andrea Boriero 5844bbd85b HHH-12856 Reintroduce supportsLimitOffset for legacy OS400 2020-01-24 11:32:44 +00:00
Pierrick Rouxel 7b1d1a1f3a HHH-12856 Add AS400V7R3Dialect as default for V7R3 of IBM i 2020-01-24 11:29:01 +00:00
Pierrick Rouxel 1038a0c968 HHH-12856 Reintroduce limitation for legacy OS400 2020-01-24 11:29:01 +00:00
Pierrick Rouxel b204c95e0c HHH-12856 Fix sequences with liblist support 2020-01-24 11:29:01 +00:00
Pierrick Rouxel 4aea43bdb0 HHH-12856 Cleanup DB2400Dialect 2020-01-24 11:29:01 +00:00
Pierrick Rouxel 1c3b8a1c28 HHH-12856 Support of sequences on DB2400 2020-01-24 11:29:01 +00:00
Andrea Boriero d04a1fe3fd HHH-13373 Remove FailureExpected annotation from tests and assure tearDownDBs method is executed even if an error occurs in the setUpDBs method 2020-01-24 09:59:02 +00:00
Nathan Xu bc2aa159a1 HHH-13373 ensure testing code correctness by local testing 2020-01-23 11:06:34 +00:00
Nathan Xu 7beb96a2ab HHH-13373 add a testing case annotated with '@FailureExpected' annotation 2020-01-23 11:06:34 +00:00
Nathan Xu 8fb35947ff HHH-13373 fix the bug that 'different sequence names in differnt dbs' breaks SequenceInformationExtractorMariaDBDatabaseImpl 2020-01-23 11:06:34 +00:00
Antoine Reilles 4318349b4d Fix String format in log
Use %s in the log string format, to avoid java.util.UnknownFormatConversionException: Conversion = ']' when enabling debug logs.
2020-01-22 10:54:19 +00:00
Christian Beikov a2f7f59de4 HHH-13752 - Workaround id class issues like suggested by @jwgmeligmeyling 2020-01-21 15:24:43 +00:00
Christian Beikov 8f563fbd31 HHH-13752 - Test and fix deletion of entities with many-to-many assocations using non-primary keys for join table 2020-01-21 15:24:43 +00:00
gavinking fa952863cf HHH-13823 Make it possible to reuse MergeContext in Hibernate RX.
Exposes the operations used by DefaultMergeEventListener
2020-01-21 13:00:26 +00:00
gavinking e5f8341aa4 HHH-13823 Add setters for two of the properties of EntityIdentityInsertAction
This is needed by hibernate-rx.
2020-01-21 13:00:23 +00:00
gavinking a0f9b1df00 HHH-13823 Make three private methods of SessionImpl visible to subclasses 2020-01-21 13:00:20 +00:00
gavinking a2f21e12a4 HHH-13823 Expose members of some SQL construction classes to subclasses
Allows hibernate-rx to more easily customize bind variable syntax.
2020-01-21 13:00:17 +00:00
gavinking 12a8508e66 HHH-13823 Introduce an indirection when instantiating Insert/Update/Delete
This allows hibernate-rx to intervene in the rendering of bind variables
and use $n instead of ?
2020-01-21 13:00:15 +00:00
gavinking 96faae93b1 HHH-13823 Always generate lowercase column aliases
This change is needed by hibernate-rx as a workaround for behavior
of the Postgres client. But anyway I think it's cleaner.
2020-01-21 13:00:12 +00:00
gavinking f59f0ce406 HHH-13823 Changes for Hibernate RX
Mostly just expose some operations and constructors that were previously inaccessible.
2020-01-21 13:00:02 +00:00
marekchodak bf473681e4 HHH-13780 Allow NamedQuery to set hint QueryHints.PASS_DISTINCT_THROUGH 2020-01-21 10:09:17 +00:00
Gail Badner 63a96e335e HHH-13814 : Add tests 2020-01-15 15:41:48 -08:00
Sanne Grinovero 19b7921d1d HHH-13806 CoreMessageLogger#unableToLoadCommand is not printing the cause of the error 2020-01-10 09:44:20 +00:00
Nathan Xu 0b938bd16b HHH-13800 fix typo in AbstractGraphNode's verifyMutability() method 2020-01-06 16:38:35 -05:00
Nathan Xu 207c0d68be HHH-13800 add a new found typo in org.hibernate.graph package's package-info.java 2020-01-06 16:01:13 -05:00
Nathan Xu 674b1dfd27 HHH-13800 Fix typos in Javadoc 2020-01-06 16:00:03 -05:00
Nathan Xu 00e9db2b8b HHH-11958 Make EntityManager.find() support QueryHints.HINT_READONLY 2020-01-06 08:59:35 -06:00
Nathan Xu 49fe4f6494 HHH-13726 Extract 'prepareEventListeners' method out of SessionFactoryImpl 2020-01-06 07:30:19 -06:00
Nathan Xu 2663f8718e HHH-13802 revert back @todo 2020-01-06 07:09:05 -06:00
Nathan Xu 3df0fcefa4 HHH-13802 fix javadoc warnings 2020-01-06 07:09:05 -06:00
Davide D'Alto 6cf7fdaa97 HHH-13759 Small refactoring for PersistentAttributeTransformer
This change makes it easier to identify where we behave differently
  because we are dealing with a class annotated with @MappedSuperclasss.
2019-12-13 14:56:51 +00:00
Davide D'Alto 57a45dab19 HHH-13579 Add comment to InlineDirtyChekingHandler 2019-12-13 14:56:51 +00:00
Davide D'Alto 0251473c87 HHH-13759 Additional test cases 2019-12-13 14:56:51 +00:00
Andrea Boriero 0dea8319d4 HHH-13759 - Support for private Embedded in MappedSuperclass 2019-12-13 14:56:51 +00:00
Davide D'Alto c4dc9b0d25 HHH-13704 Make javassist a compile time dependency again
This commit revert some of the changes so that we can release it in a micro
  without breaking application using Javassist.

  In the next minor it should be reverted.
2019-12-13 11:29:40 +00:00
Davide D'Alto b8ffe851a7 HHH-13704 Format imports in EnhancerFileNotFoundTest 2019-12-12 13:50:01 +00:00
Davide D'Alto c3ccc65275 HHH-13704 Test Javassist is not on the classpath 2019-12-12 13:50:01 +00:00
Davide D'Alto 39071a4d39 HHH-13704 Move EnhancerFileNotFoundTest
Tests requiring Javassist are now in a dedicated folder.
2019-12-12 10:33:32 +00:00
Davide D'Alto 2e5892236b HHH-13704 Remove Javassist from ClassFileArchiveEntryHandler
Use Jandex instead.
2019-12-12 10:33:32 +00:00
Davide D'Alto bac88eda53 HHH-13704 Typo: tupizer -> tuplizer 2019-12-12 10:33:32 +00:00
Nathan Xu 3a69b74894 HHH-13456 refactor ForeignGenerator to allow for the possibility of StatelessSession 2019-12-11 17:37:31 -06:00
Nathan Xu 8ce1404754 HHH-13644 fix the NPE by override ProcedureCallImpl's 'getResultStream()' method. 2019-12-11 17:23:22 -06:00
Jan-Willem Gmelig Meyling a6b924ffe7 HHH-9301 Fix test under PostgreSQL 2019-12-05 14:00:01 +00:00
Andrea Boriero 963a516ea8 Revert "HHH-13752 - Test and fix deletion of entities with many-to-many assocations using non-primary keys for join table"
This reverts commit 58dd469e4c.
2019-12-05 12:34:27 +00:00
Andrea Boriero e924d55fdf Revert "HHH-13752 - Deletion of entities with many-to-many assocations using non-primary keys for join table"
This reverts commit 11455f3467.
2019-12-05 12:34:10 +00:00
Gail Badner 99868fb5f9 HHH-13355 : StaleStateException for updates to optional secondary table using saveOrUpdate 2019-12-05 12:05:24 +00:00
Gail Badner 69dad5fda5 HHH-13355 : test case 2019-12-05 12:05:24 +00:00
Gail Badner 6ce7831f77 HHH-13365 : Entities in joined subclass table are not inserted with batch size > 0 using sequence-identity ID generator 2019-12-05 11:36:04 +00:00
Gail Badner 7d11649d99 HHH-13365 : Added test case 2019-12-05 11:36:04 +00:00
Andrea Boriero 11455f3467 HHH-13752 - Deletion of entities with many-to-many assocations using non-primary keys for join table 2019-12-05 10:18:23 +00:00
Christian Beikov 58dd469e4c HHH-13752 - Test and fix deletion of entities with many-to-many assocations using non-primary keys for join table 2019-12-05 10:05:16 +00:00
Andrea Boriero a133aff97f HHH-13608 Fix failing tests 2019-12-05 09:25:32 +00:00
Jason Jijón 7daf67172a HHH-13758 - Limit Handler for SQL server doesn't work with CTE queries with strings literals 2019-12-04 19:38:56 +00:00
Sanne Grinovero 42752ec89d HHH-8901 Missing data cleanup in the new test 2019-12-04 17:44:02 +00:00
Sanne Grinovero 386d77129e HHH-13761 Debug logging of JPA compliance settings didn't log the value of the settings 2019-12-04 16:56:23 +00:00
Sanne Grinovero b9b15245b7 HHH-8901 Some very minor string handling optimisations 2019-12-04 16:37:34 +00:00
Nathan Xu ab9ae43185 HHH-8901 replace "in ()" SQL with "in (null)" in QueryParameterBindingsImpl 2019-12-04 16:05:10 +00:00
Davide D'Alto 4e449dfafa HHH-13764 Test behaviour doesn't change when @Embedded is on the getter 2019-12-03 20:40:53 +00:00
Davide D'Alto 4fb813f39c HHH-13764 Include getter annotations when required for the enhancements 2019-12-03 20:09:09 +00:00
Vlad Mihalcea f08abf3628 HHH-13608 Oracle8iDialect should use CASE_INSENSITIVE pattern matching when checking the statement type 2019-11-25 15:41:33 +00:00
Jan-Willem Gmelig Meyling 21e79125e6 HHH-9301 - Support select variable refs in group by for DBMS dialects that support it
While not strictly compliant with the SQL specification, the MySQL, PostgreSQL and H2 support the use of select aliases in the GROUP BY clause. An obvious benefit is that produced SQL queries will be easier to read, because complex select expressions from aggregrate queries will have to be included in the group by clause as well. These can now simply reference the aliases of the respective columns for the tuple element. However, there is also a functional difference. For function invocations that have parameterized arguments, the query optimizer can't guarantee the that the function result between the selection projection and grouping process are equal. This results in an error because a value is projected which is not grouped by. An example where this for example becomes relevant, is when parameterizing TimeScaleDB's [`time_bucket_gapfill()`](https://docs.timescale.com/latest/api#time_bucket_gapfill-examples) function.

For example, using `time_bucket_gapfill()` one might want to produce a criteria query that produces the following SQL:

```sql
SELECT
    time_bucket_gapfill(?, time, ?, ?) AS ts,
    avg(tg) as tg
FROM iaqmeasurement
GROUP BY ts
ORDER BY ts;
```

When the alias is not used as grouping value, the query will yield an error:

```sql
SELECT
    time_bucket_gapfill(?, time, ?, ?) AS ts,
    avg(tg) as tg
FROM iaqmeasurement
GROUP BY time_bucket_gapfill(?, time, ?, ?)
ORDER BY ts;
```

Of course the parameter values can just be stored in a CTE as well, but I think we should consider support for variable refs in group by for DBMS dialects that support it. This pull request implements the feature equivalently to how its currently done for order by clauses, and only enables the feature for known supported dialects (H2, PostgreSQL and MySQL - based on [https://stackoverflow.com/a/3841804/2104280](https://stackoverflow.com/a/3841804/2104280)).

Jira: https://hibernate.atlassian.net/browse/HHH-9301

Co-authored-by: Sayra Ranjha <S.S.Ranjha@student.tudelft.nl>
2019-11-25 14:57:17 +00:00
Jan-Willem Gmelig Meyling bde7ca974b HHH-12895 - Extra LEFT JOIN generated with @ManyToOne and @JoinTable when projecting
on main entity id
2019-11-25 14:27:57 +00:00
Jan-Willem Gmelig Meyling 473566c50d HHH-13742 - Added additional tests 2019-11-25 12:15:21 +00:00
Jan-Willem Gmelig Meyling 325239353e HHH-13742 - Preliminary fix for HHH-13742 2019-11-21 16:28:49 +01:00
Jan-Willem Gmelig Meyling 8089d8c575 HHH-13742 - Missing from clause with joined inheritance property in association subquery 2019-11-21 15:30:41 +01:00
Andreas Knees be23e167af HHH-13722 Introducing a test case 2019-11-18 14:59:56 +00:00
Sanne Grinovero 7331a58d5e HHH-13722 ArrayStoreException in Constraint.generateName 2019-11-18 14:55:37 +00:00
Gail Badner 76308e8a3e HHH-13737 : Correct log message and fix checkstyle failure 2019-11-14 18:22:01 -08:00
Gail Badner 7d8549d8aa HHH-13737 : Add debug logging 2019-11-14 18:22:01 -08:00
Gail Badner c02011ef40 HHH-13737 : Add test case for HHH-13433 2019-11-14 18:22:01 -08:00
Andrea Boriero 841368175f HHH-13614 Allow the IntegratorProvider to be supplied via its FQN in the JPA persistence.xml 2019-11-14 13:35:09 +00:00
Vlad Mihalcea 52f9a36a6d HHH-13614 Allow the IntegratorProvider to be supplied via its FQN in the JPA persistence.xml 2019-11-14 13:35:09 +00:00
Andrea Boriero f5fb84cfe2 HHH-13705 Enhancement as Proxy with inline dirty checking - flush of an @ManyToOne with an Embedded value having not null properties causes PropertyValueException 2019-11-14 11:31:11 +00:00
Andrea Boriero 842a155615 HHH-13705 Add test for issue
HHH-13705 Add test for issue
2019-11-14 11:31:11 +00:00
Christian Beikov 47c8a89390 HHH-13712 - Test and fix for missing superclass table joins when joining superclass associations 2019-11-14 11:29:01 +00:00
Andrea Boriero 9ddab37748 HHH-13727 H2 database with DATABASE_TO_UPPER=false throws org.h2.jdbc.JdbcSQLSyntaxErrorException: Table sequences not found 2019-11-13 13:57:48 +00:00
Christian Beikov 0c0248d448 Include the WITH clause AST in the FromElement so that column references can be analyzed 2019-11-12 17:47:48 +00:00
Jan-Willem Gmelig Meyling 05e6a41e5f HHH-13670 - Reproducer Missing from clause in query with joined inheritance, regression in 5.4.5 2019-11-12 17:47:48 +00:00
Sanne Grinovero 164e1fc7cc HHH-13687 TenantSchemaResolver not called in integration test after upgrade from 2019-11-12 17:40:59 +00:00
Sanne Grinovero 66515a2e4e HHH-13723 Hint sizing of ArrayList in ResultSetProcessingContextImpl 2019-11-11 10:59:14 +00:00
Scott Marlow a682a7d19c HHH-13433 EntityManager.find() should only check for roll-back-only condition if there is an active JTA transaction, otherwise ORM should throw throw convert( e, lockOptions ) 2019-11-07 20:33:25 -08:00
Gail Badner 0c1df5fc0d HHH-13698 : Hibernate does not recognize MySQL 8 error code 3572 as PessimisticLockException 2019-11-01 10:58:46 -07:00
Gail Badner a7f017c3dc HHH-13307 : On release of batch it still contained JDBC statements using JTA 2019-11-01 10:58:13 -07:00
Gail Badner 1241d35a50 HHH-13307 : Added test 2019-11-01 10:58:13 -07:00
Sanne Grinovero cec7329214 HHH-13700 Configuration property CONNECTION_PROVIDER_DISABLES_AUTOCOMMIT should not be passed to the JDBC connection properties 2019-10-31 23:43:38 +00:00
Sanne Grinovero 2bcb1b0a6d HHH-13654 Reorganize fields and add some comments about this work 2019-10-30 12:27:59 +00:00
Sanne Grinovero f89bf35106 HHH-13654 Make AbstractFlushingEventListener#entitiesByKey also lazily initialized 2019-10-30 12:27:59 +00:00
Sanne Grinovero 6034ece731 HHH-13654 Refactor references to StatefulPersistenceContext#batchFetchQueue 2019-10-30 12:27:55 +00:00
Sanne Grinovero 500819e169 HHH-13654 Defer initialization of StatefulPersistenceContext#entitySnapshotsByKey 2019-10-30 12:27:53 +00:00
Sanne Grinovero f4bf11331b HHH-13654 Defer initialization of StatefulPersistenceContext#collectionsByKey 2019-10-30 12:27:48 +00:00
barreiro 1dd787eaa1 HHH-13446 - Validate mapped-by values got from annotations in bytecode enhancers 2019-10-26 17:53:56 +01:00
Sanne Grinovero b4a8052a15 HHH-13695 DDL export forgets to close a Statement 2019-10-25 16:47:52 +01:00
Sanne Grinovero e5539cc36c HHH-13651 Adding a regression test for the issue 2019-10-24 11:25:17 +01:00
Yosef Yona a5c8a812f5 HHH-13651 Applying hibernate codestyle to PersistentBag 2019-10-24 09:27:23 +01:00
Yosef Yona 2808a75d5c HHH-13651 NPE on flushing when ElementCollection field contains null element 2019-10-24 09:26:51 +01:00
Andrea Boriero 96e7abf80b HHH-13672 The temporary PersistenceContext of a StatelessSession is not cleared after a refresh operation 2019-10-21 12:08:58 +01:00
Andrea Boriero 43402ea51c HHH-13672 Add test for issue 2019-10-21 12:08:58 +01:00
Yoann Rodière cacef1f466 HHH-13680 Upgrade to Byte-buddy 1.10.2 2019-10-21 12:59:29 +02:00
Andrea Boriero f39d96f9fa HHH-13673 Cryptic error when providing import.sql file without a terminal char at the end of each line 2019-10-21 10:17:03 +01:00
Andrea Boriero 8f68a3573e HHH-13673 Add test for issue 2019-10-21 10:17:03 +01:00
Christoph Dreis 3b1e7afb20 HHH-13675 : Optimize PersistentBag.groupByEqualityHash() 2019-10-18 13:28:00 +01:00
Andrea Boriero 1c840f9dd1 HHH-12858 HHH-13432 fix Oracle failing tests 2019-10-18 13:15:48 +01:00
Gail Badner 93a07453f0 HHH-13634 : Fix test case queries to order results 2019-10-17 12:04:19 -07:00
Gail Badner 42de569a37 HHH-13634 : PersistenceContext can get cleared before load completes using StatelessSessionImpl 2019-10-17 09:46:58 -07:00
Gail Badner eccb786ba4 HHH-13634 : Test cases 2019-10-17 09:46:58 -07:00
Yoann Rodière 6cdb0256d4 HHH-13666 Test custom BeforeTransactionCompletionProcess/AfterTransactionCompletionProcess 2019-10-17 15:54:16 +02:00
Yoann Rodière 5c8169ba7c HHH-13666 Re-use the wrapped exception's message upon beforeTransactionCompletion/afterTransactionCompletion failure
For convenience.
2019-10-17 15:54:16 +02:00