Commit Graph

11626 Commits

Author SHA1 Message Date
Marco Belladelli 67f573a6bf HHH-17777 Enforce no alias on fetch joins when jpa compliance is enabled 2024-03-14 12:05:52 +01:00
Marco Belladelli 3ce10df785 HHH-17777 Reuse existing fetch-joins if requesting the same join type 2024-03-14 12:05:52 +01:00
Marco Belladelli b3955d7d75 HHH-17777 Add test for issue 2024-03-14 12:05:52 +01:00
marko-bekhta ed4910790e HHH-17823 Add FK to identifier in HQL parser 2024-03-14 12:00:00 +01:00
Gavin King e3076966c7 even more javadoc for Expectation 2024-03-13 23:07:34 +01:00
Gavin King 9deb3ea6ae improve package-level doc of org.hibernate.jdbc 2024-03-13 20:38:13 +01:00
Gavin King bf1c37b722 HHH-15587 some enhancements and cleanups to Expectations stuff 2024-03-13 20:38:13 +01:00
Gavin King d95084a59a HHH-17833 turn two more warnings into exceptions 2024-03-13 19:40:41 +01:00
Gavin King 2f746f8004 cleanups (mostly formatting) around EntityBinder + friends 2024-03-13 19:40:41 +01:00
Gavin King 31b075a274 reallow @Table on single table subclass
as long as the table names agree

