Commit Graph

4705 Commits

Author SHA1 Message Date
Vlad Mihalcea 1db476dbd5 HHH-12973 - Inconsistent identity generation when using the default @SequenceGenerator with a database sequence having the increment size of 1 2018-10-08 20:03:25 +03:00
Sanne Grinovero ec21c6df5e HHH-13017 Exception on Service stop isn't logging the full stack 2018-10-08 11:56:38 +01:00
Davide Angelocola 7ff7eec783 HHH-12928 Remove vestigial 'naturalIdTypes' field
naturalIdTypes is unused since 3800a0e695
2018-10-06 19:40:02 +01:00
Fabio Massimo Ercoli a189ac3220 HHH-13014 Expose resolveClassLoadingStrategy as spi 2018-10-06 19:25:23 +01:00
Sanne Grinovero cced0ad568 HHH-13015 Optimise loading of EntityCopyObserver implementation 2018-10-05 22:58:28 +01:00
Jan-Willem Gmelig Meyling 415fcfd048 HHH-13000 - Fix for refreshing entities under PESSIMISTIC_WRITE lock 2018-10-05 12:40:08 +02:00
Gail Badner 6f5b1e5543 HHH-11209 : Test cases
HHH-11209 : NullPointerException in EntityType.replace() with a PersistentBag

HHH-11209 : Add test for merging a detached collection with queued operations

HHH-11209 : Throw UnsupportedOperationException if a detached collection with queued operations is merged

HHH-11209 : Ignore queued operations when merging a detached collection with queued operations; add warnings

