Commit Graph

8234 Commits

Author SHA1 Message Date
Gavin King 7ab5a04d42 improve the SQL formatter
we were rendering a many SQL functions badly
2022-01-21 14:16:07 +01:00
Gavin King 6f3ffe8abc put back in test for HQL casting between double and string 2022-01-21 12:35:35 +01:00
Gavin King 376d0c220f fix checkstyle violations 2022-01-21 10:19:30 +01:00
Steve Ebersole 5ded7b8833 api, spi, internal, deprecation
SynchronizeableQuery
2022-01-20 22:49:20 -06:00
Steve Ebersole 5761e7801b api, spi, internal, deprecation
org.hibernate.jpa
2022-01-20 22:19:13 -06:00
Gavin King e1e16a5041 improve an error message and some javadoc 2022-01-20 23:20:16 +01:00
Gavin King d385cc8825 remove hibernate.query.validate_parameters
in H6 we're going to always validate them
2022-01-20 23:20:16 +01:00
Gavin King a59bf70ccf remove hibernate.query.conventional_java_constants
this was apparently a sorta nasty bandaid to a performance problem in query compilation
and it caused problems for some users, breaking interpretation of enum values
2022-01-20 23:20:16 +01:00
Gavin King a84793bd6d remove hibernate.cache.provider_configuration_file_resource_path
this was unused
2022-01-20 20:24:08 +01:00
Steve Ebersole 6cbfb30ea4 api, spi, internal, deprecation 2022-01-20 11:29:57 -06:00
Gavin King ff79e0f12a use @linkplain instead of @link where there is plain text 2022-01-20 18:21:14 +01:00
Gavin King e7acffef15 remove some legacy config properties
the following are gone:

hibernate.ejb.resource_scanner
hibernate.query.substitutions
hibernate.jdbc.sql_exception_converter
hibernate.native_exception_handling_51_compliance
hibernate.legacy_limit_handler
hibernate.jdbc.wrap_result_sets
2022-01-20 18:03:51 +01:00
Gavin King dded606259 use @value instead of @link for setting names in Javadoc 2022-01-20 17:42:26 +01:00
Gavin King 71f122d2e5 remove check for deprecated setting
I don't think we need to look for org.hibernate.ejb.HibernatePersistence anymore
2022-01-20 16:54:42 +01:00
Christian Beikov 7fa2fd0588 Small documentation and internal updates 2022-01-20 16:02:21 +01:00
Christian Beikov ffd72a7d60 Get rid of Type#dictatedSizes and Type#defaultSizes and move methods from Sized as default methods to UserType 2022-01-20 16:01:02 +01:00
Christian Beikov 5fcacce3b1 Replace some uses of Type#getSqlTypeCodes with BasicType#getJdbcType 2022-01-20 16:01:02 +01:00
Christian Beikov 445cedfec7 Cleanup the naming of JavaDescriptor and JavaTypeDescriptor to align with the new naming JavaType 2022-01-20 16:01:02 +01:00
Christian Beikov 895ac83537 Mark some classes as internal which should go away when transitioning to SqlAst based rendering 2022-01-20 16:01:02 +01:00
Andrea Boriero 4361790205 Fix ArrayIndexOutOfBoundsException for CollectionJoin#on(Predicate ...) 2022-01-20 14:57:15 +01:00
Gavin King e6a9220606 clean up very old Dialect javadoc
and squash a couple of warnings
2022-01-20 14:07:32 +01:00
Gavin King 019f87106a tests for @DialectOverride.Xxxx 2022-01-20 11:33:22 +01:00
Gavin King 8aa0665731 introduce the @DialectOverride annotation
for overriding certain mapping annotations that specify native SQL
2022-01-20 11:33:22 +01:00
Andrea Boriero a9ddebf643 HHH-15044 Revert HHH-14826 fix because the provided test was wrong 2022-01-20 11:25:27 +01:00
Andrea Boriero a74d0b72be Fix converter issues 2022-01-19 19:56:04 +01:00
Christian Beikov 36d6760abf Fix missing commit which was causing dangling connection/tx 2022-01-19 17:03:42 +01:00
Christian Beikov 8783781f7c Add another TCK test for BigDecimal handling and fix parameter rendering for some Dbs 2022-01-19 17:03:42 +01:00
Andrea Boriero 1e07c4f85f Fix expression type for arithmetic operations 2022-01-19 17:03:42 +01:00
og151037 4775be3bb8 HHH-15042: add offset-clause usage for DB2zDialect 2022-01-19 15:25:57 +01:00
Yoann Rodière 227930b090 HHH-15022 Test deleting all entities of a given type in a table-per-class hierarchy with a default schema 2022-01-19 14:31:09 +01:00
Gavin King 6072564b93 improve javadoc for @Formula 2022-01-19 13:46:03 +01:00
Gavin King 101de70289 improve javadoc for @JoinFormula-related stuff 2022-01-19 13:33:25 +01:00
Gavin King 47c695bace remove unused imports 2022-01-19 13:14:55 +01:00
Christian Beikov 659bbc0167 Re-add accidently removed SkipDialects for ManyToOneWithFormulaTest 2022-01-19 12:24:17 +01:00
Steve Ebersole 9e3dc8d3e1 clean up remaining test suite failures 2022-01-18 17:49:55 -06:00
Steve Ebersole ba024c5475 clean up remaining test suite failures 2022-01-18 17:20:32 -06:00
Steve Ebersole 1dcdec9c15 clean up remaining test suite failures 2022-01-18 17:19:25 -06:00
Steve Ebersole 7437a96b12 clean up remaining test suite failures 2022-01-18 17:16:23 -06:00
Steve Ebersole e8d8b43bfd clean up remaining test suite failures 2022-01-18 16:06:47 -06:00
Steve Ebersole aefb3c3edc clean up remaining test suite failures 2022-01-18 15:56:24 -06:00
Steve Ebersole 1ad9133871 clean up remaining test suite failures 2022-01-18 14:10:34 -06:00
Christian Beikov 4e5a28deaa Add support for non-synthetic virtual model parts 2022-01-18 20:04:50 +01:00
Christian Beikov fb882f56f3 Finalize moving annotations tests and ensure columns are sorted also for collection keys properly 2022-01-18 20:04:50 +01:00
William Burns 1ede36212b HHH-15037 Criteria Update/Delete with vararg parameters throws NullPointerException 2022-01-18 19:41:41 +01:00
Steve Ebersole cfb98abf7a WrongClassException 2022-01-18 12:19:28 -06:00
Andrea Boriero 0ea5528250 Fix criteria mod failing on derby 2022-01-18 16:24:09 +01:00
Christian Beikov 181217ef1f Re-introduce the regex pattern for the format pattern check 2022-01-18 16:19:28 +01:00
Christian Beikov d0f6c3302c HHH-15035 Fix native query type discovery with h2 2.0.202+ with float(..) DDL type 2022-01-18 15:18:01 +01:00
Christian Beikov fb749b6b32 Adapt tests and skips for H2 2.0.202+ 2022-01-18 15:18:01 +01:00
Christian Beikov 6feb33f4e1 HHH-15009 Allow augmenting supported physical table types through dialect for H2 2.0.202+ support 2022-01-18 15:18:01 +01:00
Christian Beikov fe44411e60 HHH-15014 Fix subquery tuple rendering for H2 2.0.202+ 2022-01-18 15:18:01 +01:00
Christian Beikov 0fb19fd4fb Get rid of column names that are problematic on H2 2.0.202+ 2022-01-18 15:18:01 +01:00
Christian Beikov c284315931 Add validation for format function and remove `aa` format as no database supports long/short AM/PM markers 2022-01-18 15:18:01 +01:00
Andrea Boriero b8fab567cc Fix CriteriaBuidler#locate() arguments order rendering 2022-01-18 13:10:24 +01:00
Andrea Boriero 370d9354fc Fix CriteriaBuidler#locate() arguments order rendering 2022-01-18 13:10:24 +01:00
Steve Ebersole 6f1ddc32dd fix NPE when selecting enum value 2022-01-17 20:40:00 -06:00
Gavin King 53d38262ba test showing selecting enum value causes NPE 2022-01-17 20:38:43 -06:00
Andrea Boriero 9e7a091d67 Fix CriteriaBuidler#locate() arguments order rendering 2022-01-17 18:39:01 +01:00
Andrea Boriero 23a011385d Fix MaskSensitiveInformationTest failure 2022-01-17 16:41:42 +01:00
Steve Ebersole a7d76b2370 more `@NotImplementedYet` clean-up 2022-01-16 22:54:19 -06:00
Steve Ebersole 37094e3e80 Javadoc work 2022-01-16 22:02:57 -06:00
Steve Ebersole 6ec996f1d5 WrongClassException tests 2022-01-16 22:02:57 -06:00
Sanne Grinovero e38f63a0cb HHH-15033 Restrict JNDI lookups to "java" scheme 2022-01-16 22:00:24 +00:00
Sanne Grinovero 8511343108 HHH-15033 Reduce visibility of JndiServiceImpl 2022-01-16 22:00:24 +00:00
Andrea Boriero ef980cbb5d Throw IllegalArgumentException when the an attribute name is not resolved as a subPath 2022-01-16 19:04:41 +01:00
Andrea Boriero 9fba739bc2 Throw IllegalArgumentException for null Criteria literal value 2022-01-16 19:04:05 +01:00
Steve Ebersole fb17eb52df more `@NotImplementedYet` clean-up - fix bad test assertions 2022-01-16 11:00:28 -06:00
Steve Ebersole c0137e7de2 additional clean up of - "massive" cleanout of the transformers stuff 2022-01-15 08:51:09 -06:00
Gavin c43b6ff606 massive cleanout of the transformers stuff
- add meaningful generic types to stuff
- remove things which weren't used/tested, and seem obsolete
  (and which could not be propertly generified)
