Commit Graph

19956 Commits

Author SHA1 Message Date
Marco Belladelli 95ef45bef8 HHH-18174 Fix junction entity name uses algorithm for subqueries 2024-09-16 14:54:57 -05:00
Marco Belladelli a33ae2d580 HHH-18174 Add test for issue 2024-09-16 14:54:57 -05:00
Gavin King bcde12c8e5 update checkstyle rule 2024-09-16 21:26:00 +02:00
Gavin King f0f96916ad abbreviated source header 2024-09-16 21:26:00 +02:00
Gavin King 23084dd16c indentWithTabs 2024-09-16 21:26:00 +02:00
Gavin King bbc325c26f spaces to tabs! 2024-09-16 21:26:00 +02:00
Gavin King 27db2668b4 disable checkstyle because we have spotless now 2024-09-16 21:26:00 +02:00
Gavin King a43bcd80a8 enable spotless 2024-09-16 21:26:00 +02:00
Gavin King de921ad473 cleanups by spotless 2024-09-16 21:26:00 +02:00
Andrea Boriero 2f2dbbe2e6 HHH-18489 Lazy, unowned one-to-one associations get loaded eagerly in queries - even with bytecode enhancement 2024-09-16 12:01:30 -05:00
Andrea Boriero b407aa7679 HHH-18489 Test initialization of unowned, lazy one-to-one associations 2024-09-16 12:01:30 -05:00
Yoann Rodière 434b32e494 HHH-18489 Test initialization of unowned, lazy one-to-one associations (and more) in queries 2024-09-16 12:01:30 -05:00
Andrea Boriero 1b0cc59913 HHH-18462 Provide alternatives to deprecated org.hibernate.engine.spi.Mapping 2024-09-16 11:45:54 -05:00
Marco Belladelli e411775c70 Remove problematic template test using type
Note: `string` is an actual type (and keyword) in CockroachDB
2024-09-16 17:15:34 +02:00
Marco Belladelli 9b5f17340f Override CockroachDialect#determineDatabaseVersion implementation 2024-09-16 17:15:34 +02:00
Marco Belladelli e66cbc1d8f Require pgsql 14+ for `compression pglz` column option 2024-09-16 17:15:34 +02:00
Marco Belladelli 829b990585 Fix HANA error where table only contains PK 2024-09-16 17:15:34 +02:00
Marco Belladelli 9071c16e7d HHH-18612 Avoid writing `import.sql` file to classpath 2024-09-16 11:26:00 +02:00
Marco Belladelli 93e74362d5 HHH-18436 Apply plural attribute ordering when creating the join 2024-09-16 11:25:48 +02:00
Marco Belladelli b61628326c HHH-18436 Add test for issue 2024-09-16 11:25:48 +02:00
Marco Belladelli a784ca2027 HHH-18439 Account for null values in query cache hit
Also, solve an assertion error in query result type check when selecting `null` literals
2024-09-16 11:25:30 +02:00
Marco Belladelli 4bf11f8503 HHH-18439 Add test for issue 2024-09-16 11:25:30 +02:00
Marco Belladelli 234bff41b8 HHH-18445 Always preserve correct property order for java records 2024-09-16 11:25:14 +02:00
Marco Belladelli f9a4efaa8f HHH-18445 Add test for issue 2024-09-16 11:25:14 +02:00
Marco Belladelli 3001b7f01d HHH-18484 Account for null generated values for no-op updates 2024-09-16 11:24:54 +02:00
Marco Belladelli 928c786683 HHH-18484 Add test for issue 2024-09-16 11:24:54 +02:00
Gavin King 417eb89369 HHH-17557 update migration guide 2024-09-15 08:53:37 +02:00
Gavin King 2e6902ddb2 HHH-17557 native queries return LocalDate and LocalDateTime instead of java.sql types
... by default, with a setting to recover old behavior.
2024-09-15 08:38:21 +02:00
Gavin King 2fc51bd7b2 attempt to untangle some convoluted logic in Query hierarchy 2024-09-15 08:24:43 +02:00
Gavin 52e185b194 HHH-15942 introduce QueryFlushMode for specifying whether a query flushes or not
- replaces FlushModeType in the annotation package
- much less confusing when applied to a Query
  * what do MANUAL and COMMIT mean for a Query?
  * how is AUTO useful for a Query?

- also make Query.getHibernateFlushMode() obey its
  documented semantics by returning the session
  flush mode instead of null when unset