HHH-11209 : Fix typo in comment
2018-10-04 14:28:37 -07:00
Guillaume Smet 439ce293da HHH-12989 Make the test prove that everything is really working as expected 2018-10-03 10:20:38 +02:00
carnusj d922452307 HHH-12989 Support heterogeneous collections passed to JPA's Expression#in() 2018-10-03 10:20:37 +02:00
Guillaume Smet 63b5df4096 HHH-13005 Upgrade to ByteBuddy 1.9.0 2018-10-02 14:36:02 +02:00
Sanne Grinovero 97b49349ad HHH-13003 Skip processing of empty resource names defined for hibernate.hbm2ddl.import_files 2018-10-01 23:12:56 +01:00
Jonathan Bregler 4b19bdc619 HHH-12995: Querying DECIMAL columns via Double fields can lead to precision loss on SAP HANA
- add new configuration parameter hibernate.dialect.hana.treat_double_typed_fields_as_decimal
2018-10-01 11:30:24 +03:00
Guillaume Smet 6e9c1893a1 HHH-12939 - Database name not quoted at schema update 2018-10-01 11:19:30 +03:00
Vlad Mihalcea 01bf67e4b8 HHH-12982 - Generify Hibernate#unproxy 2018-10-01 07:51:24 +03:00
Vlad Mihalcea 340618c9a0 HHH-12988 - DST is ignored when saving a LocalTime with hibernate.jdbc.time_zone=UTC
- Add test to prove how the underlying JDBC Driver binds the Time for a given TimeZone
2018-09-28 11:02:11 +03:00
Губанов Станислав 3c3b8f9375 HHH-11771 - @Id annotation ignored with @MappedSuperclass inheritance 2018-09-27 14:57:53 +03:00
Vlad Mihalcea f21c8c2927 HHH-12968 - Flush is not flushing inserts for inherited tables before a select within a transaction
Extract IdentityGenerator batch support validation logic
2018-09-26 08:22:02 +03:00
Vlad Mihalcea 5a2f12a9a8 HHH-12653 - Throw MappingException if both @MappedSuperclass and @Inheritance are used 2018-09-24 17:28:50 +03:00
Javad Alimohammadi 9dfdb2b471 HHH-12968 - Flush is not flushing inserts for inherited tables before a select within a transaction 2018-09-24 13:51:13 +03:00
Vlad Mihalcea 48909896b6 HHH-12974 - Document @OnDelete behavior in regards to disabling the Persistence Context entity removal cascading event 2018-09-20 11:33:26 +03:00
Yanming Zhou a9fd8efe33 HHH-12977 - Update latest dialect for MySQL 2018-09-19 11:01:53 +03:00
Jan-Willem Gmelig Meyling b25bfd79f4 HHH-12675 - Respect inverse property for JoinedSubclassEntityPersister 2018-09-13 17:57:56 +02:00
Vlad Mihalcea 9d8cb3dbb7 Add test to check if private constructors lead to meaningful error messages when using bytecode enhancement 2018-09-10 13:40:59 +03:00
Jonathan Bregler 69c03c63f3 HHH-12963: HANA dialect doesn't set internal configuration for use_unicode_string_types correctly 2018-09-10 11:33:38 +03:00
Jonathan Bregler d8be295740 HHH-12961 Update HANA dialects Javadoc
- Fix the links
- Add some more information
2018-09-07 16:23:40 +02:00
del65 90b71f6895 HHH-12966 Do not include loggers in statistics beans
This way, you don't need to add the JBoss logging dependencies.
2018-09-07 16:19:30 +02:00
del65 8293d6dce3 HHH-12966 Make CacheableDataStatistics serializable
This is necessary to access statistics over JMX.
2018-09-07 16:19:18 +02:00
Vlad Mihalcea 83191633ec HHH-12855 - Add query plan compilation statistics 2018-09-07 11:17:48 +03:00
Vlad Mihalcea eab5fb2868 HHH-12952 - Document the hibernate.statistics.query_max_size behavior and explain its implications 2018-09-06 14:36:42 +03:00
Sanne Grinovero 50990dd76b HHH-12954 Refactor boot/model/relational/Database to avoid holding references to MetadataBuildingOptions 2018-09-05 10:51:46 +01:00
Sanne Grinovero 4eb726ef4c HHH-12950 Use the Annotation Processor specific scopes of Gradle 2018-09-04 23:02:26 +01:00
Sanne Grinovero 935601e29d HHH-12948 Allow using a custom SessionFactoryOptionsBuilder to create a SessionFactoryBuilderImpl 2018-09-04 16:28:41 +01:00
Sanne Grinovero 8cf00ad3fd HHH-12947 Remove need for BootstrapContext where it's unused 2018-09-04 16:28:41 +01:00
Vlad Mihalcea b3c2c2fe47 HHH-12933 - Generate_statistics grows QueryStatistics ConcurrentHashMap indefinitely 2018-09-03 17:25:31 +03:00
Vlad Mihalcea 440a2ef490 HHH-12929 - Add AtomikosJtaPlatform implementation 2018-09-03 17:17:09 +03:00
Guillaume Smet 04b3230e0f HHH-12920 Fix a debug message causing an exception at debug level 2018-09-03 15:48:14 +02:00
Barnaby Court 5e747b7057 HHH-12927 - Immutable warning issued if immutable entities are referenced but not changed during update 2018-09-03 12:28:34 +03:00
Vlad Mihalcea 361587c858 HHH-12943 - SQL Server UNIQUEIDENTIFIER type uses an uppercase UUID String representation 2018-09-03 10:25:49 +03:00
Guillaume Smet 4c5ab83756 HHH-12932 Execute ByteBuddy code requiring privileges inside a privileged block 2018-08-28 17:34:54 +02:00
Guillaume Smet d195ce03bc HHH-12931 Revert "HHH-12542 - Add necessary privileged action blocks for SecurityManager used on WildFly."
This reverts commit 15a59a1a19.
2018-08-28 17:34:32 +02:00
Sanne Grinovero fb54090329 HHH-12919 Interning of strings for EntityReferenceAliases 2018-08-23 00:04:29 +02:00
Sanne Grinovero 096b436f3d HHH-12918 Interning of strings for Formula and Column exctraction templates 2018-08-23 00:04:28 +02:00
Sanne Grinovero 4fa0491341 HHH-12917 Interning of strings for Filter definitions 2018-08-23 00:04:28 +02:00
Carlos Aristu 6911efdfb7 HHH-12921 - Hibernate Connection Pool Validation Thread should be defined as a daemon Thread
HHH-12922 - Hibernate Connection Pool Validation Thread should have a name
2018-08-22 20:28:26 +03:00
Vlad Mihalcea 9f1fde7127 HHH-12915 - Concurrency issue within org.hibernate.internal.SessionFactoryImpl 2018-08-21 17:45:58 +03:00
Sanne Grinovero 710662200b HHH-12914 Avoid need to create a Proxy to implement org.hibernate.engine.jdbc.BlobProxy 2018-08-16 10:37:24 +01:00
Dmitry Matveev 7ee3001565 Fix a typo in a variable name 2018-08-15 18:31:38 +02:00
Vlad Mihalcea fc667eca2d HHH-12532 - JPA Native Query with ordinal parameter not working
Add test to prove the issue does not replicate
2018-08-15 13:57:17 +03:00
Guillaume Smet 7059146c25 Fix the previous commit to reference #getMaxResults() 2018-08-14 17:01:21 +02:00
Sande Gilda be745cef98 Fix Javadocs comments for Query.getHibernateMaxResults() method 2018-08-14 16:57:58 +02:00
Sanne Grinovero f7b75e4c62 HHH-12911 Removing unused field from org.hibernate.mapping.Collection 2018-08-14 10:53:42 +01:00
Gail Badner 770ae50e8b HHH-12875 HHH-12882 : Drop tables in proper order in test setup methods 2018-08-13 23:26:37 -07:00
Gail Badner a5fa213658 HHH-12875 : Remove "where" clause for Top used by MultiTableTest;
After HHH-12875 is fixed, the "where" clause causes
            MultiTableTest to fail due to HHH-12016
