Commit Graph

328 Commits

Author SHA1 Message Date
Steve Ebersole 96f4a350e0 * HBM mappings
* dynamic models
* initial non-aggregated cid support
2020-04-27 15:21:09 -05:00
Andrea Boriero 7f4c25095e Implement Composite Foreign Key for EmbeddedId 2020-04-21 16:44:03 -05:00
Steve Ebersole ced4f5e602 Various changes around how basic values are handled in terms of mapping consumption for annotations and how value conversions happen
* Split BasicType "resolution" into 2 - one used for reading (mapping model) versus one used from writing (legacy persister model)
* @SqlTypeCode, @SqlType, @SqlTypeRegistration
* @JavaType, @JavaTypeRegistration
* @Mutability
* jdbc_mappings.adoc section for DomainModel chapter

[*] At the moment, neither @SqlTypeRegistration nor @JavaTypeRegistration support has been implemented
[*] Still need to make sure @Mutability is propogated properly in all the cases
[*] jdbc_mappings.adoc still needs a lot of attention
2020-04-21 16:09:46 -05:00
Andrea Boriero 299826b9b7 HHH-13937 Get rid of junit5 compile-time dependencies 2020-04-14 14:23:29 +01:00
Andrea Boriero 5d1aea1897 Fix merge checkstyle and compilation errors 2020-04-09 11:07:00 +01:00
Andrea Boriero 5c86c4a805 Merge remote-tracking branch 'upstream/master' into wip/6.0_merge_29 2020-04-09 07:37:11 +01:00
Andrea Boriero b897a36f2f Fix issue with generated pom missing project description 2020-04-06 18:21:11 +01:00
Yoann Rodière bee15c498f HHH-13925 Fix malformed @author tags in javadoc
You're not supposed to use unescaped "<" or ">".

This wasn't detected by checkstyle in Gradle 5, but it is now, and that
fails the build.
2020-04-06 16:04:55 +02:00
Yoann Rodière aebf9d192f HHH-13925 Fix invalid javadoc syntax
This wasn't detected by checkstyle in Gradle 5, but it is now, and that
fails the build.
2020-04-06 16:04:55 +02:00
Nathan Xu 7e2987ac79 HHH-13877 - Make @SortNatural by default 2020-03-19 14:41:05 -05:00
Nathan Xu adc87b7908 various cosmetic code improvements 2020-03-19 13:12:12 -05:00
gavinking 10f333943d tests for HQL insert/update 2020-03-19 13:01:48 -05:00
Nathan Xu 7ee45f68ee wrap up verification for both @SortedSet and @SortedMap 2020-03-09 13:48:46 -05:00
Koen Aers 23f2cc584b Verify array support: add 'EntityOfArrays' case to the GambitDomainModel and the PluralAttributeMappingTests
Signed-off-by: Koen Aers <koen.aers@gmail.com>
2020-03-09 18:23:44 +00:00
The Geeky Asian b914b02dca HHH-13874 - Removing the @author added.
The newly added @author in the previous commit or deprecation messages has been removed in this commit.
2020-02-21 06:11:37 -06:00
The Geeky Asian e98e89d806 HHH-13874 - Messages added for the deprecated methods. 2020-02-21 06:11:37 -06:00
The Geeky Asian c4bd5937e3 HHH-13874 - Deprecating methods that will be removed soon
Two methods that are dropped in v6.0 are now marked as deprecated in this commit.

As discussed in the removal PR https://github.com/hibernate/hibernate-orm/pull/3229
2020-02-21 06:11:37 -06:00
The Geeky Asian e808041477 HHH-13856 - Long-awaited TODOs done as an improvement
1. TODO: Remove duplicate method from ConstraintConstaint.java currently has two duplicate methods. 1. getColumnIterator()2. columnIterator()

Both the methods return the same value i.e. column.iterator().

One of them needs to be removed in order to reduce and clean the duplication. 

2. TODO: Change method name for getXmlFiles in BaseCoreFunctionalTestCaseCurrently, in BaseCoreFunctionalTestCase a method named getXmlFiles()has a TODO placed that suggests the method name to be changed to getOrmXmlFiles().

