Commit Graph

4620 Commits

Author SHA1 Message Date
Guillaume Smet 7047119061 HHH-13059 Add test
(cherry picked from commit 502fd78c45)
2019-01-22 16:38:48 +01:00
Gail Badner 4137181bb6 HHH-13084 HHH-13114 : Correct test case using reserved word
(cherry picked from commit fa5b632f4e)
2018-12-18 15:16:59 -08:00
Gail Badner b198a42db1 HHH-13084 HHH-13114 : Add test cases
HHH-13084 HHH-13114 : Refactor test cases

HHH-13084 HHH-13114 : Add test cases

HHH-13084 HHH-13114 : Refactor test cases

HHH-13084 HHH-13114 : Add failing test case

(cherry picked from commit 346b3c7f3e)

HHH-13084 HHH-13114 : Bugs querying entity with non-ID property named 'id'

HHH-13084 HHH-13114 : Query 'select count(h) from Human h' fails if a subclass has a non-Id property named 'id'

HHH-13084 HHH-13114 : Update hibernate-core/src/main/java/org/hibernate/hql/internal/ast/tree/FromElement.java

Co-Authored-By: dreab8 <dreborier@gmail.com>

HHH-13084 HHH-13114 - Fix FromElementType method name

HHH-13084 HHH-13114 : Correct generated column names

(cherry picked from commit 7316307d0e)
2018-12-18 09:23:06 -08:00
Guillaume Smet 91ede032c9 HHH-12555 Fix merging of lazy loaded blobs/clobs/nclobs
It's better to avoid pushing UNFETCHED_PROPERTY to the types as it
requires all the types to take it into account.

TypeHelper looks like the only sensible caller that needs change.

(cherry picked from commit 1af878166f)

HHH-12555 Add tests

(cherry picked from commit 4e05953240)

HHH-12555 : Update test to check results

(cherry picked from commit ca6dc226eb)

HHH-12555 : Remove code in LobMergeStrategy implementations that copied original Lob when target is null

(cherry picked from commit 4d0b5dc184)

HHH-12555 Add a DialectCheck for NClob support

(cherry picked from commit 855f34c771)

HHH-12555 Disable NClob test for dialects not supporting NClob