2018-08-13 21:49:45 -07:00
Gail Badner a3cecf3411 HHH-12875 : Add comments to clarify how Collection#setWhere and #setManyToManyWhere are used 2018-08-13 17:42:54 -07:00
Gail Badner 27937e5627 HHH-12875 HHH-12882 : Class level where="..." clause hbm.xml mappings is not enforced on collections of that class; add parentheses when where clauses get combined in a conjunction (hbm and annotations)
HHH-12882 : correct assertions in ParentChildTest
2018-08-13 17:42:54 -07:00
Gail Badner cdf5e45514 HHH-12875 HHH-12882 : test cases 2018-08-13 17:42:54 -07:00
Gail Badner 10826d8f3a HHH-12875 : Class level where="..." clause in hbm.xml mappings is not enforced on collections of that class 2018-08-13 17:42:54 -07:00
Gail Badner eef8974877 HHH-12875 : test cases 2018-08-13 17:42:54 -07:00
Guillaume Smet 8e6fcce523 HHH-12905 Improve the error message and update the tests accordingly
Also fix a loose end in the MySQL test: at least with MariaDB, using
a bit(1) as datatype for boolean does not work: it always return true
even if you set it to 0. Using either boolean or tinyint(1) solves
the issue.

As I'm not sure older versions of MySQL supports a real boolean type I
used a tinyint(1).
2018-08-14 00:41:44 +02:00
Guillaume Smet 764b1826bb HHH-12905 Fix error message tested in MySQL and PostgreSQL tests 2018-08-13 18:43:25 +02:00
Roland Kurucz cc1ffbaaa0 HHH-12905 - Bind value [null] was not of specified type in StoredProcedureQuery 2018-08-13 18:03:45 +02:00
Sanne Grinovero 4a4ecc434b HHH-12904 Removing some dead code in InFlightMetadataCollectorImpl and MetadataImpl 2018-08-13 16:47:11 +01:00
Guillaume Smet 34f58e91c6 HHH-12907 Avoid creating too many ByteBuddy objects
This commit should reduce the garbage collection pressure as reported at
https://github.com/raphw/byte-buddy/issues/515.
2018-08-13 14:37:00 +02:00
Guillaume Smet a934a03a20 HHH-12906 Add tests 2018-08-13 11:49:04 +02:00
Florian Beaufumé 37d430df5e HHH-12906 Used the correct attribute in getAllCollectionRoles() 2018-08-13 11:49:04 +02:00
Fernando Guardiola 0ab6c1178b HHH-12770 - Document @NotFound(action = NotFoundAction.IGNORE) and FetchType.LAZY behavior 2018-08-13 08:36:51 +03:00
Guillaume Smet 20c6f15af2 HHH-10782 Add a comment about what clearing the query plan cache means 2018-08-09 15:53:06 +02:00
Guillaume Smet ea859736c2 HHH-12896 Minor memory improvements in HQLQueryPlan 2018-08-08 22:24:48 +01:00
Sanne Grinovero fa5f592fb9 HHH-12894 Simplify code of StandardSessionFactoryServiceInitiators 2018-08-08 10:59:42 +01:00
Vlad Mihalcea 870a033a52 HHH-12361 - In the User Guide, omit constructors and equals/hashCode for brevity 2018-08-08 10:20:07 +03:00
Chris Cranford 8bd79b29cf HHH-12871 - Fix test that uses dynamic-map entities which failed. 2018-08-07 10:52:24 -04:00
Chris Cranford b9e0449602 HHH-12871 - Fix metamodel to properly exclude dynamic-map based types when using ignoreUnsupported. 2018-08-07 10:52:24 -04:00
Chris Cranford 6a594712db HHH-12871 - Added test cases. 2018-08-07 10:52:24 -04:00
Guillaume Smet b66df9a352 HHH-12196 Implement a naive limit handler for Sybase
It doesn't manage all the corner cases but it should be safe enough as
only triggered in the simple cases.
2018-08-03 17:23:44 +02:00
Guillaume Smet 5d965f8e15 HHH-12883 Fix NaturalIdDereferenceTest with Sybase
With Sybase (and maybe others), the cross join operator is ", " so
only counting the " join " occurrences does not work.
2018-08-03 15:28:14 +02:00
Guillaume Smet 07e21cf66e HHH-12880 LockModeTest hangs indefinitely with Sybase due to HHH-12847 2018-08-02 14:32:19 +02:00
Sanne Grinovero c108f48674 HHH-12879 Remove unnecessary constants in StandardDialectResolver 2018-08-02 10:56:45 +01:00
Guillaume Smet 719e5d0c12 HHH-12847 Consider LockOptions for getting the LockMode
Otherwise, it leads to null pointer exceptions.
2018-08-02 00:11:42 +02:00
Guillaume Smet 6a3ed33627 HHH-12857 Reuse the TypePool created in EnhancerImpl 2018-08-01 23:41:28 +02:00
Guillaume Smet dff202ded9 HHH-12857 Rewrite getDeclaredMethod() calls in static initializers
We rewrite them to run them as privileged blocks.
2018-08-01 23:41:06 +02:00
Guillaume Smet d95b36ffb6 HHH-12857 Avoid using a static ByteBuddy object
In the end, it does not change anything as the BytecodeProvider is still
static but it helps as a general cleanup for the following commits.
2018-08-01 18:01:20 +02:00
Guillaume Smet 349bd2649c HHH-12835 In the end, remove the assertion
It's not really compatible with batch loading, padding and a couple of
other corner cases.