Since the method has a protected scope, there is a possibility it is being used by other clients. Hence, changing the method name in minor versions might break the code for clients.
2020-02-20 10:54:50 -06:00
Fabio Massimo Ercoli ccc3c58367 HH-13720 Test mapping model support for plural attributes - sorted map 2020-02-19 06:52:38 -06:00
Andrea Boriero 08b08c0d81 Re-enabled few more tests 2020-02-17 11:24:01 -06:00
gavinking 4f5b37c9c4 Use SequenceSupport everywhere instead of deprecated methods of Dialect 2020-01-30 14:01:34 -06:00
gavinking 9565d499af Big merge of my branch with new Hibernate 6 codebase
Lots of new functionality here related to HQL functions, SQL
dialects, and date/time handling.
2020-01-30 14:01:33 -06:00
Steve Ebersole eab6107ec2 HHH-13785 : HQL/Criteria function support
- temporal literals
- generalized literals
- literal formatters (SQL string generation)
- FORMAT function
2020-01-06 08:38:08 -06:00
Steve Ebersole a39fa09650 HHH-13785 : HQL/Criteria function support
- tests
- Dialect changes
2019-12-21 19:38:22 -06:00
Steve Ebersole 0ec232a326 HHH-13778: `@OrderBy` handling using SQL AST
- complete support other than function support which is still overall not implemented
2019-12-16 15:02:19 -06:00
Andrea Boriero 1d4bb08ef7 Merge remote-tracking branch 'upstream/master' into wip/6.0_merge_16 2019-12-16 12:43:47 +00:00
Steve Ebersole 284b2c5677 HHH-13778: `@OrderBy` handling using SQL AST
- parsing in PluralAttributeMapping implemented
- still need to convert the OrderByFragment to SQL AST and add to the SQL AST order-by-clause
2019-12-12 13:34:37 -06:00
Davide D'Alto dd79fda20d HHH-13704 Remove unused javassist import 2019-12-12 10:33:32 +00:00
Nathan Xu 3a69b74894 HHH-13456 refactor ForeignGenerator to allow for the possibility of StatelessSession 2019-12-11 17:37:31 -06:00
Andrea Boriero 1363844ca0 Implement support for @Embeddable with ToMany and ToOne 2019-12-10 10:00:10 +00:00
Andrea Boriero 79c83cf8ba Merge remote-tracking branch 'upstream/master' into wip/6.0 2019-12-09 12:07:23 +00:00
Nathan Xu ab9ae43185 HHH-8901 replace "in ()" SQL with "in (null)" in QueryParameterBindingsImpl 2019-12-04 16:05:10 +00:00
Andrea Boriero d2865a54df Merge remote-tracking branch 'upstream5/master' into wip/6.0_merge_15 2019-12-02 09:14:27 +00:00
Steve Ebersole 75d436ab25 HHH-13720: Implement mapping model support for plural attributes - sorted set;
HHH-13715: HQL/Criteria DELETE support - support for cleaning-up collection tables
2019-11-27 12:06:21 -06:00
Steve Ebersole 7b489b180c HH-13720: Implement mapping model support for plural attributes - sorted set 2019-11-27 07:23:28 -06:00
Steve Ebersole afb9f9770d HHH-13746: Implement Load by Multiple Ids using SQL AST
composite id testing
2019-11-26 15:12:54 -06:00
Steve Ebersole 0c6c8b4406 more work on multi-id entity loading and key-based loading in general 2019-11-25 15:58:50 -06:00
Jan-Willem Gmelig Meyling 21e79125e6 HHH-9301 - Support select variable refs in group by for DBMS dialects that support it
While not strictly compliant with the SQL specification, the MySQL, PostgreSQL and H2 support the use of select aliases in the GROUP BY clause. An obvious benefit is that produced SQL queries will be easier to read, because complex select expressions from aggregrate queries will have to be included in the group by clause as well. These can now simply reference the aliases of the respective columns for the tuple element. However, there is also a functional difference. For function invocations that have parameterized arguments, the query optimizer can't guarantee the that the function result between the selection projection and grouping process are equal. This results in an error because a value is projected which is not grouped by. An example where this for example becomes relevant, is when parameterizing TimeScaleDB's [`time_bucket_gapfill()`](https://docs.timescale.com/latest/api#time_bucket_gapfill-examples) function.

For example, using `time_bucket_gapfill()` one might want to produce a criteria query that produces the following SQL:

```sql
SELECT
    time_bucket_gapfill(?, time, ?, ?) AS ts,
    avg(tg) as tg
FROM iaqmeasurement
GROUP BY ts
ORDER BY ts;
```

When the alias is not used as grouping value, the query will yield an error:

```sql
SELECT
    time_bucket_gapfill(?, time, ?, ?) AS ts,
    avg(tg) as tg
FROM iaqmeasurement
GROUP BY time_bucket_gapfill(?, time, ?, ?)
ORDER BY ts;
```

Of course the parameter values can just be stored in a CTE as well, but I think we should consider support for variable refs in group by for DBMS dialects that support it. This pull request implements the feature equivalently to how its currently done for order by clauses, and only enables the feature for known supported dialects (H2, PostgreSQL and MySQL - based on [https://stackoverflow.com/a/3841804/2104280](https://stackoverflow.com/a/3841804/2104280)).

Jira: https://hibernate.atlassian.net/browse/HHH-9301

Co-authored-by: Sayra Ranjha <S.S.Ranjha@student.tudelft.nl>
2019-11-25 14:57:17 +00:00
Steve Ebersole 0ec5af2985 HHH-13746 - Implement load-by-multiple-ids using SQL AST 2019-11-23 13:39:48 -06:00
Andrea Boriero f1bf079122 Merge remote-tracking branch 'upstream5/master' into wip/6.0_merge_14 2019-11-22 09:05:57 +00:00
Andrea Boriero 9a0ad0f21d work on aggregate composite identifier 2019-11-21 17:43:25 -06:00
Steve Ebersole 7576b51407 pull over "legacy 6.0" tests 2019-11-21 14:48:38 -06:00
Andrea Boriero 343dd979ba HHH-13725 ToMany FkDescriptor creation and circular fetch detecion 2019-11-20 10:38:24 -06:00
Andrea Boriero 97f9d4ce00 HHH-13725 Work on circular fetc detection 2019-11-20 10:38:24 -06:00
Andrea Boriero ed49f6abcf HHH-13725 - Implement ManyToOne with Join Table associations support 2019-11-15 12:13:40 -06:00
Sanne Grinovero 164e1fc7cc HHH-13687 TenantSchemaResolver not called in integration test after upgrade from 2019-11-12 17:40:59 +00:00
Steve Ebersole dd0b6a9da3 Revert "HHH-13656 Con not build and run test on Eclipse IDE"
This reverts commit f6fad942df.
2019-11-08 07:07:56 -06:00
Steve Ebersole 7e34be04db Revert "HHH-13656 Can not build and run test on Eclipse IDE"
This reverts commit 0f859e7bb4.
2019-11-08 06:50:59 -06:00
hailtondecastro 0f859e7bb4 HHH-13656 Can not build and run test on Eclipse IDE
Eclipse windows
2019-11-01 11:23:36 -05:00
hailtondecastro f6fad942df HHH-13656 Con not build and run test on Eclipse IDE
Eclipse windows
2019-11-01 11:23:36 -05:00