(cherry picked from commit 98249af058)
2018-12-18 09:20:27 -08:00
Andrea Boriero 6f636a8c0b Add 'Use {@link #getTransactionStartTimestamp()}' to SharedSessionContractImplementor#getTimestamp deprecated comment 2018-11-05 16:20:32 +00:00
Guillaume Smet 023db8de0e HHH-12935 Make ExportIdentifierTests extend BaseUnitTestCase 2018-10-16 23:58:10 +02:00
Gail Badner 6257846943 HHH-13011 Fix the tests: use int column in where clause 2018-10-16 23:58:10 +02:00
Guillaume Smet 8f13d226a4 HHH-12935 Require sequence support in ExportIdentifierTests 2018-10-16 23:58:10 +02:00
Guillaume Smet 91d94c7e69 HHH-13011 Fix the tests: use a boolean query 2018-10-16 23:58:10 +02:00
Guillaume Smet b964aae339 HHH-13011 Fix the tests: use a boolean query 2018-10-16 23:58:10 +02:00
Gail Badner 55e430dd43 HHH-13011 : test cases 2018-10-16 15:13:10 +02:00
Gail Badner b5d3826604 HHH-13011 : Add option enabling/disabling use of an entity's mapped where-clause when loading collections of that entity 2018-10-16 15:13:10 +02:00
Gail Badner 98ae615bbe HHH-12104 : Test cases using annotations and hbm.xml 2018-10-16 15:13:10 +02:00
Guillaume Smet d5d1f0781a HHH-12937 Only run the tests with H2Dialect 2018-10-16 14:23:17 +02:00
Gail Badner 5ba82d6691 HHH-12935 : Constraint and AuxiliaryDatabaseObject export identifiers are not qualified by schema or catalog
(cherry picked from commit ba80f0b3dc)
2018-10-16 04:01:30 -07:00
Gail Badner 320772e5ee HHH-12935 : test cases
(cherry picked from commit e3726bc4db)
2018-10-16 04:01:09 -07:00
Gail Badner 8da2daa4f1 HHH-12937 : Remove duplicated line
(cherry picked from commit ae2da95f55)
2018-10-15 23:36:58 -07:00
Gail Badner faabcafa81 HHH-12937 : Where clause for collections of basic, embeddable and "any" elements is ignored when mapped using hbm.xml
(cherry picked from commit eb14b8de6f)
2018-10-15 23:36:44 -07:00
Gail Badner 7c4d18404c HHH-12937 : test cases
(cherry picked from commit da50076afc)
2018-10-15 23:36:34 -07:00
Gail Badner 83a9adbdb8 HHH-13027 : org.hibernate.ejb.HibernatePersistence can no longer be used as a persistence provider name 2018-10-12 23:43:47 +01:00
Gail Badner 15924cb466 HHH-13027 : test case 2018-10-12 12:40:28 -07:00
Guillaume Smet 5f92f028c4 HHH-12784 Fix a regression in Javassist support 2018-09-13 11:21:14 +02:00
Jonathan Bregler 00ec2e4fde HHH-12961 Update HANA dialects Javadoc
- Fix the links
- Add some more information
2018-09-07 16:24:52 +02:00
Guillaume Smet e8fcbe29c3 HHH-12920 Fix a debug message causing an exception at debug level 2018-09-03 15:48:36 +02:00
Guillaume Smet b04de4c9f7 HHH-12932 Execute ByteBuddy code requiring privileges inside a privileged block 2018-08-28 00:43:46 +02:00
Guillaume Smet 56a29af496 HHH-12931 Revert "HHH-12542 - Add necessary privileged action blocks for SecurityManager used on WildFly."
This reverts commit d24685de67.
2018-08-27 17:38:07 +02:00
Dmitry Matveev b8b0fbc13c Fix a typo in a variable name 2018-08-15 18:32:50 +02:00
Guillaume Smet 5ed5656c29 Fix the previous commit to reference #getMaxResults() 2018-08-14 17:01:53 +02:00
Sande Gilda 70381b8c84 Fix Javadocs comments for Query.getHibernateMaxResults() method 2018-08-14 16:58:32 +02:00
Guillaume Smet 5b826c9062 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 13:17:24 +02:00
Guillaume Smet fdfef4f5ce HHH-12905 Fix error message tested in MySQL and PostgreSQL tests 2018-08-14 13:17:24 +02:00
Gail Badner 99b93ae949 HHH-12875 HHH-12882 : Drop tables in proper order in test setup methods
(cherry picked from commit 770ae50e8b)
2018-08-13 23:28:27 -07:00
Gail Badner 9c96641d00 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