And I don't think it has a lot of value by itself.
2018-08-01 16:07:49 +02:00
Andrea Boriero 725da274fd HHH-12849 - QuotedIdentifierTest fails with ORA-04043 on Oracle12c 2018-08-01 13:42:10 +02:00
Guillaume Smet bee200a84c HHH-12835 Fix an incorrect assertion in BatchFetchQueueHelper 2018-08-01 11:44:19 +02:00
Guillaume Smet d85831f543 HHH-12848 Restore the original Oracle LimitHandler
Oracle does not support using the SQL 2008 standard limit handler with
FOR UPDATE clauses. Thus we need to get back to the old limit handler.
2018-08-01 11:44:19 +02:00
Guillaume Smet e84aae23f0 HHH-10603 Avoid doing distinct and comparisons on byte arrays
They are stored as blobs starting with Oracle12cDialect and distinct and
comparisons on blobs are not supported.

Some tests were adapted, some are now skipped with Oracle12cDialect.
2018-08-01 11:43:32 +02:00
Guillaume Smet f43f668fb8 HHH-12730 Remove the deprecated methods previouly added
We don't need them as everything is now dealt with the transformer.
2018-08-01 11:32:02 +02:00
Guillaume Smet 0ada118635 HHH-12730 Add missing @Overrides 2018-08-01 11:32:02 +02:00
Guillaume Smet 6d7f7878e1 HHH-12730 Add deprecated constructors taking a SessionImplementor 2018-08-01 11:32:02 +02:00
Gail Badner 19388972dc HHH-12730 : User types built using 5.1 are not binary compatible with 5.3 2018-08-01 11:32:02 +02:00
Guillaume Smet d30e461fa1 HHH-12868 Fix NPE when loading entity with CacheConcurrencyStrategy.NONE 2018-07-31 14:52:15 +02:00
Sanne Grinovero d67278a6d2 HHH-12872 Reduce memory consumption of XSD schema validations 2018-07-31 12:48:10 +02:00
Andrea Boriero 7da105be0a HHH-12861 SchemaUpdate doesn't work with Sybase 2018-07-31 10:43:54 +01:00
Yoann Rodière dc42deafcb HHH-12492 Qualify references to columns from the target table in subqueries in DELETE/UPDATE queries
Don't try to duplicate the logic from
org.hibernate.hql.internal.ast.tree.FromElementType#toColumns(java.lang.String, java.lang.String, boolean, boolean)
in other classes, it's complex enough and already seems to handle all
the cases we might encounter.