2022-01-15 08:51:09 -06:00
Andrea Boriero 22457cc74d Throw IllegalArgumentException when the an attribute name is not resolved as a subPath 2022-01-15 08:13:05 -06:00
Steve Ebersole 326f2ae775 Clean up usages of `@NotImplementedYet` 2022-01-14 20:36:53 -06:00
Sanne Grinovero 73e936b280 HHH-15029 Small refactoring in JndiServiceImpl: no need to use a Properties for the context configuration 2022-01-14 23:48:08 +00:00
Sanne Grinovero 1b2508e4e0 HHH-15029 Remove deprecated JndiHelper 2022-01-14 23:48:08 +00:00
Steve Ebersole 7de0e79cad Clean up usages of ``@NotImplementedYet` 2022-01-14 15:56:59 -06:00
Steve Ebersole 834426e8f6 Fix bug with creating a NaturalIdCacheKey via SimpleCacheKeysFactory 2022-01-14 15:25:05 -06:00
Steve Ebersole 9fe3c861ca HHH-15023 - Move Query and NativeQuery back to org.hibernate.query 2022-01-14 14:49:17 -06:00
Gavin fbec85b475 get rid of the language "positional parameter"
they're not really positional in JPA, they're just labelled by integers

also use "argument" instead of "value", since that's the proper term
2022-01-14 16:14:43 +01:00
Andrea Boriero 1e973a0b55 Throw IllegalArgumentException when cannot resolve attribute names 2022-01-13 19:15:58 +01:00
Andrea Boriero bb05cdadc6 Throw IllegalArgumentException when cannot resolve attribute names 2022-01-13 18:35:30 +01:00
Gavin King 14bf19ff7e remove deprecated Statistics APIs 2022-01-12 10:20:13 +01:00
Gavin King f7b4a94c45 minor refresh of the Statistics API
- added getStart() returning an Instance
- removed a left-over @MXBean annotation
- refreshed some Javadoc
- fixed some warnings
2022-01-12 10:20:13 +01:00
Steve Ebersole fda6e96c5e HHH-15023 - Move Query and NativeQuery back to org.hibernate 2022-01-11 21:01:56 -06:00
Gavin 1528152735 remove deprecated methods of Cache interface 2022-01-11 20:56:24 +01:00
Gavin be4b751582 remove use of deprecated caching methods from tests 2022-01-11 20:56:24 +01:00
Gavin abf3360b49 improve Javadoc for Cache and fix some warnings 2022-01-11 20:56:24 +01:00
Andrea Boriero 0f9a141c9e List annotatted with @OrderBy interpreted with BAG semantic 2022-01-11 18:23:29 +01:00
Andrea Boriero 2bbeeb5ab2 Fix postLoad callback method calls 2022-01-11 17:36:10 +01:00
Steve Ebersole 8f5fefd806 HHH-15017 - Clean-up Query#setParameter overloads
- https://hibernate.atlassian.net/browse/HHH-15017
2022-01-10 12:25:38 -06:00
Steve Ebersole b62c23ab29 HHH-15017 - Clean-up Query#setParameter overloads
- https://hibernate.atlassian.net/browse/HHH-15017
2022-01-10 12:25:38 -06:00
Andrea Boriero b8114bad31 Fix postLoad callback method not called 2022-01-10 12:22:52 -06:00
Sanne Grinovero 8d43be4b78 HHH-15018 OracleTypesHelper shouldn't log stacktraces when the Oracle JDBC driver isn't loadable 2022-01-10 16:19:27 +00:00
Steve Ebersole d2584730f3 Document @IdGeneratorType;
Some work to clean up User Guide sections on id-generators
2022-01-10 09:54:06 -06:00
Gavin King 2e8bf3d1df make 'element' and 'value' synonyms, along with 'index' and 'key' 2022-01-10 15:48:34 +01:00
Gavin King 3e8f1c67df clean up lots of warnings by adding wildcards to raw types
also comment out some unused code
2022-01-10 15:48:34 +01:00
Gavin King 4b5e6e1969 introduce new syntax for aggregate functions applying to collections
max(element x.y), min(index x.y), sum(element x.y)

and rationalize the node types here
2022-01-10 15:48:34 +01:00
Gavin King 38fc97feb3 sort out some confusion regarding elements() vs value() + indices() vs index()
Strictly, elements() and indices() don't make sense as select items, but we
have tests for this, and users who reported bugs and sent in patches, etc, etc,
so I'm going to go ahead and keep accepting them in the select clause as a
blessed misuse.

I'm not however going to allow them to be dereferenced because no, that's why.
2022-01-10 07:09:12 +01:00
Gavin King abd63d73ea clean up warnings and broken Javadoc links on Cache interface 2022-01-10 00:18:27 +01:00
Gavin King 7f9f8e1ff3 clean up FlushMode 2022-01-10 00:18:27 +01:00
Gavin King 3fb6c1ce26 Refresh the javadoc of a bunch of annotations 2022-01-10 00:18:27 +01:00
Gavin King 596debed4d make @Check work when applied at the field level
This was a bug!

Also add checkConstraint member to @Table to allow check constraints on secondary tables

Also clean up some Javadoc of some related annotations
2022-01-10 00:01:24 +01:00
Gavin King bd8bf15e00 fix some warnings in IntelliJ (unnecessary StringBuilder) 2022-01-09 21:58:05 +01:00
Gavin King 4324509a59 allow @Comment to apply at the class level
yes, you can do it with the @Table annotation but this is nicer,
no good reason to not allow it
2022-01-09 21:32:30 +01:00
Gavin King 9eac2b193b skip some tests on TiDB 2022-01-09 17:36:37 +01:00
Gavin King c88a9ac8bc improve javadoc for @Order/@Sort annotations 2022-01-09 11:50:31 +01:00
Gavin King 740779165d add IdentifierLoadAccess.withReadOnly()
adding this to the other XxxxLoadAccess interfaces is much harder,
but this one is easy
2022-01-08 15:21:10 +01:00
Gavin King e02e1e2ffb remove the layer-breaking getLobCreator() methods from the Hibernate class
This is in principle a breaking change, but one I consider pretty innocuous,
since I can't imagine why anyone was calling Hibernate.getLobCreator(session)
instead of session.getLobHelper().
2022-01-08 12:35:43 +01:00
Gavin King e331c2870e more cosmetic improvements to HQL error reporting
makes the messages and exception types a bit more consistent
2022-01-08 12:14:21 +01:00
Gavin King e79d7efbce use instanceof instead of isInstance() on the hot path
surely NBD, but such an easy thing to fix and remove all doubt
2022-01-08 10:45:53 +01:00
Gavin King 6c83e1d0ec cosmetic improvements to HQL error reporting
makes the messages and exception types a bit more consistent
2022-01-08 09:59:02 +01:00
Gavin King fc079ba226 disable test on some dialects 2022-01-08 00:15:14 +01:00
Gavin King 77aa6ab244 use Map.entry() instead of ouw own MapEntryImpl for entry() function
add tests for HQL collection functions
2022-01-08 00:15:14 +01:00
Gavin King 90cd25bc5d remove obsolete comments and enable a (fixed) test 2022-01-08 00:15:14 +01:00
Gavin King 032d224531 totally trivial test for autoquoting of initial _
that actually really does test that it does what it should :)
2022-01-07 18:54:59 +01:00
Gavin King 32f4122470 autoquote column names with initial _ on those dbs that require it 2022-01-07 18:54:59 +01:00
Gavin King 54b5a85af4 add a whole passage about serialization 2022-01-07 12:14:06 +01:00
Gavin King 1b1790bb8c improvements to javadoc for Transaction + SharedSessionContract 2022-01-07 11:58:42 +01:00
Gavin King 0e8203c600 remove obsolete APIs and clean up warnings
rewrite the incorrect javadoc for the class Hibernate
2022-01-07 11:58:42 +01:00
Gavin King b444fbf9a5 deprecate "old" methods of session and add a new one
- deprecated load()
- deprecated save(), saveOrUpdate(), and update()
- deprecated delete()
- deprecated "dangerous" overloads of refresh()
- added getReference() taking an entity name
- improved the Javadoc for lots of operations
2022-01-07 11:58:42 +01:00
Steve Ebersole 448d678fb5 Drop `@CollectionClassificationType`;
Drop `@CollectionSemantics`;
Drop `@CollectionSemanticsRegistration(s)`;
Add `@CollectionTypeRegistration(s)`;
Rename `@CustomType` to `@Type`;
User Guide and Migration Guide changes
2022-01-06 21:46:48 -06:00
Gavin King b8d26f829e add a test for selecting a datetime literal
seems to be causing problems in 2 dbs
2022-01-07 00:20:38 +01:00
Gavin King 2c00a647cb add a test for datediff()/dateadd() functions 2022-01-07 00:20:38 +01:00
Gavin King 86025a9af8 try to get the test working again on Sybase 2022-01-06 18:10:00 +01:00
Gavin King 01600b48e5 remove a workaround for a bug on derby that was fixed ages ago 2022-01-06 18:10:00 +01:00
Gavin King aef951f279 move some function arg typechecking up to the SQM phase
this is where it needs to be for checking of named queries at startup
and for any checks that happen in an IDE or at build time
2022-01-06 18:10:00 +01:00
Gavin King 7178caea8d fix lots of warnings in AbstractHANADialect 2022-01-06 18:10:00 +01:00
Gavin King cc91beb536 typecheck HQL function arguments 2022-01-06 18:10:00 +01:00
Steve Ebersole a73068cc0f Improve CollectionClassification javadoc 2022-01-06 09:05:38 -06:00
Steve Ebersole 773f3429c6 hibernate.mapping.default_list_semantics (`AvailableSettings#DEFAULT_LIST_SEMANTICS`)
make LIST the default classification for List attributes with no `@OrderColumn`, etc.
2022-01-06 08:53:00 -06:00
Gavin King 1beabbdf40 update some of the tests to use non-deprecated methods
or at least suppress the warnings
2022-01-06 15:25:21 +01:00
Gavin King 261ca55b0f improve some javadoc for Query 2022-01-06 15:25:21 +01:00
Gavin King 780fb3e500 add createStatement() methods
these are needed for executing insert/update/delete queries, because we
deprecated the createQuery() methods that accept no Class as a parameter