(cherry picked from commit a5fa213658)
2018-08-13 22:00:21 -07:00
Gail Badner 69e7132e91 HHH-12875 : Add comments to clarify how Collection#setWhere and #setManyToManyWhere are used
(cherry picked from commit a3cecf3411)
2018-08-13 22:00:11 -07:00
Gail Badner f381490a49 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
(cherry picked from commit 27937e5627)
2018-08-13 21:59:59 -07:00
Gail Badner 70a39d91cb HHH-12875 HHH-12882 : test cases
(cherry picked from commit cdf5e45514)
2018-08-13 21:59:48 -07:00
Gail Badner 22c9b2ba0a HHH-12875 : Class level where="..." clause in hbm.xml mappings is not enforced on collections of that class
(cherry picked from commit 10826d8f3a)
2018-08-13 21:59:39 -07:00
Gail Badner 01243a9b0e HHH-12875 : test cases
(cherry picked from commit eef8974877)
2018-08-13 21:59:28 -07:00
Roland Kurucz f062abe72a HHH-12905 - Bind value [null] was not of specified type in StoredProcedureQuery 2018-08-13 18:04:58 +02:00
Guillaume Smet 7eb0cee178 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 16:27:02 +02:00
Vlad Mihalcea b65121c557 HHH-12361 - In the User Guide, omit constructors and equals/hashCode for brevity 2018-08-13 15:15:49 +02:00
Guillaume Smet 61bdbabf18 HHH-12906 Add tests 2018-08-13 12:05:10 +02:00
Florian Beaufumé cbd141996a HHH-12906 Used the correct attribute in getAllCollectionRoles() 2018-08-13 12:05:10 +02:00
Guillaume Smet ad4978c36a HHH-10782 Add a comment about what clearing the query plan cache means 2018-08-09 15:53:29 +02:00
Chris Cranford 0b17fc3225 HHH-12871 - Fix test that uses dynamic-map entities which failed.
(cherry picked from commit 8bd79b29cf)
2018-08-07 10:53:36 -04:00
Chris Cranford dc49ef6ef4 HHH-12871 - Fix metamodel to properly exclude dynamic-map based types when using ignoreUnsupported.
(cherry picked from commit b9e0449602)
2018-08-07 10:53:28 -04:00
Chris Cranford 9f3b1cfb5b HHH-12871 - Added test cases.
(cherry picked from commit 6a594712db)
2018-08-07 10:53:21 -04:00
Guillaume Smet a6c7733179 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:24:04 +02:00
Guillaume Smet beb623093a HHH-12880 LockModeTest hangs indefinitely with Sybase due to HHH-12847 2018-08-02 14:32:46 +02:00
Guillaume Smet 236033bdaf HHH-12847 Consider LockOptions for getting the LockMode
Otherwise, it leads to null pointer exceptions.
2018-08-02 00:12:11 +02:00
Guillaume Smet 5150fd5d60 HHH-12857 Reuse the TypePool created in EnhancerImpl 2018-08-02 00:10:17 +02:00
Guillaume Smet fdf19f17b4 HHH-12857 Rewrite getDeclaredMethod() calls in static initializers
We rewrite them to run them as privileged blocks.
2018-08-02 00:10:17 +02:00
Guillaume Smet 129530e464 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-02 00:10:17 +02:00
Guillaume Smet c9de4b8ce7 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:16:19 +02:00
Andrea Boriero 7d9ebd262d HHH-12849 - QuotedIdentifierTest fails with ORA-04043 on Oracle12c 2018-08-01 13:42:25 +02:00
Guillaume Smet 0d224e45d6 HHH-12835 Fix an incorrect assertion in BatchFetchQueueHelper 2018-08-01 11:44:53 +02:00
Guillaume Smet 98f46d64e7 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:53 +02:00
Guillaume Smet 92f194f291 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:44:49 +02:00
Guillaume Smet 6b679c8860 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:15:39 +02:00
Guillaume Smet 338b97e7b5 HHH-12730 Add missing @Overrides 2018-08-01 11:15:39 +02:00
Guillaume Smet a4dd9a96d9 HHH-12730 Add deprecated constructors taking a SessionImplementor 2018-08-01 11:15:39 +02:00
Gail Badner dfa2bc0685 HHH-12730 : User types built using 5.1 are not binary compatible with 5.3 2018-08-01 11:15:39 +02:00
Guillaume Smet e43c374f30 HHH-12868 Fix NPE when loading entity with CacheConcurrencyStrategy.NONE 2018-07-31 14:53:01 +02:00
Andrea Boriero 9ab285eb58 HHH-12861 SchemaUpdate doesn't work with Sybase 2018-07-31 10:45:48 +01:00
Yoann Rodière b8b7a0f19b 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:03:13 +02:00
Yoann Rodière 6cf91c832c HHH-12492 Test HQL Delete query with a subquery referencing the parent query's aliases 2018-07-27 15:03:07 +02:00
Martin Simka 77661b2275 HHH-12863 SchemaUpdateTest should be skipped with Sybase 2018-07-27 14:56:35 +02:00
Martin Simka 3e8b35a370 HHH-12851 ConverterTest fails with SQL Server depending on collation 2018-07-23 18:09:54 +02:00
Chris Cranford 27449d2dc2 HHH-12846 - Merge cascade of collection fails when orphan removal enabled with flush mode commit.
(cherry picked from commit 333c190c82)
2018-07-23 11:08:43 -04:00
Martin Simka 95c11255f8 HHH-12844 Fix HbmWithIdentityTest with Oracle 2018-07-20 14:47:43 +02:00
Martin Simka 88a015368b HHH-12843 Fix CreateDeleteTest and FlushIdGenTest with Oracle 2018-07-20 13:22:56 +02:00
Martin Simka 0caee98355 HHH-12839 Fix EntityProxySerializationTest with Oracle 2018-07-20 11:30:11 +02:00
Guillaume Smet d02ad78eb7 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:30:11 +02:00
Guillaume Smet 0091169f9d 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:30:11 +02:00
Guillaume Smet 0075225ab7 HHH-12832 Make SchemaUpdateHaltOnErrorTest use the CustomRunner
Otherwise @SkipForDialect doesn't work.
2018-07-20 10:38:19 +02:00
Martin Simka ad08bdf513 HHH-12838 Fix AndNationalizedTests with DB2
This is consecutive to the changes made in HHH-12753.
2018-07-20 10:27:51 +02:00
Gail Badner 5fd8b36e34 HHH-12666 : Add test 2018-07-20 10:27:05 +02:00
Gail Badner 0bbacccf8d HHH-12666 : Add documentation 2018-07-20 10:27:05 +02:00
Gail Badner a76dde0ec6 HHH-12666 : Added more tests 2018-07-20 10:27:05 +02:00
Yoann Rodière 566a93d6c7 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:27:05 +02:00
Gail Badner e5da120f13 HHH-12666 : Add an option for restoring 5.1 native exception handling 2018-07-20 10:27:05 +02:00
Martin Simka ed03dfb958 HHH-12833 Fix UniqueConstraintDropTest with DB2 2018-07-19 16:06:15 +02:00
Chris Cranford 9ca732cf29 HHH-12753 - Remove an override that was not relevant to this jira.
(cherry picked from commit ad5f96c613)
2018-07-19 10:01:52 -04:00
Chris Cranford 86abe7fd4f 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.