In this specific case, we want the table name to be used to qualify
column names, because the target table doesn't have any alias (it's not
supported by every version of every RDBMS), and not qualifying columns
at all may lead to a confusing statement, in particular if tables
referenced in the subquery contain columns with the same name.
Since we use aliases for every other table in the query, referencing the
table should not lead to any conflict.
2018-07-27 15:02:55 +02:00
Yoann Rodière 48f59e891f HHH-12492 Test HQL Delete query with a subquery referencing the parent query's aliases 2018-07-27 15:02:48 +02:00
Martin Simka 036ea775da HHH-12863 SchemaUpdateTest should be skipped with Sybase 2018-07-27 14:55:49 +02:00
Jan-Willem Gmelig Meyling ea77c1fb4b HHH-12775 - Avoid join on natural id property access 2018-07-23 21:37:49 +02:00
Alvaro Esteban Pedraza b94b126141 HHH-12763 - Log which JtaPlatform implementation is used at startup on info level 2018-07-23 18:13:28 +02:00
Sanne Grinovero 5164d8b5b3 HHH-12841 DriverManagerConnectionProviderImpl: implement lazy Thread starting and fix visibility guarantees 2018-07-23 18:11:38 +02:00
Martin Simka 8be7aaf1be HHH-12851 ConverterTest fails with SQL Server depending on collation 2018-07-23 18:08:24 +02:00
Chris Cranford 333c190c82 HHH-12846 - Merge cascade of collection fails when orphan removal enabled with flush mode commit. 2018-07-23 11:00:55 -04:00
Martin Simka 89844c50de HHH-12844 Fix HbmWithIdentityTest with Oracle 2018-07-20 14:03:05 +02:00
Martin Simka c03cb7c2c8 HHH-12843 Fix CreateDeleteTest and FlushIdGenTest with Oracle 2018-07-20 13:22:23 +02:00
Sanne Grinovero 628b23faaa HHH-12840 Simplify implementation of LocalObjectUuidHelper 2018-07-20 10:33:21 +01:00
Martin Simka d08cc00628 HHH-12839 Fix EntityProxySerializationTest with Oracle 2018-07-20 11:29:11 +02:00
Guillaume Smet 5d350f19b4 HHH-7404 HHH-6776 Add tests to prevent regressions
The issues have apparently already been fixed but let's add the tests
present in the issue to prevent regressions.
2018-07-20 11:27:32 +02:00
Guillaume Smet cae8c12bbc HHH-12666 Only run the tests with H2
We don't need to run them with all our dialects: we just need to check
the mechanism works correctly.

At least TransactionExceptionHandlingTest fails with MariaDB so better
be safe.
2018-07-20 11:26:25 +02:00
Guillaume Smet 9fde3e08f0 HHH-12832 Make SchemaUpdateHaltOnErrorTest use the CustomRunner
Otherwise @SkipForDialect doesn't work.
2018-07-20 10:37:06 +02:00
Martin Simka 188760250a HHH-12838 Fix AndNationalizedTests with DB2
This is consecutive to the changes made in HHH-12753.
2018-07-20 10:25:46 +02:00
Gail Badner 44ecb96e2d HHH-12666 : Add test 2018-07-20 10:08:54 +02:00
Gail Badner a790096965 HHH-12666 : Add documentation 2018-07-20 10:08:34 +02:00
Gail Badner 9bb9e4bc38 HHH-12666 : Added more tests 2018-07-20 10:08:24 +02:00
Yoann Rodière 88fb16e5c9 HHH-12666 Test the current behavior of exception conversion on persist/save/merge/flush/etc.
Original tests by Gail Badner:
09aa6fbce2
2018-07-20 10:05:53 +02:00
Gail Badner 8ef0ca9a13 HHH-12666 : Add an option for restoring 5.1 native exception handling 2018-07-19 23:48:23 -07:00
Martin Simka 9286f9147b HHH-12833 Fix UniqueConstraintDropTest with DB2 2018-07-19 16:05:35 +02:00
Chris Cranford ad5f96c613 HHH-12753 - Remove an override that was not relevant to this jira. 2018-07-19 10:01:16 -04:00
Chris Cranford 005d5b7c74 HHH-12753 - Fix Nationalized CLOB test failures on DB2.
Force column read/write to use non-nationalized driver methods since the driver does
not implement the nationalized equivalents.
2018-07-19 09:54:13 -04:00
nikowitt c17a83cc0d HHH-12830 Improve error message when a method is called in a non active
transaction
2018-07-19 15:22:31 +02:00
Guillaume Smet cc600abf38 HHH-12832 Skip SchemaUpdateHaltOnErrorTest and al. with DB2
DB2 has no issue with reserved keywords in the CREATE TABLE clause so
let's skip these tests.