needed for the JPA TCK
2024-03-13 18:28:25 +01:00
Marco Belladelli f6fed506fc HHH-17711 Fix table reference join resolution for joined subtype 2024-03-13 09:59:05 -05:00
Marco Belladelli 83e844c1e8 HHH-17711 Add test for issue 2024-03-13 09:59:05 -05:00
Gavin King 2b8f363e7b HHH-15587 replace use of enums for specifying Expectations
use of class objects is simpler, more elegant, and more flexible
2024-03-13 12:49:49 +01:00
Gavin King 2451268f16 HHH-17773 more Javadoc for new pagination APIs 2024-03-12 23:43:45 +01:00
Gavin King 276a93e95e HHH-17773 review and improve API of Order class 2024-03-12 23:43:45 +01:00
Gavin King 6c5daedfd3 roll back a change, to make @sebersole's rebase easier
move IndexOrUniqueKeyNameSource back inside IndexBinder
2024-03-12 15:59:27 +01:00
Gavin King da9d2c2bf7 HHH-16985 use ImplicitNamingStrategy in a much more disciplined way
for generating constraint names
2024-03-12 15:59:27 +01:00
Gavin King 9c12ea8b11 HHH-17133 use ImplicitNamingStrategy for @NaturalId unique keys 2024-03-12 15:59:27 +01:00
Gavin King b75f173318 HHH-17836 use 'generated by default as identity' instead of 'serial'
on PostgreSQL
2024-03-11 17:15:08 +01:00
Gavin King 4eb4327a54 HHH-17825 fix npe for single-column @UniqueConstraint
Note that HHH-17132 already attempted to fix the reported
problem, but the fix introduced a new bug, and NPE.
2024-03-11 02:41:46 +01:00
Gavin King 53301b530d HHH-17833 change log warnings for invalid mappings to exceptions
finally decided to just put an end to this because it's bad and that's that
2024-03-11 00:13:41 +01:00
Gavin King 688bb8a222 introduce DiscriminatorOptionsBinder 2024-03-10 17:12:48 +01:00
Gavin King 76d7d4c3a8 split out FilterDefBinder 2024-03-10 16:01:07 +01:00
Gavin King 95ee026cb2 HHH-17831 make AttributeBinder work for collections and @Any
introduce BatchSizeBinder to prove it works
various cleanups in binders + mapping package
2024-03-10 13:41:54 +01:00
Gavin King 4a70a23212 fix typo 2024-03-10 09:57:34 +01:00
Gavin King 710d7acb6d HHH-9110 add test/example 2024-03-10 09:57:34 +01:00
Gavin King 17f1221db2 HHH-9110 make it easier to set ResultCheckType from TypeBinder
This was already possible, but not very comfortable when not also
setting custom SQL.
2024-03-10 09:57:34 +01:00
Gavin King 30b8cdeb84 more javadoc for pagination APIs 2024-03-09 21:13:14 +01:00
Gavin King ef16d42c65 allow collation names to be quoted 2024-03-09 20:32:25 +01:00
Marco Belladelli 971d673e88 HHH-17763 Run test only on H2 2024-03-08 12:42:35 +01:00
Marco Belladelli d475b59715 HHH-17806 Avoid joined + discriminator inheritance joins in more cases 2024-03-07 17:21:32 +01:00
Steve Ebersole ab01984807 HHH-17269 - Add hibernate.boot.allow_jdbc_metadata_access 2024-03-07 08:04:18 -06:00
Gavin King 39cd03d1a5 detect use of custom SQL with @DynamicInsert/@DynamicUpdate
and produce nice error
2024-03-07 14:56:59 +01:00
Marco Belladelli 18d88a4430 HHH-17638 Prevent reusing left joins for implicitly joined paths 2024-03-07 09:20:03 +01:00
Marco Belladelli 86dad3d702 HHH-17638 Add test for issue 2024-03-07 09:20:03 +01:00
Gavin King 5a7661be5c HHH-17807 fix NPE in array argument validation
probably only occurs when the argument is a parameter
2024-03-05 19:04:10 +01:00
jeonjonghyeok d21ddf31e5 HHH-17797 support query hint database indexes 2024-03-05 10:53:58 +01:00
Gavin King 004158cc58 HHH-17804 add tests for 'null in ()' 2024-03-05 10:34:20 +01:00
Jan Schatteman 955b587eb7 HHH-17776 - Fix whitespace padding issues for literals in select expressions on Derby and HSQLDB
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2024-03-05 09:20:40 +01:00
Jan Schatteman ee76f005aa HHH-17776 - Add test and fix
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2024-03-05 09:20:40 +01:00
Joey Gao 0d67d64ff4 HHH-17789 fix the blob/clob/nclob not free caused hana memory issue 2024-03-05 09:19:49 +01:00
Gavin King e7dea589ca HHH-17804 treat 'null in ()' correctly 2024-03-05 08:39:37 +01:00
Gavin King 492e947b4c enable test on HSQL and Derby 2024-03-04 22:30:01 +01:00
Gavin King 115ddffdbc fix constraint name extraction and 'on constraint' on MySQL 2024-03-04 20:52:50 +01:00
Gavin King a84ba5c8c9 fix some constraint name extractors, and improve matching of constraint name in 'on conflict on constraint'
add a test
2024-03-04 17:32:10 +01:00
Marco Belladelli 7aba13ee47 HHH-17763 Rely on action-specific `SchemaFilter` instances
Deprecated `ExecutionOptions#getSchemaFilter` which was always returning the default implementation (not filtering anything)
2024-03-04 17:14:18 +01:00
Marco Belladelli f30ebfabac HHH-17763 Add test for issue 2024-03-04 17:14:18 +01:00
Philippe Marschall 1874b58185 HHH-17791 Support SNAPSHOT versions of H2
https://hibernate.atlassian.net/browse/HHH-17791
2024-03-04 15:10:07 +01:00
Marco Belladelli 2716202caf HHH-17800 Fix CockroachDB transaction error when forcing connection acquisition 2024-03-04 15:05:14 +01:00
Marco Belladelli 841e4bedc7 HHH-17769 Ignore query options limit when rendering cte definitions 2024-03-04 14:19:35 +01:00
Marco Belladelli e80329f962 HHH-17769 Add test for issue 2024-03-04 14:19:35 +01:00
Gavin King e02317f3d6 HHH-17795 fix an NPE and add a test for 'on conflict on constraint' 2024-03-02 11:36:12 +01:00
Gavin King 4bc4ffe056 HHH-17778 rename jpametamodelgen -> processor 2024-03-01 22:58:59 +01:00
Gavin King 7636d78feb HHH-17778 rename JPAMetaModelEntityProcessor -> HibernateProcessor 2024-03-01 22:58:59 +01:00
Gavin King c020c97d8d HHH-17779 update Javadoc 2024-02-29 10:42:17 +01:00
Marco Belladelli 6f00449af1 HHH-17726 Cleanup java types missing same type in wrap/unwrap 2024-02-28 16:32:08 +01:00
Marco Belladelli 7f51c13fcf HHH-17726 Add test for issue 2024-02-28 16:32:08 +01:00
Gavin King 5d498c1063 HHH-17779 previous-page nativation for key-based pagination 2024-02-28 13:49:54 +01:00
Gavin King 1eff3c990b HHH-17779 misc improvements to key-based pagination 2024-02-28 13:49:54 +01:00
Gavin King ecb88be84a improve jdoc of an exception 2024-02-28 13:49:54 +01:00
datazuul 84bd2ec706 HHH-17275: Fix NPE in BooleanJavaType for converter returning NULL for relational value 2024-02-28 13:33:10 +01:00
Gavin King 711feda338 HHH-17779 add some jdoc 2024-02-27 22:11:48 +01:00
Gavin King f34e7fa91c HHH-17779 support for key-based pagination
basic tests
2024-02-27 22:11:48 +01:00
Gavin King 920377ccfc HHH-17779 support for key-based pagination
lots of fixes / improvements
2024-02-27 22:11:48 +01:00
Gavin King 483279c748 HHH-17779 support for key-based pagination
fixe compilation error in tests
2024-02-27 22:11:48 +01:00
Gavin King 842a6d02f6 HHH-17779 support for key-based pagination
fixes
2024-02-27 22:11:48 +01:00
Gavin King 8421d1c8d1 HHH-17779 support for key-based pagination
minor code cleanup
2024-02-27 22:11:48 +01:00
Gavin King dbd15fd690 HHH-17779 support for key-based pagination
change the API slightly
2024-02-27 22:11:48 +01:00
Gavin King b9e01fec4f HHH-17779 support for key-based pagination 2024-02-27 22:11:48 +01:00
Gavin King 5af80551ad HHH-17779 support for key-based pagination 2024-02-27 22:11:48 +01:00
Gavin King 32bd334298 fix the broken syntax of an @implNote 2024-02-27 22:11:48 +01:00
Gavin King 4fbcfbdaba HHH-17779 support for key-based pagination 2024-02-27 22:11:48 +01:00
Gavin King 2f4a6ebcaf slight improvement to two error messages 2024-02-27 19:47:17 +01:00
Marco Belladelli fb4580cb6e HHH-17750 Handle bytecode-enhanced proxies in context identifier 2024-02-27 15:23:39 +01:00
marko-bekhta 2c3909470b HHH-17750 Add a reproducer 2024-02-27 15:23:39 +01:00
Christian Beikov 94cb793180 Don't change result type of criteria query when changing select clause 2024-02-26 17:04:10 +01:00
Jeff Maxwell 12a93ce328 HHH-17775 Standardize spelling of "round-trip" and "roundtrip" to "round
trip"
2024-02-26 14:07:48 +01:00
Christian Beikov c1746f5f82 HHH-17772 Use Dialect#getLowercaseFunction instead of hard coding to lower 2024-02-26 12:01:48 +01:00
Marco Belladelli 1196f72798 HHH-15493 Allow Java records as @IdClass 2024-02-26 11:39:28 +01:00
Marco Belladelli efb02b72e5 HHH-15493 Add test for issue 2024-02-26 11:39:28 +01:00
George Gastaldi 376f99dcc6 HHH-17770: Avoid casting long to int
This causes `NegativeArraySizeException: -1294967296` when Blob contents > 2Gb
2024-02-26 11:27:12 +01:00
Gavin King b039eecd8e allow query and finder methods to return Stream
required by Jakarta Data spec
2024-02-25 21:34:20 +01:00
Gavin King 484fcb2984 HHH-17773 case-insensitive ordering 2024-02-24 01:42:16 +01:00
Christian Beikov 0163fceed9 HHH-15519 Fix bitwise operation tests on CockroachDB 2024-02-22 14:17:20 +01:00
Christian Beikov 8a65536c4c HHH-17734 Ensure provider_class has precedence over datasource 2024-02-22 13:31:51 +01:00
Gavin King 0502869545 pull up some duplicated code to AbstractSqmSelectionQuery 2024-02-22 09:58:18 +01:00
Marco Belladelli f87ea083e6 HHH-17766 Correct return type of by duration and numeric operations on converted attributes 2024-02-22 08:57:03 +01:00
Marco Belladelli c6e41c6f21 HHH-17766 Additional tests on converted attributes 2024-02-22 08:57:03 +01:00
Christian Beikov 647a1890e8 HHH-16048 Fix portable integer division for HANA and CockroachDB 2024-02-21 13:46:12 +01:00
Gavin King c45f047443 HHH-17764 query result types and single-item selection lists
- allow single-item auto-instantiation
- check the type of the selection item against the given result type
2024-02-21 12:36:41 +01:00
Jan Schatteman 0f51feb69e HHH-17691 - Avoid unnecessary sequence queries when hdb2ddl will recreate them anyway
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2024-02-20 17:06:00 +01:00
Christian Beikov 4ac91f793f HHH-14867 Don't forcefully acquire connection for transaction handling 2024-02-20 17:01:18 +01:00
Jan Schatteman 897b87bca6 HHH-14867 - Add test for issue
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2024-02-20 17:01:18 +01:00
Gavin King 731b3bd7e4 HHH-17755 add test for issue 2024-02-20 15:58:03 +01:00
Gavin King 5a134f0f38 HHH-17755 fix inferral of @IdClass column mapping from @MapsId 2024-02-20 15:58:03 +01:00
Gavin King 79635dffce fix spelling of method name 2024-02-20 15:58:03 +01:00
Gavin King 715076f4d4 very minor code changes to ForeignGenerator 2024-02-20 15:58:03 +01:00
Gavin King 312ed3c3f3 HHH-17755 make @MapsId work correctly with @IdClass
the @Id property was not getting populated
2024-02-20 15:58:03 +01:00
Marco Belladelli 0cb2de5490 HHH-17730 Account for immutable embedded ids during merge 2024-02-20 14:11:41 +01:00
Marco Belladelli 90ec3a74bd HHH-17730 Add test for issue 2024-02-20 14:11:41 +01:00
Gavin King 1c0121a94d HHH-15519 document bitand(), bitor(), bitxor() 2024-02-20 09:11:44 +01:00
Gavin King 5fe2b75d2d HHH-15519 make bitand(), bitor(), bitxor() portable
- add bitwise functions on SQL Server and Sybase
- add bitor(), bitxor() on Oracle
- add missing bitwise functions to HANA and h2
- fix broken bitxor() on Postgres
- add bitwise functions for EDB
2024-02-20 09:11:44 +01:00
Gavin King 399b1a0715 HHH-15519 start testing bitor() and xor() functions 2024-02-20 09:11:44 +01:00
Gavin King a562ab2462 HHH-16931 replace the previous impl of createCountQuery() 2024-02-19 22:56:18 +01:00
Gavin King 1180be0a0f HHH-16931 add SelectionQuery.getResultCount() 2024-02-19 22:56:18 +01:00
Christian Beikov 7f14b2cbf8 HHH-16048 Handle integer division emulation also for TiDB 2024-02-19 14:38:04 +01:00
LLEFEVRE 02c6531fcb HHH-15756 Table Value Constructor (INSERT, FROM column aliasing at table alias, CTE) 2024-02-19 14:22:42 +01:00
Ken Schosinsky 3bda3adc4f HHH-17742 Fix race condition in ConcreteSqmSelectQueryPlan 2024-02-19 14:15:50 +01:00
Ken Schosinsky a3ca11a363 HHH-17742 Test for race condition in ConcreteSqmSelectQueryPlan
Race condition occurs when two or more concurrent reach the synchronized
block in ConcreteSqmSelectQueryPlan#withCacheableSqmInterpretation. The
latter ones will see the cacheableSqmInterpretation by the first one,
but don't check whether it is compatible
(jdbcSelect.dependsOnParameterBindings(), jdbcSelect.isCompatibleWith).

