Commit Graph

9237 Commits

Author SHA1 Message Date
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 fa77c29b3a HHH-12869 Do not check the cacheManager is not null when creating it 2018-08-01 11:44:19 +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
Karel Maesen 2cd4608f9f HHH-12608 Support for ST_Dwithin() in DB2 2018-07-21 17:15:37 +02: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 f8964847dd HHH-12829 Update the Ehcache documentation to use the new short names 2018-07-19 10:23:07 +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
Guillaume Smet ac11b7fd8c HHH-12828 Make ScannerTests more stable
In a shared containerized environment like Travis, it's not obvious that
the second read will be faster than the first one.

And indeed, the test often fails.

There's no real value in testing that, we are just testing I/O, and the OS
cache.
2018-07-19 09:59:48 +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 3d93073b83 HHH-12826 - Added test case. 2018-07-18 18:06:58 -04:00