There is very little value to test them for every dialect anyway.
2018-07-19 15:04:27 +02:00
Guillaume Smet 2d318b76b2 HHH-12822 Skip "case when" tests requiring casts for DB2 2018-07-19 15:04:27 +02:00
Guillaume Smet de4c356189 HHH-12827 Define a numeric type as decimal for DB2
DB2 converts the numeric type to decimal and returns Types.DECIMAL for a
numeric. We change the type name used so that we have a match when
comparing the type names as last resort.
2018-07-19 15:04:27 +02:00
Guillaume Smet 19d31ea94d HHH-12815 Remove the zeroDateTimeBehavior option
It's useless for this test and it causes compatibility issues.
2018-07-19 13:26:52 +02:00
Guillaume Smet 51c67310f7 HHH-12791 Cache the Component type to avoid generating one proxy per call
While Javassist only generates one proxy as the name is stable,
ByteBuddy uses random names and thus generates a new proxy for every
call, leading to the generation of 18 different proxies for the other
test of the test class.

We can't do better than using a volatile/synchronized pattern as the
Component is not fully initialized in the constructor.

Maybe we could take the risk of admitting that the getType() method is
called at least once before we pass the element to a multi-threaded
environment but that's a bet I don't want to take alone.
2018-07-19 10:01:22 +02:00
Chris Cranford 3fe7d6e13e HHH-12826 - Persist cascade of collection fails when orphan removal enabled with flush mode commit. 2018-07-18 18:08:55 -04:00
Chris Cranford 15a59a1a19 HHH-12542 - Add necessary privileged action blocks for SecurityManager used on WildFly. 2018-07-18 17:18:51 +02:00
Martin Simka 8df12b7d0a HHH-12825 CriteriaHQLAlignmentTest.testCountReturnValues fails on databases that don't support tuple distinct counts because it expects wrong exception 2018-07-18 16:02:52 +02:00
Martin Simka 3f468facd0 HHH-12824 ASTParserLoadingTest.testComponentNullnessChecks fails with DB2 because it uses legacy-style query parameter 2018-07-18 15:59:39 +02:00
Martin Simka 393129fd1d HHH-12823 CompositeIdTest.testDistinctCountOfEntityWithCompositeId fails on databases that don't support tuple distinct counts because it expects wrong exception
The SQLGrammarException is now wrapped in a PersistenceException, we
should take that into account.
2018-07-18 14:38:07 +02:00
Guillaume Smet 92f4758889 HHH-12718 Add a comment about the true meaning of interceptorHandledDirtyCheck 2018-07-17 11:56:50 +02:00
Yoann Rodière 7134e8b968 HHH-12718 Avoid double negations in DefaultFlushEntityEventListener#dirtyCheck 2018-07-17 11:56:26 +02:00
Yoann Rodière 74aa03881a HHH-12718 Compute dirtiness using whatever method is appropriate after a flush event interception
We used to have a simpler version of the dirtyCheck() method after an
interception, but that's not enough.
2018-07-17 11:52:33 +02:00
Yoann Rodière a9f743069b HHH-12718 Test that dirtiness strategies are invoked a second time after a flush interceptor changes the entity state
Bytecode enhancement is harder to test, so I didn't add a test for that,
but since bytecode enhancement dirty checking is called exactly at the
same place, if one works, the other should, too.
2018-07-17 11:52:33 +02:00
Ulrich Bestfleisch c3c322d91b HHH-12718 - Entity changes in @PreUpdate callback are not persisted when lazy loading is active for more than one field 2018-07-17 11:52:03 +02:00
Yoann Rodière 523b29af04 HHH-12795 Remove duplicate code from SessionImpl
SessionImpl.initQueryFromNamedDefinition calls its super implementation
AbstractSharedSessionContract.initQueryFromNamedDefinition, which
already does a lot of the work performed in
SessionImpl.initQueryFromNamedDefinition.
The only difference is that SessionImpl uses hints to set values on the
query, whereas AbstractSharedSessionContract uses direct calls to
setters. But that should produce the same result, since setHint() just
delegates to the setters.

