Commit Graph

551 Commits

Author SHA1 Message Date
Gavin King 5a0537aa04 rough implementation of naturalid() function in HQL
and add tests for id(), version(), naturalid()
2022-01-04 23:07:39 +01:00
Fabio Massimo Ercoli 2f8d22e9e5
Fix test to follow 6.0 behaviour (#4513)
* Fix test to follow 6.0 behaviour
2021-12-23 14:15:43 +01:00
Christian Beikov fec4fb7a85 Fix connection leak through connection validation code 2021-12-22 14:45:53 +01:00
Christian Beikov 360fec82f1 Reset connection pool after changing system TZ. Don't use distinct predicate when comparing primary keys in envers 2021-12-21 18:46:46 +01:00
Gavin King 675d176b57 stop trying to clear the public schema on postgres
because you don't have permission to do that
2021-12-10 23:11:16 +01:00
Gavin King 611b6c0179 don't do things that can fail in static initializers
because the failure gets swallowed by a nasty NCDFE
and is impossible to track down
2021-12-10 23:11:16 +01:00
Steve Ebersole 942dd7283f DialectVersion
- rename `#isSince` to `#isSameOrAfter`
2021-12-08 15:54:50 -06:00
Steve Ebersole 10d759e139 Dialect version 2021-12-08 15:36:48 -06:00
Steve Ebersole 915da5228d HHH-14497 - Drop legacy id-generator settings;
HHH-14718 - Drop deprecated generator implementations
2021-12-07 11:12:44 -06:00
Christian Beikov 6c4ec95182 * Cleanup temporary table handling in dialects
* Fix insert handling with respect to version, discriminator and generated identifier insertion
* Introduce SqmMultiTableInsertStrategy to handle multi-table inserts
* Introduce the notion of an "entity table" similar to the "id table" to handle multi-table insertions
* Implement table based and cte based multi-table insertion to support all dialects
* Implement identifier generator optimizer support for multi-table insert
* Fix validation of insert target paths against select item types
* Fix some DML validations
* Implement over-clause support in SQL AST
* Fix multi-valued filter parameter support
2021-12-07 15:54:01 +01:00
Steve Ebersole 9028adc30e Clean up test logging (hibernate-core) 2021-12-06 10:12:25 -06:00
Jan Schatteman ce6850bdfa Remove 'statementInspectorClass' from @Jpa and refactor its usage to use
a @SettingProvider

Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2021-11-25 18:42:32 +01:00
Andrea Boriero bdc1e4103d Merge remote-tracking branch 'upstream/main' into wip/6.0_merge 2021-11-24 16:48:43 +01:00
Yoann Rodière 35f374aac7 HHH-14936 Avoid NPE in JdbcConnectionContext's static init 2021-11-22 12:22:07 +01:00
Christian Beikov b8429bca42 Introduce a proper EmbeddableMappingType for id-class and handle id-class uses uniformly 2021-11-19 16:29:56 +01:00
Andrea Boriero c1e16b4e4a Re-enabled additional tests 2021-11-16 13:51:26 +01:00
Andrea Boriero 7dab08448f Re-enable additional tests 2021-11-15 14:00:52 +01:00
Steve Ebersole 7ce1c673ff JpaCompliance improvement 2021-11-11 17:03:40 -06:00
Christian Beikov 9a329f4991 Various fixes and move tests from test.jpa
* Remodel `@MapKey` support to not create subqueries in the on-clause anymore
* Make sure the index table group is reused for the to-one association a `@MapKey` refers to
* Consistently register collection part table groups
* Implement support for FK optimization for EntityCollectionPart
2021-11-11 15:49:30 +01:00
Jan Schatteman 723735ca76 Use org.hibernate.testing.orm.junit.RequiresDialect instead of org.hibernate.testing.RequiresDialect and indicate Dialect version where needed.
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2021-11-10 22:53:29 +01:00
Jan Schatteman c4401452dd Enable a SettingProvider[] in @Jpa and refactor away the NonStringValueSettingProvider class
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2021-11-10 22:53:29 +01:00
Andrea Boriero 9c9a326ae6 Fix Dialect#BatchLoadSizingStrategy#determineOptimalBatchLoadSize taking into account org.hibernate.cfg.AvailableSettings#IN_CLAUSE_PARAMETER_PADDING 2021-11-09 12:16:41 +01:00
Andrea Boriero f9d0b7d069 HHH-14876 Parameter padding for IN clauses doesn't work in Hibernate 6.0.0.Beta1 2021-11-09 12:16:41 +01:00
Steve Ebersole 0eee5ff5b0 HHH-14905 - Verify that custom JavaType and JdbcType registration combo works 2021-11-05 10:35:21 -05:00
Steve Ebersole 34cdd3077c HHH-14905 - Verify that custom JavaType and JdbcType registration combo works 2021-11-04 13:11:33 -05:00
Andrea Boriero 67c2c51d47 Re-enabled additional tests 2021-10-25 15:57:39 +02:00
Steve Ebersole db70fd38dd HHH-14877 - FetchMode.SUBSELECT ignored
Worked on FetchMode.SUBSELECT support but also worked on a few general collection fetch issues and a few improvements
2021-10-21 16:47:20 -05:00
bb7133 5bd27eb853 HHH-14576 : Introduce the dialect for TiDB 2021-10-20 16:19:22 +02:00
Christian Beikov 541302a511 Get rid of most basic type subclasses 2021-10-19 16:33:36 +02:00
Christian Beikov 548df627e6 Implement global configuration and sketch out annotations for time zone storage configuration. Move type tests and add skips for some tests running into H2 bugs. Also, fix some jdbc type assertion tests 2021-10-11 16:11:46 +02:00
Steve Ebersole ede52e9aba HHH-14856 - Introduce @CustomType;
HHH-14865 - Re-work @Any and @ManyToAny support;
HHH-14863 - Compositional definition of basic value mappings;
HHH-14864 - Drop legacy Type-based annotations

* documentation work
* support for using most of the new mapping annotations related to basic and any mappings as meta-annotations
* support for `@Mutability` on AttributeConverter implementations
* additional tests in the User Guide's BitSet mapping Case Study
2021-10-07 16:46:35 -05:00
Steve Ebersole 9ad34c21d4 HHH-14856 - Introduce @CustomType;
HHH-14863 - Compositional definition of basic value mappings;
HHH-14864 - Drop legacy Type-based annotations;
HHH-14865 - Re-work @Any and @ManyToAny support;

* re-use BeanInstanceProducer
* Removed `@CollectionId#type`
* Change `@Any` / `@ManyToAny`
* Removed `@MapKeyType`
* Removed `@TypeDef`
* Removed `@TypeDefs`
* Removed `@Type`
* Removed `@AnyMetaDefs`
* Removed `@AnyMetaDef`
* Removed `@MetaValue`
2021-10-07 10:01:21 -05:00
Christian Beikov 710ebe57b0 Get rid of using specialized BasicType implementations and references to those and instead use a BasicTypeReference that is lazily resolved 2021-10-07 08:15:53 +02:00
Andrea Boriero 7e92c29515 Fix test creating BootstrapContextImpl twice 2021-10-05 15:39:58 +02:00
Christian Beikov 40ccad1db2 Get rid of deprecated dialect methods, JoinFragment, LegacyLimitHandler, LegacySequenceSupport, CaseFragment, SelectFragment etc. 2021-10-05 15:18:38 +02:00
Christian Beikov c5baae7e11 Improve SQL rendering performance by avoiding intermediate String objects 2021-10-05 15:18:38 +02:00
Andrea Boriero 8c40de9cff Merge remote-tracking branch 'upstream/main' into wip/6.0_merge_main_7 2021-10-01 11:34:10 +02:00
Steve Ebersole 986d65a288 HHH-14837 - Move to Jakarta EE
More settings work
2021-09-28 19:01:28 -05:00
taghizadeh87 87e5de74aa Fix typo 2021-09-27 17:17:32 +02:00
Steve Ebersole 089a3f86ae HHH-14837 - Move to Jakarta EE
preliminary transformation;
only `javax.persistence.*` settings supported atm
2021-09-27 08:21:27 -05:00
Andrea Boriero 573d146046 Removed Dialect#areStringComparisonsCaseInsensitive() method 2021-09-25 11:52:03 +02:00
Christian Beikov 905227d2ed Get rid of unnecessary sql tokens for joins and improve join counting for tests 2021-09-23 18:04:02 +02:00
Christian Beikov 0af8755949 Backport of changes from 6314395edf on
wip/6.0 (Fix connection leaks by properly closing service registries)
2021-09-13 17:32:18 +02:00
Christian Beikov 6314395edf Fix connection leaks by properly closing service registries 2021-09-09 16:39:31 +02:00
Christian Beikov dd6efa509b Introduce internal init_sql config and by default enable ansinull for Sybase ASE 2021-09-02 16:54:46 +02:00
Steve Ebersole 0c674deda5 Query hints
+ dropped `AbstractProducedQuery` (no subclasses)
2021-08-23 13:41:41 -05:00
Christian Beikov 89d16bddc8 Switch to case sensitive collations and fix SQL Server issues 2021-08-05 23:35:17 +02:00
Christian Beikov 1fb839b841 Skip some tests for databases that don't support a current_timestamp function with microsecond precision 2021-08-05 09:50:28 +02:00
Christian Beikov ca22db14bb Fix some issues with collection-path related HQL functions minindex/maxindex/minelement/maxelement/elements/indices and group by item rendering problems 2021-08-05 09:50:28 +02:00
Christian Beikov ad49a41cd9 Fix issues with HANA to allow running the testsuite 2021-07-28 16:26:09 +02:00
Steve Ebersole d16073f7ce remove dependency on hibernate-core tests from hibernate-envers 2021-07-27 19:38:44 -05:00
Andrea Boriero 77d870f08c Re-enabled additional tests 2021-07-26 16:43:26 +02:00
Andrea Boriero 96be013089 Re-enabled additional tests 2021-07-26 16:43:26 +02:00
Andrea Boriero 3f7044eebe Re-enabled additional tests 2021-07-26 16:43:26 +02:00
Andrea Boriero d6518e0c7a Re-enabled additional tests 2021-07-08 14:09:46 +02:00
Andrea Boriero 09266c7ae1 Fix RIGHT OUTER attribute-joins are not supported 2021-07-08 11:48:53 +02:00
Christian Beikov 6447ca9b26 HHH-14693, HHH-10668 Move non-supported dialects to the hibernate-community-dialects artifact and add the SQLite dialect originally contributed by Vlad Mihalcea which was adapted for Hibernate 6. Also add HSQLDB, MySQL and Sybase ASE configurations and a CI job config 2021-07-06 10:14:20 +02:00
Steve Ebersole 172ddf8700 Improved build configuration to better leverage Gradle up-to-date handling;
Preparation for moving to Gradle 7.0

- Improve Jakarta transformation handling (tests are also actually run now as a bonus);
- Improved CacheableHbmXmlTest to not write "ser" file to `${buildDir}/resources/test`
- Improved DatabaseService(Plugin)
- Update a number of plugins which did not handle up-to-date-ness properly
2021-06-26 08:46:09 -05:00
Steve Ebersole a6dc84e1fe Work on Instantiator in preparation for composite-user-type work 2021-06-24 10:30:31 -05:00
Andrea Boriero a8cf8165ae Add version to logic evaluating @SkipForDialect and @RequiresDialect 2021-06-15 18:06:27 +02:00
Andrea Boriero 105f91e910 Merge remote-tracking branch 'upstream/main' into wip/6.0 2021-06-15 11:50:01 +02:00
Steve Ebersole e4d61a7c62 HHH-14678 - Drop ResultSetWrapper and friends 2021-06-11 12:02:47 -05:00
Sanne Grinovero 5b2289e883 HHH-14667 Avoid triggering the load of sequence metadata when not required
Also introduce SequenceMismatchStrategy#NONE, which allows to fully disable the checks
performed by SequenceMismatchStrategy on initialization; combining these two
changes, users have the option to fully skip loading the details about existing
sequences from the DB.
2021-06-11 11:55:46 +01:00
Christian Beikov 5e0864729b Update H2 to 1.4.200. Replace LockMode in Fetch and DomainResult with the source alias to resolve lock mode during initializer creation. Introduce notion of aggregate function with an optional filter clause. Implement support for rendering locks into SQL. Move locking tests to orm package 2021-06-09 16:41:23 +02:00
Andrea Boriero 451568f322 Merge remote-tracking branch 'upstream/main' into wip/6.0_merge_7 2021-05-31 14:55:18 +02:00
Yoann Rodière 07eca3883d HHH-14635 Upgrade to log4j 2 2021-05-26 09:05:56 +02:00
Andrea Boriero ffae5474a6 Merge remote-tracking branch 'upstream/main' into wip/6.0_merge_6 2021-05-24 20:41:03 +02:00
Steve Ebersole c7e37dc1d7 HHH-14513 : Move publishing release and snapshot artifacts to Sonatype OSSRH 2021-05-14 15:06:15 -05:00
Steve Ebersole c17396521c mariadb nationalization support 2021-05-13 12:43:59 -05:00
Steve Ebersole 71515af5cc HHH-14589 - Make sure documentation examples regarding basic-types work and update the section
- re-enable the basic-type tests in the `documentation` module
- fix basic-type resolution in various cases from tests in both `hibernate-core` and `documentation`
- updated the basic_types.adoc user-guide section + moved much of the "legacy" discussion to an appendix
- fixed missing impls of the optional contract `org.hibernate.type.AdjustableBasicType`
- improved handling of `NationalizationSupport` offered by a Dialect

NOTE :
- changes to `ColumnTransformerTest` are related to "composite basics" not being supported, not problems with `ColumnTransformer`.
- final failure in `org.hibernate.userguide.mapping.basic` is `SubselectTest#testRefreshLifecycle` which actually fails because refresh is not working properly
2021-05-13 09:58:20 -05:00
Christian Beikov 0c79d1d644 Fix service registry injection through connection provider delegate 2021-05-07 15:29:11 +02:00
Andrea Boriero 867dd52ab3 Re-enabled OneToOneFormulaTest 2021-05-07 09:59:08 +02:00
Christian Beikov 1a24c93155 Move tests from packages actionqueue, annotations, batch, boot, bytecode, id, resource, schemafilter, schematools, schemaupdate, schemavalidation, serialization, service, tool, unidir, util 2021-05-06 07:29:57 +02:00
Steve Ebersole eb9bb2d82f Support for type coercion for values passed as ids and as query parameter bindings
- widening coercions
- valid (no over/under flow) narrowing coercions
- JpaCompliance setting
2021-05-04 07:21:11 -05:00
Christian Beikov ff9e9eebc9 HHH-13946 Create Jakarta artifacts for hibernate-core, hibernate-envers, hibernate-jpamodelgen and hibernate-testing 2021-04-30 11:41:05 +02:00
Andrea Boriero b27b414511 Fix EmbeddedForeignKeyDescriptor creation when o.h.mapping.Value has no columns, Re-enabled additional tests 2021-04-22 13:52:16 +02:00
Andrea Boriero 15e49692e9 Fix wrong creation of new instances for non aggregated id with no IdClass 2021-04-22 10:32:03 +02:00
Christian Beikov 4330d7345b
Checkstyle fix 2021-04-20 08:42:16 +02:00
Steve Ebersole 607234e7bf re-enable tests
re-organize some tests
o.h.test.hql.ParameterTest -> LegacyParameterTests
bug with binding ordinal parameter lists
created "standard domain model" for Hibernate's legacy Animal model
2021-04-19 16:44:25 -05:00
Andrea Boriero badc99705a Merge remote-tracking branch 'upstream/main' into wip/6.0_merge 2021-04-16 13:19:16 +02:00
Steve Ebersole b31f2c02d7 re-enable tests
re-organize some tests
CastNullSelectExpressionTest (not-implemented-yet)
2021-04-15 11:42:07 -05:00
Yoann Rodière fcc63d9ab0 HHH-14529 Stop using two separate BootstrapServiceRegistries for the same SessionFactory in BaseCoreFunctionalTestCase 2021-04-15 14:01:28 +02:00
Steve Ebersole 3958ee2360 re-enable tests
re-organize some tests
work on `org.hibernate.test.hql.size`
improved key/target handling for fk-descriptor
2021-04-14 16:06:15 -05:00
Andrea Boriero 9c27e41184 Remove o.h.testing.junit5 package 2021-04-10 12:32:18 +02:00
Andrea Boriero c1fcb6cb92 Rollback Transaction when an AssertionError occurrs 2021-04-08 17:33:43 +02:00
Andrea Boriero 6bd7a4d972 HHH-14503 - Migration of tests from jpa/test to orm/test/jpa 2021-04-08 17:33:43 +02:00
Steve Ebersole 3d90dbfbae re-enable tests
re-organize some tests
continuing with o.h.test.hql
improve parameter handling by tracking mapping-model types resolved for them in SQM->SQL translation
2021-04-08 08:08:54 -05:00
Christian Beikov 06b5eb43c6 HHH-11692 Introduce DISTINCT predicate in HQL and implement emulations 2021-04-07 18:28:38 +02:00
Steve Ebersole 51074eb9a0 re-enable tests
re-organize some tests
continuing with o.h.test.hql
fixed bug in JPA model building with dynamic entities
added NavigablePath#getUnaliasedLocalName to aid in resolving ModelParts as part of SQM->SQL
2021-04-01 11:07:28 -05:00
Steve Ebersole 7fcde66d61 HHH-14524 : Rename SqlType(X) as JdbcType(X) 2021-03-29 11:33:56 -05:00
Steve Ebersole a02835bdde re-enable tests
re-organize some tests
added `@LoggingInspections`
added `@MessageKeyWatcher`
account for various "odd" explicit Type mappings
fix column read/write transformations
2021-03-29 10:58:44 -05:00
Steve Ebersole e4111a5453 re-enable tests
re-organize some tests
added `@LoggingInspections`
added `@MessageKeyWatcher`
2021-03-26 12:50:32 -05:00
Andrea Boriero 9d6306cac2 re-enabled AggressiveReleaseTest tests 2021-03-25 17:09:54 +01:00
Steve Ebersole 523113d2ca re-enable tests
re-organize some tests

fixed EnumType mapping from hbm.xml
various fixes in HQL, Criteria and parameter handling related to enum values
2021-03-24 15:34:14 -05:00
Steve Ebersole e04a9bff0d re-enable tests
re-organize some tests
2021-03-23 13:13:12 -05:00
Christian Beikov 5b0b822717 Move tests to orm/test and fix query cache stats, native query variable substitution and named query support as loader 2021-03-18 20:19:03 +01:00
Steve Ebersole 0a1527186b Removed `@ExtendWith( DialectFilterExtension.class )` from `@SessionFactory` 2021-03-18 08:58:20 -05:00
Steve Ebersole 31b1627baa HHH-14506 - IdentifierGenerator changes
- HHH-14491 - Apply default allocation/increment size for @GeneratedValue(AUTO)
- HHH-14492 - Prefer sequence-per-entity (hierarchy) by default
- HHH-14497 - Drop `hibernate.id.new_generator_mappings` & `hibernate.model.generator_name_as_sequence_name`
- enabled existing tests and convert to JUnit5
2021-03-17 18:00:22 -05:00
Jan Schatteman 7695f03bf9 HHH-14503 - Migration of tests from jpa/test to orm/test/jpa
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2021-03-16 17:58:45 +01:00
Steve Ebersole 69564cd7c8 HHH-14478 : Allow DialectResolvers to be discovered by ServiceLoader 2021-03-08 08:14:05 -06:00