these are much better-named anyway, and have a better return type
2022-01-06 15:25:21 +01:00
Gavin King c96f22dfe0 remove hibernate.dialect.show_hql_functions and just make it a log category
really unclear why I didn't do it that way in the first place
2022-01-06 15:24:35 +01:00
Steve Ebersole 0b96d8fca7 - fix too-long identifier for Oracle 2022-01-06 06:21:01 -06:00
Filipe Roque bcb1577b43 HHH-15013 H2 2.0.202 no longer supports nextval, replacing with ANSI SQL 2022-01-06 10:56:00 +01:00
Gavin King 30f627ce39 improvements to Javadoc for hints 2022-01-06 10:28:31 +01:00
Gavin King 17a06e2ffa fix for problem on main 2022-01-06 10:28:31 +01:00
Steve Ebersole a71ba9e385 Initial work to re-organize the Collections chapter in the UserGuide;
Docs for @CollectionType, @CollectionClassificationType and @CollectionSemantics;
Some api/spi/internal work;
Migration Guide;
2022-01-05 16:26:58 -06:00
Christian Beikov f7af0017f7 Adapt a few Oracle pagination with lock tests to consider that only Oracle 12.2 supports the fetch clause perfectly 2022-01-05 14:37:50 +01:00
Christian Beikov 3704dad923 Add a wait to a test that uses a database generated timestamp 2022-01-05 14:37:50 +01:00
Christian Beikov 97dd838954 Move last query test and fix issue with parent table group access when parent is correlated 2022-01-05 14:37:50 +01:00
Christian Beikov 6e8f344a9f Implement handling of top level limit/offset/fetch clause when collection fetches are involved 2022-01-05 14:37:50 +01:00
Christian Beikov afe9b6744e Fix HANA test failures 2022-01-05 14:37:50 +01:00
Christian Beikov de1de9f629 Fix issues with Oracle rownum pagination on Oracle before version 12.2 2022-01-05 14:37:50 +01:00
Christian Beikov 2e0a2eea43 Fix issues with multi table values inserts and add optimization for simple values inserts 2022-01-05 14:37:50 +01:00
Christian Beikov cb5e0b08b9 Fix collation handling for ordering expressions. Fix SqmQuerySpec#setRestriction 2022-01-05 14:37:50 +01:00
Filipe Roque f64f311c4f HHH-14985 H2Dialect does not work properly with h2 2.0.202 on inserts 2022-01-05 10:04:17 +01:00
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
Gavin King 80b5c1e085 get rid of things named Ejb3 2022-01-04 20:35:39 +01:00
Fabio Massimo Ercoli ef4b2732d3 Change assertions expecting rownum expression is used 2022-01-04 20:13:00 +01:00
Fabio Massimo Ercoli 3095116bcf Restore OraclePaginationWithLocksTest test execution 2022-01-04 20:13:00 +01:00
Gavin King 254d4d0351 correctly handle "weird" function names with periods and quotes in HQL 2022-01-04 18:06:43 +01:00
Gavin King 008455bc0c rename some grammar rules and add documentation
I want this to be readable to users
2022-01-04 15:05:31 +01:00
Andrea Boriero 9c7d39abf1 Fix broken Session#refresh() method 2022-01-04 09:14:24 +01:00
Gavin King e27f6af4b9 test demonstrating that refresh() doesn't 2022-01-04 09:14:24 +01:00
Gavin 4e0c131a27 allow parameter in like escape
as required by JPQL
2022-01-03 19:06:32 +01:00
Andrea Boriero 0cf96c09b7 Re-enable additional tests 2022-01-03 14:33:38 +01:00
Gavin King 6f714f16b3 remove unnecessary parens 2022-01-02 18:56:07 +01:00
Gavin King 72889fe861 add some missing functions to docs 2022-01-02 16:10:33 +01:00
Gavin King fdd1a52e01 promote log10() to standard function status 2022-01-02 16:10:33 +01:00
Gavin King 5ae55d7bfb
redesign 'collate' and add tests
* and add tests and documentation for 'collate'
* much better and less-ambiguous syntax for collate(), consistent with cast() and treat()
* reimplement collate() using the function infrastructure
* implement collate() for HSQLDB

This feature was previously untested and at least partially broken, and was making a mess 
of the HQL grammar.
2022-01-02 13:39:33 +01:00
Gavin King a61ffbfea7 fix insert ... values (...) statements
they break when using a MultiTableInsertQueryPlan, but we probably don't need one
2022-01-01 23:52:27 +01:00
Gavin King df72d7db3d reenable some LiteralTests 2022-01-01 23:36:21 +01:00
Gavin King f9afab5492 minor cleanups to the grammar
- simplify two rules that were unnecessarily flexible
- remove useless parens
- rename some rules for readability
- clean up some warnings in SemanticQueryBuilder
2022-01-01 22:31:28 +01:00
Fabio Massimo Ercoli 614ecbdc57 Remove PASS_DISTINCT_THROUGH flag 2021-12-31 11:46:15 -06:00
Fabio Massimo Ercoli aa6035a9fd Remove use of PASS_DISTINCT_THROUGH from distinct test
Property will be deleted in a subsequent commit
2021-12-31 11:39:23 -06:00
Gavin King 4a88399bb5 remove name() from @ColumnDefault + @GeneratedColumn
after all that, we decided it wasn't necessary :-D
2021-12-31 18:34:57 +01:00
Gavin King aa08c90b52 add some overrides that should not be necessary
Javac doesn't mind, but IntelliJ seems to get confused
2021-12-31 18:11:38 +01:00
Gavin King f2c3ac7db7 remove some obsolete code from AnnotationBinder 2021-12-31 16:02:23 +01:00
Gavin King 4ce27e70ae introduce @GeneratedColumn annotation
to make it easy to produce portable DDL with 'generated always as'
or equivalent