Only one thing was done in SessionImpl but not in
AbstractSharedSessionContract: lock mode handling.
I left it in SessionImpl since moving it to the superclass would also
affect other subclasses such as StatelessSession or OGM sessions, and I
certainly don't want to change any behavior without further
investigation.
2018-07-17 11:06:59 +02:00
Yoann Rodière a0e6d86052 HHH-12795 Test the flushMode attribute of @NamedQuery and @NamedNativeQuery 2018-07-17 11:06:59 +02:00
Yoann Rodière a9fdc1239a HHH-12795 Use the exact flush mode specified in @NamedQuery/@NamedNativeQuery when instantiating named queries
... instead of using an approximation in terms of JPA flush mode.
2018-07-17 11:06:59 +02:00
Guillaume Smet fa02d1c65f HHH-12811 Add @Target annotations to @CreationTimestamp and @UpdateTimestamp 2018-07-17 10:59:06 +02:00
Guillaume Smet 208e789bb1 HHH-12786 Improve the basic proxy interceptor
Apart from cosmetic changes, we were testing in the equals() method that the
instance == the proxied object which will always be true.

We should use the argument of the equals() method instead to do the
comparison.

And we can do the comparison on the instance, instead of requiring
passing the proxiedObject into the interceptor.
2018-07-16 17:34:48 +02:00
Guillaume Smet f722db367e HHH-12786 Only define the default constructor
We don't need the others, better not create them in the proxy.
2018-07-16 17:34:48 +02:00
Guillaume Smet ed53fd5346 HHH-12786 Allow to call methods when the interceptor is not set yet
Typically, if the constructor calls instrumented methods, the
interceptor is not defined yet and we get a NPE.
2018-07-16 17:34:48 +02:00
Guillaume Smet 3759f776ab HHH-12786 Properly indent the Bytebuddy DSL
It helps to understand what exactly these calls do.
2018-07-16 17:34:48 +02:00
Guillaume Smet f274db28f6 HHH-12804 Don't mock Map in CollectionBinderTest
Apparently, Mockito + ByteBuddy are unable to mock Map on JDK 11.

It might be solved in the future but there's no point in doing it so
let's avoid it.
2018-07-14 11:45:56 +02:00
Guillaume Smet 99b4f3c24a HHH-12801 Adjust the assertion to the new message generated by JDK 11 2018-07-14 11:43:16 +02:00
Guillaume Smet 5ec70ec22e HHH-12800 Use a class loading strategy suitable for the JDK used
The previously chosen strategy used misc.Unsafe which is not possible
anymore with JDK 11.
2018-07-14 11:43:16 +02:00
Gail Badner 9202a5a11d HHH-12802 : Fix test case to recover from exception properly 2018-07-13 15:51:39 -07:00
Gail Badner 926ad5a133 HHH-12802 : Hibernate does not thrown an exception when more than entity is loaded with the same ID 2018-07-13 14:45:11 -07:00
Gail Badner 2ef777e3fe HHH-12802 : test case 2018-07-13 14:43:53 -07:00
Vlad Mihalcea cf3622f64c HHH-12771 - Caused by: java.lang.UnsupportedOperationException: Cache provider [org.hibernate.cache.ehcache.internal.EhcacheRegionFactory@3271ec2a] does not support `transactional` access 2018-07-13 09:40:48 +03:00
Vlad Mihalcea 414a0dd75d HHH-12787 - SessionJdbcBatchTest hangs with DB2 2018-07-12 13:39:10 +03:00
Fabio Massimo Ercoli 3d1d1d2d98 HHH-12793 Upgrade Karaf, pax-exam and reenable the OSGi tests 2018-07-12 12:11:53 +02:00