2024-09-15 08:24:43 +02:00
Gavin King 5f8bf125fc HHH-18619 add support for @ForeignKey(options), @UniqueConstraint(options), @Index(options) 2024-09-14 18:49:18 +02:00
Gavin King 9f2beca226 add a comment 2024-09-14 12:29:10 +02:00
Gavin King 19d5895dd6 finally sort out handling of @Id and @Version in query validator
also remove 'this' hacks made obsolete by Steve's work on core
2024-09-14 12:29:10 +02:00
Andrea Boriero d6ab2fd110 HHH-18511 ArrayIndexOutOfBoundsException in ImmutableFetchList 2024-09-14 09:09:25 +02:00
Andrea Boriero 21a69c682e HHH-18511 Add test for issue 2024-09-14 09:09:25 +02:00
Steve Ebersole 792b4fc812 HHH-18593 - Enforce GeneratedValue GenerationType 2024-09-13 12:07:34 -05:00
Steve Ebersole 4b6822a8bc HHH-18498 - Support for unnamed generators
HHH-18593 - Enforce GeneratedValue GenerationType
HHH-18609 - Use UuidGenerator for GenerationType.UUID
2024-09-13 10:01:00 -05:00
Jan Schatteman 76df41f9be HHH-18537 - Support Session#createNamedSelectionQuery for native-query
Signed-off-by: Jan Schatteman <jschatte@redhat.com>
2024-09-13 10:01:00 -05:00
Steve Ebersole 80b12c46e7 HHH-18535 - Support jakarta.persistence.EntityResult#lockMode 2024-09-13 10:01:00 -05:00
Steve Ebersole e574f88fd6 HHH-18536 - Support implicit "this" alias in HQL 2024-09-13 10:01:00 -05:00
Steve Ebersole 08bd466703 HHH-18498 - Generator on package level does not work when the name is not specified
HHH-18499 - Some new functions in Persistence 3.2 does not work
HHH-18536 - Support implicit "this" alias in HQL
HHH-18537 - Support Session#createNamedSelectionQuery for native-query
2024-09-13 10:01:00 -05:00
Gavin King a82ac08d14 test for @NamedNativeQuery with result set mapping
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-09-13 10:01:00 -05:00
Gavin King e11ac26cd2 test for @EntityResult(lockMode)
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-09-13 10:01:00 -05:00
Gavin King 27042f562f test for @SequenceGenerator/@TableGenerator with no name
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-09-13 10:01:00 -05:00
Gavin King 3c161e0c82 test for JPQL 'this' implicit identification variable
Signed-off-by: Gavin King <gavin@hibernate.org>
2024-09-13 10:00:59 -05:00
Yanming Zhou 3c4a340c5e HHH-18581 Introduce `supportsBindingNullSqlTypeForSetNull()` and `supportsBindingNullForSetObject()` for `Dialect` to optimize binding null
The method `PreparedStatement.getParameterMetaData().getParameterType(int)` call is expensive for some JDBC driver such as pgJDBC, we should avoid it if the driver supports binding `Types.NULL` for `setNull()` or `null` for `setObject()`.
2024-09-13 14:16:54 +02:00
Yanming Zhou 2e54d95707 HHH-18575 Add test for issue 2024-09-13 14:12:47 +02:00
Yanming Zhou 1d46b87008 HHH-18575 Fix IllegalStateException while passing multi-valued BigDecimal as parameter
Fix
```
java.lang.IllegalStateException: Binding is multi-valued; illegal call to #getBindValue

	at org.hibernate.query.internal.QueryParameterBindingImpl.getBindValue(QueryParameterBindingImpl.java:100)
	at org.hibernate.query.sqm.sql.BaseSqmToSqlAstConverter.resolveSqmParameter(BaseSqmToSqlAstConverter.java:6283)
	at org.hibernate.query.sqm.sql.BaseSqmToSqlAstConverter.consumeSqmParameter(BaseSqmToSqlAstConverter.java:5861)
	at org.hibernate.query.sqm.sql.BaseSqmToSqlAstConverter.consumeSingleSqmParameter(BaseSqmToSqlAstConverter.java:5950)
	at org.hibernate.query.sqm.sql.BaseSqmToSqlAstConverter.processInSingleParameter(BaseSqmToSqlAstConverter.java:8178)
	at org.hibernate.query.sqm.sql.BaseSqmToSqlAstConverter.processInSingleHqlParameter(BaseSqmToSqlAstConverter.java:8135)
	at org.hibernate.query.sqm.sql.BaseSqmToSqlAstConverter.processInListWithSingleParameter(BaseSqmToSqlAstConverter.java:8124)
```
2024-09-13 14:12:47 +02:00
Marco Belladelli 1951c0b993 HHH-18478 Retrieve concrete entity descriptor inside entity initializer's resolve state 2024-09-13 12:41:33 +02:00
Marco Belladelli 03d9671e02 HHH-18478 Add test for issue 2024-09-13 12:41:33 +02:00