also add 'name' to @ColumnDefault, and add some missing tests for
basic usage patterns of @ColumnDefault
2021-12-31 16:01:32 +01:00
Gavin King 37010a1a8d fix a broken @see annotation + remove one 2021-12-31 16:01:11 +01:00
Steve Ebersole b7caec4b68 `@CollectionClassificationType`;
`AvailableSettings.DEFAULT_LIST_SEMANTICS` / MappingDefaults.getImplicitListClassification`;
additional improvements to CollectionSemantics resolution handling from annotations
2021-12-30 13:07:46 -06:00
Steve Ebersole 452f114957 `@CollectionType` + better CollectionSemantics resolution handling from annotations;
HHH-9688 - Combination of @OrderBy and @SortComparator

HHH-9688 was simple change in the code I was working on already, so went ahead and just did it
2021-12-30 09:22:13 -06:00
Steve Ebersole e16c78f7ea log4j config 2021-12-29 11:40:24 -06:00
Gavin King bf1eec69d0 minor fixes to generic types in QueryParameterBinding
gets rid of some warnings
2021-12-29 12:56:06 +01:00
Gavin King 537953e12c more cleanups to the Javadoc for Query 2021-12-29 12:52:04 +01:00
Gavin King 553688ca67 fix the javadoc of Query.getSingleResult()
which incorrectly described the semantics of this method

and add tests for this stuff, since we didn't seem to have them
2021-12-29 10:35:02 +01:00
Gavin King 0b2a357670 add MappingMetamodel.isEntityClass() and clean up raw types 2021-12-27 22:15:30 +01:00
Gavin King 0bf2365955 fix signature of createQuery(CriteriaUpdate|CriteriaDelete) 2021-12-27 22:15:30 +01:00
Gavin King ac845bca31 impl the new overload of createNativeQuery()
- and add a second new overload
- tolerate non-entity classes as arguments to these methods
- the overloads accept a result class, and return a typed Query<R>
2021-12-27 22:15:30 +01:00
Gavin King 4ea59b4961 deprecate a bunch of methods of Query + QueryProducer 2021-12-27 22:15:30 +01:00
Gavin King 8a68ee49c1 remove wildcards from APIs in Query hierarchy
I hate doing this but it's necessary since Query is often
used as a raw type, and the wildcards result in additional
compiler warnings at the usage site

Also clean up some other warnings I encountered in this code
2021-12-27 22:15:30 +01:00
Gavin King 82aff7cd8a add tests for Session.fetch() 2021-12-27 21:25:11 +01:00
Gavin King 313de3f917 implement Session.fetch() for bytecode-enhanced proxies
had to add a way to easily set collectionsInDefaultFetchGroup
2021-12-27 21:25:11 +01:00
Gavin King 8770db00af add fetch() to StatelessSession 2021-12-27 21:25:11 +01:00
Gavin King 2d10698d94 remove operations that always threw UnsupportedOperationException 2021-12-27 14:14:42 -06:00
Gavin King a25aa20187 clean up some warnings 2021-12-27 14:14:42 -06:00
Gavin King 9d0ee368ca reword some javadoc 2021-12-27 12:50:48 -06:00
Gavin King 4a8a2ae3cc tests for Session.getReference(Object)
and clean up lots of warnings in ProxyTest
2021-12-27 12:50:48 -06:00
Gavin King 65ce96b776 add Session.getReference(Object)
like in Hibernate Reactive

this is really useful for dealing with detached instances + associations
2021-12-27 12:50:48 -06:00
Dariush Moshiri 0dc94d312e HHH-14682: Enable COMMENT ON H2 2021-12-27 07:31:42 -06:00
Gavin King f2f2a195cd fixes to Session javadoc, including usage of @see 2021-12-27 07:31:15 -06:00
Gavin King 800af2764d remove reference to obsolete config property 2021-12-27 07:31:15 -06:00
Gavin King 92a000b8e6 misc Javadoc fixes, and added @links 2021-12-27 07:31:15 -06:00
Gavin King 8adc1d8d70 use @code instead of <tt> in Javadoc 2021-12-27 07:31:15 -06:00
Christian Beikov fb8186d3e8 Cleanup stored procedure handling and add support for stored procedure function return 2021-12-24 01:44:41 +01:00
Christian Beikov 1aefd1977a Rename result.SqlSelectionImpl to ResultSetMappingSqlSelection. Introduce support for resolving the selection type also for normal JdbcValuesMapping. 2021-12-24 01:44:41 +01:00
Andrea Boriero 313bc2666c Remove few NotYetImplementedFor6Exception 2021-12-23 21:33:01 +01:00
Andrea Boriero 67f73f20ef Remove few NotYetImplementedFor6Exception 2021-12-23 21:33:01 +01:00
Andrea Boriero 87c059ac95 Remove DomainResultProducer NotYetImplementedFor6Exception 2021-12-23 21:33:01 +01:00
Andrea Boriero 63c119bf89 Remove ProcedureParameterImplementor NotYetImplementedFor6Exception 2021-12-23 21:33:01 +01:00
Andrea Boriero 5b425f39fd Remove EntityPersister NotYetImplementedFor6Exception 2021-12-23 21:33:01 +01:00
Andrea Boriero 2200a221a7 Remove ModelPart NotYetImplementedFor6Exception 2021-12-23 21:33:01 +01:00
Andrea Boriero 0a41272e16 Remove JdbcMappingContainer NotYetImplementedFor6Except 2021-12-23 21:33:01 +01:00
Andrea Boriero ee11f9a9ef Remove Bindable NotYetImplementedFor6Exception 2021-12-23 21:33:01 +01:00
Andrea Boriero c612669bb5 Remove few NotYetImplementedFor6Exception 2021-12-23 21:33:01 +01:00
Andrea Boriero 7a3ad20aea Remove few NotYetImplementedFor6Exception 2021-12-23 21:33:01 +01:00
Christian Beikov aec5ce9d8a Move some more tests and fix H2 tuple comparison issues 2021-12-23 18:51:13 +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
Fabio Massimo Ercoli 91a720772f Set correct key type if !referenceToPrimaryKey 2021-12-23 12:45:36 +01:00
Christian Beikov 3ea5a066ed Add query plan cache statistics for native queries and implement proper caching 2021-12-23 10:01:07 +01:00
Christian Beikov 1184a5963b Re-add AvailableSettings.JPA_METAMODEL_GENERATION and re-enable metamodel tests 2021-12-23 10:01:07 +01:00
Jan Schatteman 195df69019 Fixed and moved MappedSuperclassInheritanceTest to orm.test
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2021-12-23 08:41:10 +01:00
Christian Beikov 90e551da4b Fix default null ordering for H2 and re-enable test 2021-12-23 08:37:43 +01:00
Andrea Boriero ef6f190925 Fix collection element order by path resolution 2021-12-22 18:16:04 +01:00
Andrea Boriero 1f42b9badb Log first Exception when MappingModelCreationProcess cannot complete 2021-12-22 17:39:32 +01:00
Christian Beikov fec4fb7a85 Fix connection leak through connection validation code 2021-12-22 14:45:53 +01:00
Christian Beikov 779cbef20c Fix tests for HANA 2021-12-22 14:45:53 +01:00
Christian Beikov 29bfb799aa Fix some test issues with HANA and emulate derived table column naming on HANA 2021-12-21 18:59:08 +01:00
Christian Beikov 39484b160d Cleanup support for virtual embeddable model parts and reuse existing compatible joins for implicit joins 2021-12-21 18:59:08 +01:00
Christian Beikov d5d350e5e7 HHH-11433 Allow usage of KEY expression in a join 2021-12-21 18:59:08 +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
Andrea Boriero dcd4479cf1 Fix instantiation of composite property ref 2021-12-21 13:00:02 +01:00
Steve Ebersole c5f719ef39 clean up javadoc 2021-12-18 19:14:07 -06:00
Steve Ebersole f0e7b2160b 6.0 Final tasks - general test_legacy dir clean-up
Drop test that where either copied over or had corresponding tests

- leaves just the "bulkid" tests
2021-12-18 18:43:25 -06:00
Steve Ebersole f9fa2e6e53 6.0 Final tasks - general test_legacy dir clean-up
At this point, everything left in test_legacy is something I think we want to account for in the test suite (move it, etc)
2021-12-18 12:37:28 -06:00
Steve Ebersole 8f9d200936 6.0 Final tasks - analyze legacy Criteria tests
See if anything makes sense as additions to SqmNodeBuilder (as JPA CriteriaBuilder extension); make list; delete

The only one I considered was support for the legacy `Restrictions#naturalId`
2021-12-18 12:18:02 -06:00
Steve Ebersole 7c604d7c3b HHH-14977 - @Where is broken in 6.0
Fix up bad rebase of https://github.com/hibernate/hibernate-orm/pull/4465 (Make TableReference an interface with various sub-classes) on top of this work
2021-12-18 07:43:32 -06:00
Gavin King 863802cfd0 proposed API for instantiation of detached collections + proxies
this is useful for object-graph deserialization
2021-12-18 05:22:24 -06:00
Christian Beikov d1a732fcf1 Tryout a deterministic test class order 2021-12-18 05:12:36 -06:00
Christian Beikov fb30206387 Add emulation for simple lateral joins and make use of lateral joins for min/max index/element paths if possible 2021-12-18 05:12:36 -06:00
Christian Beikov ab954925e4 Simplify TableJoin to only allow the distinction between inner and left joins 2021-12-18 05:12:36 -06:00
Christian Beikov 1988ffa310 Support lateral joins by introducing a lateral flag in TableGroupJoin and add a FunctionTableReference for table valued functions 2021-12-18 05:12:36 -06:00
Christian Beikov b75277b421 Split TableReference class into interface and NamedTableReference implementation to allow QueryPartTableReference and ValuesTableReference to fit into the picture 2021-12-18 05:12:36 -06:00
Gavin King 70114d30ec treat integral types as equivalent for purposes of schema validation/update 2021-12-18 05:08:26 -06:00
Andrea Boriero d6bdca77f2 Fix Stack Overflow caused by EntitySelectFetchByUniqueKeyInitializer 2021-12-18 04:45:48 -06:00
Fabio Massimo Ercoli ecd9d2a193 Test eager cycles derived by 1to1 owner by contained 2021-12-18 04:45:48 -06:00
Steve Ebersole 335a4d62e3 HHH-14977 - @Where is broken in 6.0
`@Where` and `@Filter` fragments are now fully handled as AST - each fragment gets its own Predicate instance.

Some more work coming to clean up methods we no longer use which require the old String-manip approach.
2021-12-18 04:26:49 -06:00
Steve Ebersole 4c758b2d48 HHH-14977 - @Where is broken in 6.0
`@Where` and `@Filter` fragments are now fully handled as AST - each fragment gets its own Predicate instance.

Some more work coming to clean up methods we no longer use which require the old String-manip approach.
2021-12-17 19:09:09 -06:00
Steve Ebersole 1c5ec0612c HHH-14977 - @Where is broken in 6.0
`@Where` and `@Filter` fragments are now fully handled as AST - each fragment gets its own Predicate instance.