(cherry picked from commit 005d5b7c74)
2018-07-19 09:54:46 -04:00
nikowitt 722ba32f9f HHH-12830 Improve error message when a method is called in a non active
transaction
2018-07-19 15:36:59 +02:00
Guillaume Smet 255a096ee8 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:18:42 +02:00
Guillaume Smet d6f8d2e7a0 HHH-12822 Skip "case when" tests requiring casts for DB2 2018-07-19 15:18:42 +02:00
Guillaume Smet 3747352ec5 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:18:42 +02:00
Guillaume Smet 7174b03a25 HHH-12815 Remove the zeroDateTimeBehavior option
It's useless for this test and it causes compatibility issues.
2018-07-19 15:18:42 +02:00
Guillaume Smet 1945180569 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:02:03 +02:00
Chris Cranford 4fc2ce7ab7 HHH-12826 - Persist cascade of collection fails when orphan removal enabled with flush mode commit.
(cherry picked from commit 3fe7d6e13e)
2018-07-18 18:10:58 -04:00
Chris Cranford d24685de67 HHH-12542 - Add necessary privileged action blocks for SecurityManager used on WildFly. 2018-07-18 17:50:27 +02:00
Martin Simka d23fc129cc HHH-12825 CriteriaHQLAlignmentTest.testCountReturnValues fails on databases that don't support tuple distinct counts because it expects wrong exception 2018-07-18 16:03:24 +02:00
Martin Simka 2f12913b98 HHH-12824 ASTParserLoadingTest.testComponentNullnessChecks fails with DB2 because it uses legacy-style query parameter 2018-07-18 16:00:41 +02:00
Martin Simka 103de8de84 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:45 +02:00
Guillaume Smet dde8744ca3 HHH-12718 Add a comment about the true meaning of interceptorHandledDirtyCheck 2018-07-17 12:10:19 +02:00
Yoann Rodière da2d986efb HHH-12718 Avoid double negations in DefaultFlushEntityEventListener#dirtyCheck 2018-07-17 12:10:19 +02:00
Yoann Rodière e53e0ef790 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 12:10:19 +02:00
Yoann Rodière 47107e3e88 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 12:10:19 +02:00
Ulrich Bestfleisch a180caecd6 HHH-12718 - Entity changes in @PreUpdate callback are not persisted when lazy loading is active for more than one field 2018-07-17 12:10:19 +02:00