On MySQL this can cause "limit null,1" to be rendered if the first query
has both offset and limit, the latter ones only a limit.
2024-02-19 14:15:50 +01:00
Gavin King 27bf0b8523 make HqlInterpretation generic to eliminate warnings / unchecked casts
and delete a deprecated method of an @Incubating API
2024-02-19 12:49:14 +01:00
Gavin King e4632107d7 improve error messages when association targets non-entity type 2024-02-19 12:40:54 +01:00
Marco Belladelli 34374c0c70 HHH-17727 Avoid name uses for subtypes when selecting discriminator only 2024-02-19 11:46:59 +01:00
Marco Belladelli dfb56c2f36 HHH-17727 Add test for issue 2024-02-19 11:46:59 +01:00
LLEFEVRE 778e5b1214 HHH-15756 Table Value Constructor (INSERT, FROM column aliasing at table alias, CTE) 2024-02-19 11:32:31 +01:00
LLEFEVRE 7c400e10bb HHH-15756 Table Value Constructor (INSERT, FROM column aliasing at table alias, CTE) 2024-02-19 11:32:31 +01:00
Gavin King 777dede7da HHH-17748 accept abbreviated enum value names in HQL 'when' clause 2024-02-18 23:28:56 +01:00
Gavin King bfda1c6142 fix typo in javadoc 2024-02-18 19:53:57 +01:00
Gavin King 2558f9843a HHH-17746 update tests to use streamlined API 2024-02-17 12:42:09 +01:00
Gavin King e732cddb09 HHH-17746 add typed setProperty() methods to Configuration
and fix handling of DEFAULT_NULL_ORDERING
2024-02-17 12:42:09 +01:00
Gavin King 3769d4c233 use requiresService() much more consistently
we should usually avoid the use of getService() unless
there is an explicit null test on the client side
2024-02-16 23:18:30 +01:00
Gavin King f1e099b8e8 HHH-17745 @HQL methods accepting embeddables
and replace usages of getJavaType().getTypeName(), since
using getTypeName() directly is much more freindly to the
annotation processor (as well as less verbose)
2024-02-16 21:08:49 +01:00
Marco Belladelli eb11676479 HHH-17096 Always initialize table group for subtype treated joins 2024-02-16 16:34:45 +01:00
Marco Belladelli 7eb8aac96d HHH-17096 Add test for issue 2024-02-16 16:34:45 +01:00
Gavin King d7fe31643a HHH-16048 add 'hibernate.query.hql.portable_integer_division'
consistent interpretation of division on MySQL and Oracle
2024-02-16 16:23:35 +01:00
qinxi a97b7ba611 HHH-17717 Add semicolon(`;`) to HQL_SEPARATORS 2024-02-16 13:35:17 +01:00
Marco Belladelli 5309d9d63b HHH-17508 Fix using union queries as CTE in criteria 2024-02-16 11:58:22 +01:00
Marco Belladelli a0294c31fe HHH-17508 Add test for issue 2024-02-16 11:58:22 +01:00
Marco Belladelli 8a8099c3fd HHH-17701 Use relational java type when resolving mapping expressibles 2024-02-16 11:55:52 +01:00
Marco Belladelli d5d9f5766f HHH-17701 Add test for issue 2024-02-16 11:55:52 +01:00
Marco Belladelli b91a7fe9fe HHH-17695 Skip rendering null nested JSON aggregate embeddables 2024-02-16 10:47:27 +01:00
Marco Belladelli 734bd775bf HHH-17695 Add test for issue 2024-02-16 10:47:27 +01:00
LLEFEVRE 464d3a82fd HHH-15753 GROUP BY ALIAS support in 23c 2024-02-16 10:46:57 +01:00
Jan Schatteman c8234fc493 HHH-12565 - Add some additional tests
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2024-02-15 13:40:15 +01:00
Gavin King 8dd0ef5198 improve error messages coming from SqmPathRegistryImpl
and missing add javadoc to AliasCollisionException
2024-02-14 12:55:43 +01:00
Gavin King e4a998cbe7 add a TODO 2024-02-14 12:55:43 +01:00
Gavin King 914227de93 HHH-16463 fix use of @PrimaryKeyJoinColumn with @MapsId
supporting this mapping is required by JPA
2024-02-14 11:34:55 +01:00
Gavin King 2c85e5d190 HHH-16522 add test for fixed bug 2024-02-14 01:12:38 +01:00
Gavin King d57e09c7e6 add javadoc to Session regarding proxy objects 2024-02-13 17:30:02 +01:00
Gavin King 97099c0280 better handling of instantiation for @HQL methods 2024-02-12 20:53:09 +01:00
Gavin King d93463c060 document record instantiation for @HQL methods 2024-02-12 00:16:06 +01:00
Gavin King e5a994bfa1 fix typechecking of primitives in instantiations for query methods 2024-02-12 00:16:06 +01:00
Gavin King 70705f3e96 HHH-17729 move validation of constructors in HQL instantiations to SemanticQueryBuilder
fix test
2024-02-12 00:16:06 +01:00
Gavin King a9ea331e40 HHH-17729 move validation of constructors in HQL instantiations to SemanticQueryBuilder
also validate injection via fields/properties
2024-02-12 00:16:06 +01:00
Gavin King dcb2c60d4e HHH-17729 move validation of constructors in HQL instantiations to SemanticQueryBuilder
also validate injection via fields/properties
2024-02-12 00:16:06 +01:00
Gavin King 766234d281 HHH-17729 move validation of constructors in HQL instantiations to SemanticQueryBuilder
fix tests
2024-02-12 00:16:06 +01:00
Gavin King 1a9ec1d0ad HHH-17729 move validation of constructors in HQL instantiations to SemanticQueryBuilder
workaround for jpamodelgen
2024-02-12 00:16:06 +01:00
Gavin King 24937b4e67 HHH-17729 move validation of constructors in HQL instantiations to SemanticQueryBuilder
report SemanticExceptions with the query string
fix some warnings in ReflectHelper
2024-02-12 00:16:06 +01:00
Gavin King 0bce456e3a properly document use of SqmFunctionDescriptor 2024-02-10 16:01:56 +01:00
Gavin King ff76331b22 fix language and syntax in a Javadoc comment
and clean up unused imports
2024-02-10 12:28:09 +01:00
Gavin King cad2d2bc62 clean up JdbcEnvironmentInitiator and parse micro database version
this resolves a spurious warning on Derby
2024-02-10 12:28:09 +01:00