Some more work coming to clean up methods we no longer use which require the old String-manip approach.
2021-12-17 19:07:46 -06:00
Christian Beikov 9d75e6d620 Fix some wrong assignability checks 2021-12-17 18:30:26 +01:00
Andrea Boriero f765eb4a87 Fix issue with Hibernate proxy 2021-12-17 18:30:26 +01:00
Fabio Massimo Ercoli d845f4b066 Test load of polymorphic entities 2021-12-17 18:30:26 +01:00
Andrea Boriero 5626b075dc Fix instantiation of VirtualId 2021-12-17 18:29:53 +01:00
Christian Beikov c92a475892 Get rid of unnecessary lexer rules 2021-12-17 15:40:08 +01:00
Andrea Boriero 017d1a2dcd Reenable additional tests 2021-12-17 09:06:09 +01:00
Christian Beikov b75c2117b2 Fix resolving table references for discriminator path 2021-12-17 08:23:53 +01:00
Gavin King bc65526c77 clean up the Dialect-specific default property handling 2021-12-16 15:58:47 +01:00
Fabio Massimo Ercoli 28b8b33b88 Support multiload by single natural id 2021-12-15 10:52:43 -06:00
Fabio Massimo Ercoli 2814c05399 Test multiload on single event 2021-12-15 10:52:43 -06:00
Fabio Massimo Ercoli 647c2a923c Use single loader to load single instance on multiloading 2021-12-15 10:52:43 -06:00
Fabio Massimo Ercoli cef98f67a9 Test multiloading on partial cached entities 2021-12-15 10:52:43 -06:00
Steve Ebersole 579b3f0dcb HHH-14977 - @Where is broken in 6.0
Next iteration where `@Where` fragments generate AST one or more `WhereFilterPredicate` instances.

At the moment, `@Filter` fragments are collected together using the existing String-manipulation style and still collected into a single `FilterPredicate`.  Next step is to make that more AST-centric and hopefully get rid of the String-manip-based methods
2021-12-15 10:49:49 -06:00
Andrea Boriero a4b574e826 @FailureExpected annotation added to tests in orm 6 substituted with @NotImplementedYet 2021-12-15 09:56:07 +01:00
Gavin King bd9276d6d7 clean up version stuff in DB2i/z dialects 2021-12-15 08:56:50 +01:00
Gavin King e992b41756 clean up constructor model in Dialects
and fix strange model of versions on Maria/TiDB
2021-12-14 22:54:27 +01:00
Gavin King e2be0960fd let's not use LONGVARCHAR to mean two different things 2021-12-14 22:54:27 +01:00
Gavin King eb3bcdb94a reworked approach to Dialect column type customization 2021-12-14 22:54:27 +01:00
Steve Ebersole 103e5c658b HHH-14977 - @Where is broken in 6.0
simple fix hooking in to the existing String based building. working on a version that
uses the AST
2021-12-14 15:36:12 -06:00
Andrea Boriero d89b28e1a9 Re-enabled additional tests 2021-12-14 13:36:24 +01:00
Andrea Boriero 6ebceedf48 Fix Query#getParameters() returning an empty Set when the query has no parameters 2021-12-14 13:36:24 +01:00
Andrea Boriero ba558503a8 Fix thowing IllegalArgumentException when accessing procedure not registered parameters 2021-12-14 13:36:24 +01:00
Andrea Boriero a6ee855d29 Fix thowing IllegalArgumentException when accessing procedure not registered parameters 2021-12-14 13:36:24 +01:00
Andrea Boriero fa499dff94 Fix issue with ResultSetMapping resolution 2021-12-14 13:36:24 +01:00
Christian Beikov c4e7e2b3fe Fix support for dropping local temporary tables 2021-12-14 13:00:14 +01:00
Christian Beikov eecda61ceb Move more tests and fix subselect support 2021-12-14 13:00:14 +01:00
Ivaylo Mitrev b9814f5cef HHH-14948 Adapt contributed patch to 6.0 branch 2021-12-13 21:30:46 +00:00
Gavin King 1172943252 fix broken float type precision conversion
it is not the case that ln(10) = log_2(10)
2021-12-13 13:56:17 +01:00
Andrea Boriero 36be5cc3da Re-enabled additional tests 2021-12-13 13:44:36 +01:00
Steve Ebersole fcda293c5e HHH-14975 - Allow use of auto-applied AttributeConverter as native-query result or parameter 2021-12-12 15:47:57 -06:00
Steve Ebersole 38fa2aef75 HHH-13082 - Support specifying an AttributeConverter class as a @ColumnResult#type 2021-12-12 15:14:28 -06:00
Steve Ebersole bd784b6e90 Misc cleanup related to `MultiLoader` hierarchy 2021-12-12 12:40:34 -06:00
Steve Ebersole 8fef9c4de4 Test for https://hibernate.atlassian.net/browse/HHH-11784 2021-12-11 20:09:03 -06:00
Gavin 0ca7a659b0 "long" varchar/varbinary mappings
add Length class with useful constant values
well-defined mappings for "long" varchar/varbinary types
make LONGVARCHAR a synonym for VARCHAR with length=LONG32
make LONGVARBINARY a synonym for VARBINARY with length=LONG32
add Dialect.getMaxVarcharLength() + friends
make schema validator ignore the differences between string types
2021-12-11 21:27:01 +01:00
Steve Ebersole a35ad1905b HHH-10832 - Remove org.hibernate.property.access.spi.EnhancedGetterMethodImpl 2021-12-10 15:14:39 -06:00
Steve Ebersole a87157ddb8 fix Derby test failures 2021-12-10 14:42:56 -06:00
Steve Ebersole 64af4885b9 HHH-14950 - Support mapping of embeddables with no setters w/ custom instantiator
HHH-14964 - EmbeddableInitializer are called multiple times
2021-12-10 14:39:51 -06:00
Steve Ebersole 1e4f1fef44 HHH-14950 - Support mapping of embeddables with no setters w/ custom instantiator
HHH-14964 - EmbeddableInitializer are called multiple times

HHH-14950 works for the most part, but cannot be used "for real" because of HHH-14964
2021-12-10 13:40:06 -06:00
Steve Ebersole a2a6425b82 fix Oracle test failures 2021-12-10 13:36:53 -06:00
Fabio Massimo Ercoli c6ed830d82 Cache and expose column size 2021-12-10 10:08:07 -05:00
Andrea Boriero e08a7665c8 Fix load of entity with Date[] field 2021-12-10 10:21:40 +01:00
Fabio Massimo Ercoli 15121842f1 Test persist of array of dates 2021-12-10 10:21:40 +01:00
nathan.xu 62e55f3c3c HHH-14970 make use of new Java language features from v8 to v11 2021-12-09 21:26:04 -05:00
Gavin King 0bb647e62b revert to previous design with raw types
there is a problem with this approach: the user now gets unchecked
warnings since we've recently filled in the type args of the params
of some methods of Query and NativeQuery

but it's very hard to see how to fix the problem without breaking
compatibility
2021-12-09 21:25:31 -05:00
Gavin King a1e3f0cd6f fix some warnings and clean up some typing issues
this is a general cleanup of the Session + Query hierarchies
2021-12-09 21:25:31 -05:00
Fabio Massimo Ercoli b91944c09a Support statistics when criteria(s) are executed 2021-12-09 15:04:35 -05:00
Fabio Massimo Ercoli f05f002c22 Test statistics of criteria(s) executed 2021-12-09 15:04:35 -05:00
Steve Ebersole e6d4bc6cfa More documentation work 2021-12-09 13:03:34 -06:00
Gavin King b889375eb6 remove left-behind method createSQLQuery() from StatelessSession 2021-12-09 12:59:04 -05:00
Gavin King 6177210395 remove Session.disconnect()/reconnect()
this stuff is so old and so bad that it's not even worth deprecating
2021-12-09 12:38:55 -05:00
Gavin King 042bd47825 finally remove all remaining traces of Session.connection() 2021-12-09 12:38:55 -05:00
Gavin King 75fc936b95 improve the javadoc for AttributeBinder+AttributedBinderType 2021-12-09 18:31:31 +01:00
Gavin King b1ed206339 replace use of <br> with <p> in all the javadoc 2021-12-09 16:22:43 +01:00
Steve Ebersole 44fea07abf HHH-14497 - Drop legacy id-generator settings;
HHH-14718 - Drop deprecated generator implementations
2021-12-09 07:45:44 -06:00
Steve Ebersole 703eaf22a0 HHH-14497 - Drop legacy id-generator settings;
HHH-14718 - Drop deprecated generator implementations
2021-12-09 07:20:28 -06:00
Steve Ebersole 7a6cef5838 Miscellaneous
- Finished DialectVersion
- User Guide tidying
- User Guide section on AttributeBinder
2021-12-09 00:51:40 -06:00
Steve Ebersole fa4b76702c HHH-14950 - Support mapping of embeddables with no setters (assuming a custom instantiator or repo-strategy is used)
Tests;
Remove `ComponentTuplizer` and friends;
Remove `ComponentMetadata`
2021-12-08 21:17:05 -06:00
Steve Ebersole 09cc6d7b00 HHH-14950 - Support mapping of embeddables with no setters (assuming a custom instantiator or repo-strategy is used)
Tests
2021-12-08 17:42:13 -06:00
Steve Ebersole 37bc00e567 HHH-10558 - Add support for java.time.Year;
HHH-13393 - Add support for ZoneId

ZoneOffsetJavaTypeDescriptor was already added
2021-12-08 17:31:02 -06:00
Gavin King 61cba87096 fix the signature of Session.merge()
previously Session.merge() erased the generic type parameter
inherited from the supertype, obligating the client code to
perform a typecast
2021-12-08 17:01:21 -05: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 d354d49ab1 added `DatabaseVersion#getCanonicalVersion` 2021-12-08 15:07:30 -06:00
Steve Ebersole 43206b02fc initial work on DatabaseVersion#isAfter 2021-12-08 15:07:30 -06:00
Steve Ebersole ad48a01e2c Fix PropertyBinder to use HCANNHelper to resolve meta-annotations 2021-12-08 14:54:13 -06:00
Steve Ebersole 848c9f0914 HHH-14497 - Drop legacy id-generator settings;
HHH-14718 - Drop deprecated generator implementations;
HHH-14959 - Drop IdentifierGeneratorFactory as a Service;
HHH-14960 - Add @GeneratorType for better custom generator config;
HHH-14496 - Deprecate (or drop) IdGeneratorStrategyInterpreter;
HHH-14961 - Deprecate (or drop) IdentifierGeneratorStrategyProvider;
HHH-14962 - Delay actual creation of IdentifierGenerator instances as late as possible

Add `GenerationTypeStrategy` and `GenerationTypeStrategyRegistration`;
deprecate org.hibernate.jpa.spi.IdentifierGeneratorStrategyProvider
2021-12-08 14:35:09 -06:00
Steve Ebersole 3c97ac2077 HHH-14497 - Drop legacy id-generator settings;
HHH-14718 - Drop deprecated generator implementations;
HHH-14959 - Drop IdentifierGeneratorFactory as a Service;
HHH-14960 - Add @GeneratorType for better custom generator config

Fixed CustomGeneratorTests failure on databases which do not support sequences
2021-12-08 14:35:09 -06:00
Steve Ebersole 1e8f6f9bbd HHH-14497 - Drop legacy id-generator settings;
HHH-14718 - Drop deprecated generator implementations;
HHH-14959 - Drop IdentifierGeneratorFactory as a Service;
HHH-14960 - Add @GeneratorType for better custom generator config

org.hibernate.id.factory.spi.StandardGenerator
2021-12-08 14:35:09 -06:00
Steve Ebersole c5ad9e129e HHH-14497 - Drop legacy id-generator settings;
HHH-14718 - Drop deprecated generator implementations;
HHH-14959 - Drop IdentifierGeneratorFactory as a Service;
HHH-14960 - Add @GeneratorType for better custom generator config
2021-12-08 14:35:09 -06:00
Steve Ebersole ce4f22f400 HHH-14497 - Drop legacy id-generator settings;
HHH-14718 - Drop deprecated generator implementations;
HHH-14959 - Drop IdentifierGeneratorFactory as a Service;
HHH-14960 - Add @GeneratorType for better custom generator config
2021-12-08 14:35:09 -06:00
Steve Ebersole c394261508 HHH-14497 - Drop legacy id-generator settings;
HHH-14718 - Drop deprecated generator implementations;
HHH-14959 - Drop IdentifierGeneratorFactory as a Service
2021-12-08 14:35:02 -06:00
Gavin King ce3644e81d add a wildcard to generic type
and slightly improve javadoc
2021-12-08 08:44:09 -05:00
Gavin King 13983e1449 detect the MultiTenantConnectionProvider when registered as a service
instead of looking at the property
2021-12-08 08:44:09 -05:00
Gavin King 6d43d62a5a fix test fallout from rebase
update test to jakarta package name
and refix moved tests
2021-12-08 08:44:09 -05:00
Gavin King 8f7e0c4c2f HHH-6054 introduce notion of a "root" tenant 2021-12-08 08:44:09 -05:00
Gavin King 47d0b1265f improve the test for tenant ids 2021-12-08 08:44:09 -05:00
Gavin King 341eb413f0 clean up PropertyBinder a bit 2021-12-08 08:44:09 -05:00
Gavin King 2a2bf17f8f redefine AttributeAccessor in terms of the new AttributeBinder API 2021-12-08 08:44:09 -05:00
Gavin King 5837a60e71 HHH-6054 introduce AttributeBinder and @AttributeBinderType
and introduce TenantIdBinder on top of this stuff
also make @TenantId imply non-null, immutable
2021-12-08 08:44:09 -05:00
Gavin King ea0dd35362 HHH-6054 improve error checking 2021-12-08 08:44:09 -05:00
Gavin King 8af548b52d HHH-6054 allow ValueGenerator to inspect current value of property
use this to throw exception from TenantIdGeneration
2021-12-08 08:44:09 -05:00
Gavin King 505bea6ffd HHH-6054 support for discriminator-based multitenancy
added the @TenantId annotation
also allow @TenantId @Formula
2021-12-08 08:44:09 -05:00
gavin b2e6965577 remove MultiTenancyStrategy
Use the existence of a MultiTenantConnectionProvider to infer that multitenancy is enabled.
2021-12-08 08:44:09 -05: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
Andrea Boriero 189bc54dbd Fix EntityEntry loaded state for persistent arrays 2021-12-07 16:30:57 +01: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
Andrea Boriero c959c7656c Fix IdentifiableType#getId(Class<Y> type) failing for primitive types 2021-12-07 12:49:10 +01:00
Yoann Rodière 37d3b66ce4 HHH-14922 Give precedence to default catalog/schema over implicit catalog/schema 2021-12-07 08:25:50 +01:00
Yoann Rodière 30e3aa4e7f HHH-14922 Delay applying the implicit catalog/schema until schema management tool or session factory creation
This is necessary if we want the default catalog/schema to take
precedence, since the default catalog/schema is applied late,
on schema management tool or session factory creation.
2021-12-07 08:25:50 +01:00
Yoann Rodière 8f1d1c43ce HHH-14922 Test behavior when setting both implicit catalog/schema and default catalog/schema 2021-12-07 08:25:50 +01:00
Yoann Rodière aafacbec47 HHH-14921 Test handling of default catalog and schema when not configured during metadata creation 2021-12-07 08:25:50 +01:00
Yoann Rodière 944c90061a HHH-14921 Test handling of default catalog and schema 2021-12-07 08:25:50 +01:00
Yoann Rodière 4d5306a82d HHH-14921 Delay determination of the default catalog/schema until schema management tool or session factory creation 2021-12-07 08:25:50 +01:00
Yoann Rodière 495bd51caa HHH-14921 Always use SqlStringGenerationContext for generation of SQL strings involving table/sequence names 2021-12-07 08:25:50 +01:00
Yoann Rodière b6f833441a HHH-14921 Delay generation of SQL strings by identifier generators until schema export or session factory creation 2021-12-07 08:25:50 +01:00
Yoann Rodière 0c644fa16d HHH-14921 Remove unused method PersistentIdentifierGenerator#generatorKey 2021-12-07 08:25:50 +01:00
Yoann Rodière 16524e2f67 HHH-14921 Remove a few unused SQL generation methods in identifier generators
They are getting in the way of changes related to the default schema
2021-12-07 08:25:50 +01:00
Yoann Rodière cc13379c77 HHH-14921 Clarify that org.hibernate.mapping.AuxiliaryDatabaseObject has been replaced with org.hibernate.boot.model.relational.AuxiliaryDatabaseObject 2021-12-07 08:25:50 +01:00
Yoann Rodière 012bcd1cfb HHH-14921 Clarify the ability of IdentifierGenerator to be configured and to register exportables 2021-12-07 08:25:50 +01:00
Christian Beikov 05d536d345 Polishing: fix wrong variable name 2021-12-06 20:29:59 +01:00
Christian Beikov e1a976bce0 HHH-14211 Switch to using oid for CLOB in PostgreSQL to avoid losing data after vacuumlo 2021-12-06 20:27:55 +01:00
Steve Ebersole 0f46ee2466 Tests for checking multiple execution of EmbeddableInitializers 2021-12-06 13:26:48 -06:00
Steve Ebersole 099dd55b94 Tests for checking multiple execution of EmbeddableInitializers 2021-12-06 12:30:10 -06:00
Andrea Boriero acc870ea14 Merge branch 'wip/6.0' of https://github.com/hibernate/hibernate-orm into wip/6.0 2021-12-06 17:46:12 +01:00
Andrea Boriero 74a395d744 Merge branch 'main' into wip/6.0 2021-12-06 17:39:07 +01:00
Christian Beikov bab32c3100 Small cleanup and add migration guide sections 2021-12-06 17:21:25 +01:00
Steve Ebersole 9028adc30e Clean up test logging (hibernate-core) 2021-12-06 10:12:25 -06:00
Christian Beikov 2d871d64f2 HHH-14897 Allow ordering with nulls first/last in JPA Criteria 2021-12-06 16:49:20 +01:00
Andrea Boriero 7dc70e9350 Fix ToOneAttributeMapping bidirectionalAttributeName value determination 2021-12-06 16:43:44 +01:00
Fabio Massimo Ercoli 71204a9e97 Test load contained in double containing 2021-12-06 16:43:44 +01:00
Steve Ebersole 087d486d6b Tests for debugging potential multiple calls to EmbeddableInstantiators 2021-12-04 13:53:10 -06:00
Steve Ebersole 9287b97cd3 HHH-14949 - Support @Access on @ElementCollection (for embeddable elements)
Fix
2021-12-03 15:32:13 -06:00
Steve Ebersole 86799d6c28 HHH-14949 - Support @Access on @ElementCollection (for embeddable elements)
Test
2021-12-03 15:32:13 -06:00
Steve Ebersole c190d37a57 initial work on DialectVersionDetails.isAfterDatabaseVersion 2021-12-02 21:36:52 -06:00
Steve Ebersole 9367561fe4 6.0 Beta2 2021-12-02 16:46:09 -06:00
Steve Ebersole 8203da2de1 Fix EnhancedProxy with Embeddable and Lazy BasicAttribute
- added log message when this condition occurs
- tried adding a `LoggerInspectionRule` based assertion to the test, but found that that rule is unfortunately very dependent on the message actually being logged
2021-12-02 15:44:17 -06:00
Fabio Massimo Ercoli 9f155a95ab Fix EnhancedProxy with Embeddable and Lazy BasicAttribute 2021-12-02 15:44:17 -06:00
Jan Schatteman 69cd716e37
Revert deprecations on main (#4412)
* Revert "HHH-14857 - Deprecations in preparation for 6"

This reverts commit 91e29358be.

* Revert "HHH-14857 - Deprecations in preparation for 6"

This reverts commit e4b56b9271.
2021-12-02 22:06:01 +01:00
Steve Ebersole ae25b651ca HHH-14885 - New composite user-type
HHH-14951 - Add @EmbeddableRepresentationStrategy

Prep work for `@EmbeddableRepresentationStrategy` - mostly move things from spi package to api, generally all marked `@Incubating`
2021-12-02 14:49:23 -06:00
Steve Ebersole e06a3dcdbc HHH-14885 - New composite user-type
HHH-14950 - Support mapping of embeddables with no setters (assuming a custom instantiator or repo-strategy is used)

Tests illustrating that HHH-14950 does indeed happen
2021-12-02 12:49:16 -06:00
Steve Ebersole 4b69854b9c HHH-14885 - New composite user-type
Initial work on interface-based embeddables with custom instantiator
2021-12-02 12:42:14 -06:00
Steve Ebersole 8339dffb88 HHH-14885 - New composite user-type
Initial work on interface-based embeddables
2021-12-02 06:52:22 -06:00
Christian Beikov 4cdc1c24fa Cleanup some model part APIs 2021-12-02 13:20:47 +01:00
Christian Beikov 47416b9e24 Fixup review comments 2021-12-02 13:17:53 +01:00
Andrea Boriero 9392b94ee7 Fix MatchingIdSelectionHelper#selectMatchingIds 2021-12-02 13:17:53 +01:00
Andrea Boriero b436392167 Re-enable additional tests 2021-12-02 13:17:53 +01:00
Andrea Boriero 7fa5d45175 Fix resolving id columns for NativeQuery with inplicit joins and aliases 2021-12-02 13:17:53 +01:00
Andrea Boriero 9bd5360bf2 Re-enabled additional tests 2021-12-02 13:17:53 +01:00
Andrea Boriero 9ef99082e1 Re-enabled additional tests 2021-12-02 13:17:53 +01:00
Andrea Boriero 0fd83cf649 Fix resolving id columns for NativeQuery with inplicit joins and aliases 2021-12-02 13:17:53 +01:00
Andrea Boriero 91cc3d8d51 Re-enabled additional tests 2021-12-02 13:17:53 +01:00
Andrea Boriero 16460cf3ab Re-enable additional tests 2021-12-02 13:17:53 +01:00
Fabio Massimo Ercoli 430071027c Avoid to recreate the DomainParameterXref twice 2021-12-02 12:53:57 +01:00
Fabio Massimo Ercoli 427204910c Cache only immutable part of HqlInterpretation
So that it can be reused safely from different threads
2021-12-02 12:53:57 +01:00
Fabio Massimo Ercoli 8c369f1998 Test concurrent queries with multiple params 2021-12-02 12:53:57 +01:00
Andrea Boriero 8d9ce9cd0e Fix test failures for MySql, Derby and Sybase 2021-12-02 11:35:47 +01:00
Steve Ebersole 9137b9e79a HHH-14885 - New composite user-type
`@EmbeddableInstantiatorRegistration`
2021-12-01 20:47:14 -06:00
Steve Ebersole 61d178ef1b HHH-14885 - New composite user-type
`@EmbeddableInstantiatorRegistration`
2021-12-01 18:16:29 -06:00
Steve Ebersole 924c2b29c3 HHH-14885 - New composite user-type
Working support for `@EmbeddableInstantiator` on either the embedded site or on the embeddable class.
2021-12-01 17:35:43 -06:00
Steve Ebersole 8ab27a0ff0 Introduce `VirtualIdEmbeddable` and `IdClassEmbeddable` + instantiators
- shared `#finishInitialization` handling for `VirtualIdEmbeddable` and `IdClassEmbeddable`
      note: was not yet able to get that working with `EmbeddableMappingType`
  - clean up ComponentType, esp wrt its use of ComponentTuplizer

Still need to
  - integrate embedded forms.  `VirtualIdEmbeddable` does not really need it as it can use the id-mapping itself as the embedded form.  But `IdClassEmbedded` should really be integrated
  - integrate `VirtualKeyEmbeddable` and `VirtualKeyEmbedded` for use as inverse composite fks
  - ability to use the containing composite owner as the parent of a composite (legacy behavior is to always use the "first" entity
2021-12-01 13:48:51 -06:00
Steve Ebersole 55bfc59db1 fix gradle deprecations 2021-12-01 11:50:36 -06:00
Sanne Grinovero 334aeb1349 HHH-14946 Upgrading base requirements to Java 11 2021-12-01 17:34:28 +00:00
Steve Ebersole dc744844e4 Introduce `VirtualIdEmbeddable` and `IdClassEmbeddable` + instantiators
- Clean up Component Type, removing as many calls to its tuplizer as possible atm
- Clean up ManagedMappingType, EntityPersister, etc - mainly work around getting and setting value(s)

Still need to
  - integrate embedded forms.  `VirtualIdEmbeddable` does not really need it as it can use the id-mapping itself as the embedded form.  But `IdClassEmbedded` should really be integrated
  - integrate `VirtualKeyEmbeddable` and `VirtualKeyEmbedded` for use as inverse composite fks
  - share `#finishInit` handling for `EmbeddableMappingType`, `VirtualIdEmbeddable` and `IdClassEmbeddable`
  - ability to use the containing composite owner as the parent of a composite (legacy behavior is to always use the "first" entity
  - clean up ComponentType, esp wrt its use of ComponentTuplizer
2021-12-01 11:33:03 -06:00
Steve Ebersole b23c2f48c1 Introduce `VirtualIdEmbeddable` and `IdClassEmbeddable` + instantiators
- Clean up Component Type, removing as many calls to its tuplizer as possible atm
- Clean up ManagedMappingType, EntityPersister, etc - mainly work around getting and setting value(s)

Still need to
  - integrate embedded forms.  `VirtualIdEmbeddable` does not really need it as it can use the id-mapping itself as the embedded form.  But `IdClassEmbedded` should really be integrated
  - integrate `VirtualKeyEmbeddable` and `VirtualKeyEmbedded` for use as inverse composite fks
  - share `#finishInit` handling for `EmbeddableMappingType`, `VirtualIdEmbeddable` and `IdClassEmbeddable`
  - ability to use the containing composite owner as the parent of a composite (legacy behavior is to always use the "first" entity
  - clean up ComponentType, esp wrt its use of ComponentTuplizer
2021-12-01 11:33:03 -06:00
Steve Ebersole eb5afb0427 Introduce `VirtualIdEmbeddable` and `IdClassEmbeddable` + instantiators
Move all component instantiations to use the new mapping model EmbeddableInstantiator

Still need to
  - integrate embedded forms.  `VirtualIdEmbeddable` does not really need it as it can use the id-mapping itself as the embedded form.  But `IdClassEmbedded` should really be integrated
  - integrate `VirtualKeyEmbeddable` and `VirtualKeyEmbedded` for use as inverse composite fks
  - share `#finishInit` handling for `EmbeddableMappingType`, `VirtualIdEmbeddable` and `IdClassEmbeddable`
  - ability to use the containing composite owner as the parent of a composite (legacy behavior is to always use the "first" entity
  - clean up ComponentType, esp wrt its use of ComponentTuplizer
2021-12-01 11:33:03 -06:00
Steve Ebersole 5b44aa5d44 Introduce `VirtualIdEmbeddable` and `IdClassEmbeddable` + instantiators
EmbeddableInitializer fully uses EmbeddableInstantiator and value injection

Still need to
  - integrate EmbeddableInstantiator work (ComponentType/ComponentTuplizer)
  - integrate embedded forms.  `VirtualIdEmbeddable` does not really need it as it can use the id-mapping itself as the embedded form.  But `IdClassEmbedded` should really be integrated
  - integrate `VirtualKeyEmbeddable` and `VirtualKeyEmbedded` for use as inverse composite fks
  - share `#finishInit` handling for `EmbeddableMappingType`, `VirtualIdEmbeddable` and `IdClassEmbeddable`
  - ability to use the containing composite owner as the parent of a composite (legacy behavior is to always use the "first" entity
2021-12-01 11:33:03 -06:00
Steve Ebersole a9fce4b69d Introduce `VirtualIdEmbeddable` and `IdClassEmbeddable` + instantiators
EmbeddableInitializer fully uses EmbeddableInstantiator and value injection

Still need to
  - integrate EmbeddableInstantiator work (ComponentType/ComponentTuplizer)
  - integrate embedded forms.  `VirtualIdEmbeddable` does not really need it as it can use the id-mapping itself as the embedded form.  But `IdClassEmbedded` should really be integrated
  - integrate `VirtualKeyEmbeddable` and `VirtualKeyEmbedded` for use as inverse composite fks
  - share `#finishInit` handling for `EmbeddableMappingType`, `VirtualIdEmbeddable` and `IdClassEmbeddable`
  - ability to use the containing composite owner as the parent of a composite (legacy behavior is to always use the "first" entity
2021-12-01 11:33:03 -06:00
Steve Ebersole 82d884d65c Introduce `VirtualIdEmbeddable` and `IdClassEmbeddable` + instantiators
Prep work for EmbeddableInstantiator - initializer

Still need to
  - integrate EmbeddableInstantiator work
  - integrate embedded forms.  `VirtualIdEmbeddable` does not really need it as it can use the id-mapping itself as the embedded form.  But `IdClassEmbedded` should really be integrated
  - integrate `VirtualKeyEmbeddable` and `VirtualKeyEmbedded` for use as inverse composite fks
  - share `#finishInit` handling for `EmbeddableMappingType`, `VirtualIdEmbeddable` and `IdClassEmbeddable`
  - ability to use the containing composite owner as the parent of a composite (legacy behavior is to always use the "first" entity
2021-12-01 11:33:03 -06:00
Steve Ebersole 42d1fcca19 Introduce `VirtualIdEmbeddable` and `IdClassEmbeddable` + instantiators
Prep work for EmbeddableInstantiator - initializer

Still need to
  - integrate EmbeddableInstantiator work
  - integrate embedded forms.  `VirtualIdEmbeddable` does not really need it as it can use the id-mapping itself as the embedded form.  But `IdClassEmbedded` should really be integrated
  - integrate `VirtualKeyEmbeddable` and `VirtualKeyEmbedded` for use as inverse composite fks
  - share `#finishInit` handling for `EmbeddableMappingType`, `VirtualIdEmbeddable` and `IdClassEmbeddable`
  - ability to use the containing composite owner as the parent of a composite (legacy behavior is to always use the "first" entity
2021-12-01 11:33:03 -06:00
Steve Ebersole 142299e7a8 Introduce `VirtualIdEmbeddable` and `IdClassEmbeddable` + instantiators
Prep work for EmbeddableInstantiator - initializer

Still need to
  - integrate EmbeddableInstantiator work
  - integrate embedded forms.  `VirtualIdEmbeddable` does not really need it as it can use the id-mapping itself as the embedded form.  But `IdClassEmbedded` should really be integrated
  - integrate `VirtualKeyEmbeddable` and `VirtualKeyEmbedded` for use as inverse composite fks
  - share `#finishInit` handling for `EmbeddableMappingType`, `VirtualIdEmbeddable` and `IdClassEmbeddable`
  - ability to use the containing composite owner as the parent of a composite (legacy behavior is to always use the "first" entity
2021-12-01 11:33:03 -06:00
Steve Ebersole 29ed0a0566 Introduce `VirtualIdEmbeddable` and `IdClassEmbeddable` + instantiators
Prep work for EmbeddableInstantiator - initializer

Still need to
  - integrate EmbeddableInstantiator work
  - integrate embedded forms.  `VirtualIdEmbeddable` does not really need it as it can use the id-mapping itself as the embedded form.  But `IdClassEmbedded` should really be integrated
  - integrate `VirtualKeyEmbeddable` and `VirtualKeyEmbedded` for use as inverse composite fks
  - share `#finishInit` handling for `EmbeddableMappingType`, `VirtualIdEmbeddable` and `IdClassEmbeddable`
  - ability to use the containing composite owner as the parent of a composite (legacy behavior is to always use the "first" entity
2021-12-01 11:33:03 -06:00
Steve Ebersole 01c6b144ce Introduce `VirtualIdEmbeddable` and `IdClassEmbeddable` + instantiators
Prep work for EmbeddableInstantiator - initializer

Still need to
  - integrate EmbeddableInstantiator work
  - integrate embedded forms.  `VirtualIdEmbeddable` does not really need it as it can use the id-mapping itself as the embedded form.  But `IdClassEmbedded` should really be integrated
  - integrate `VirtualKeyEmbeddable` and `VirtualKeyEmbedded` for use as inverse composite fks
  - share `#finishInit` handling for `EmbeddableMappingType`, `VirtualIdEmbeddable` and `IdClassEmbeddable`
  - ability to use the containing composite owner as the parent of a composite (legacy behavior is to always use the "first" entity
2021-12-01 11:33:03 -06:00
Steve Ebersole 185bcd43aa Introduce `VirtualIdEmbeddable` and `IdClassEmbeddable` + instantiators
Prep work for EmbeddableInstantiator - initializer

Still need to
  - integrate EmbeddableInstantiator work
  - integrate embedded forms.  `VirtualIdEmbeddable` does not really need it as it can use the id-mapping itself as the embedded form.  But `IdClassEmbedded` should really be integrated
  - integrate `VirtualKeyEmbeddable` and `VirtualKeyEmbedded` for use as inverse composite fks
  - share `#finishInit` handling for `EmbeddableMappingType`, `VirtualIdEmbeddable` and `IdClassEmbeddable`
  - ability to use the containing composite owner as the parent of a composite (legacy behavior is to always use the "first" entity
2021-12-01 11:33:03 -06:00
Steve Ebersole d506bb379c Introduce `VirtualIdEmbeddable` and `IdClassEmbeddable` + instantiators
More clean-up (Tuplizers!!)

Mostly EntityTuplizer in this commit

Still need to
  - integrate EmbeddableInstantiator work
  - integrate embedded forms.  `VirtualIdEmbeddable` does not really need it as it can use the id-mapping itself as the embedded form.  But `IdClassEmbedded` should really be integrated
  - integrate `VirtualKeyEmbeddable` and `VirtualKeyEmbedded` for use as inverse composite fks
  - share `#finishInit` handling for `EmbeddableMappingType`, `VirtualIdEmbeddable` and `IdClassEmbeddable`
2021-12-01 11:33:02 -06:00
Steve Ebersole bb2b0a6c47 Introduce `VirtualIdEmbeddable` and `IdClassEmbeddable`
Clean-up

Still need to
  - integrate EmbeddableInstantiator work
  - integrate embedded forms.  `VirtualIdEmbeddable` does not really need it as it can use the id-mapping itself as the embedded form.  But `IdClassEmbedded` should really be integrated
  - integrate `VirtualKeyEmbeddable` and `VirtualKeyEmbedded` for use as inverse composite fks
  - share `#finishInit` handling for `EmbeddableMappingType`, `VirtualIdEmbeddable` and `IdClassEmbeddable`
2021-12-01 11:33:02 -06:00
Steve Ebersole 0322d8fa84 Introduce `VirtualIdEmbeddable` and `IdClassEmbeddable`
EmbeddableInstantiator

Still need to
  - integrate EmbeddableInstantiator work
  - integrate embedded forms.  `VirtualIdEmbeddable` does not really need it as it can use the id-mapping itself as the embedded form.  But `IdClassEmbedded` should really be integrated
  - integrate `VirtualKeyEmbeddable` and `VirtualKeyEmbedded` for use as inverse composite fks
  - share `#finishInit` handling for `EmbeddableMappingType`, `VirtualIdEmbeddable` and `IdClassEmbeddable`
2021-12-01 11:33:02 -06:00
Steve Ebersole 546a635be9 Introduce `VirtualIdEmbeddable` and `IdClassEmbeddable`
Added new form of `SqlExpressionResolver#createColumnReferenceKey`

Still need to
  - integrate EmbeddableInstantiator work
  - integrate embedded forms.  `VirtualIdEmbeddable` does not really need it as it can use the id-mapping itself as the embedded form.  But `IdClassEmbedded` should really be integrated
  - integrate `VirtualKeyEmbeddable` and `VirtualKeyEmbedded` for use as inverse composite fks
  - share `#finishInit` handling for `EmbeddableMappingType`, `VirtualIdEmbeddable` and `IdClassEmbeddable`
2021-12-01 11:33:02 -06:00
Steve Ebersole 86e8b2751c Introduce `VirtualIdEmbeddable` and `IdClassEmbeddable`
This 3rd commit cleans up some code

Still need to
  - integrate EmbeddableInstantiator work
  - integrate embedded forms.  `VirtualIdEmbeddable` does not really need it as it can use the id-mapping itself as the embedded form.  But `IdClassEmbedded` should really be integrated
  - integrate `VirtualKeyEmbeddable` and `VirtualKeyEmbedded` for use as inverse composite fks
  - share `#finishInit` handling for `EmbeddableMappingType`, `VirtualIdEmbeddable` and `IdClassEmbeddable`
2021-12-01 11:33:02 -06:00
Steve Ebersole dd4f380ea9 Introduce `VirtualIdEmbeddable` and `IdClassEmbeddable`
This second commit renames `EmbeddableMappingType`

Still need to
  - integrate EmbeddableInstantiator work
  - integrate embedded forms.  `VirtualIdEmbeddable` does not really need it as it can use the id-mapping itself as the embedded form.  But `IdClassEmbedded` should really be integrated
  - integrate `VirtualKeyEmbeddable` and `VirtualKeyEmbedded` for use as inverse composite fks
  - share `#finishInit` handling for `EmbeddableMappingType`, `VirtualIdEmbeddable` and `IdClassEmbeddable`
2021-12-01 11:33:02 -06:00
Steve Ebersole 524b46b246 Introduce `VirtualIdEmbeddable` and `IdClassEmbeddable`
This initial commit is scaled back - it only introduces the embeddable forms and supporting changes.

Still need to
  - integrate EmbeddableInstantiator work
  - integrate embedded forms.  `VirtualIdEmbeddable` does not really need it as it can use the id-mapping itself as the embedded form.  But `IdClassEmbedded` should really be integrated
  - integrate `VirtualKeyEmbeddable` and `VirtualKeyEmbedded` for use as inverse composite fks
2021-12-01 11:33:02 -06:00
Sanne Grinovero 25d8fda12c Improve reliability of ProposedGeneratedTests 2021-12-01 15:53:28 +00:00