Hibernate Release Notes
Hibernate 6
- V23.1.0-hib6
-
-
Compatible with Hibernate 6.6 which makes it incompatible with Hibernate 6.2 or earlier due to API changes in the
Dialectclass. We do not officially support Hibernate 6.3, 6.4 or 6.5. -
Support for these functions in JPQL and HQL:
-
ascii()- convert a number in range 0-127 to its ASCII character, for values over 127 usechar(). -
bitor(),bitand(),bitxor(),bitnot() -
collate(field AS name AS case_insensitive)- collation is case sensitive by default -
current_schema(),current_user(),database(),getconnectionId(),getransactionid() -
date(),datediff(),datetrunc()andtime() -
Hyperbolic trigonometric functions:
sinh(),cosh(),tanh(). -
round() -
sign()now takes any numeric value, not just an integer. -
str(num, length, decimals) - Converts a number to a string (as per SQL Server). There must be exactly three numeric arguments, otherwisestr()acts likeconcat(). -
stddev_pop(),stddev_samp(),var_pop(),var_samp()- require NuoDB 7.0 or later. -
timestampadd()andtimestampdiff -
trunc() -
unaccent()- requires NuoDB 7.0 or later. -
unicode()
-
-
You can declare your own User Defined Functions (UDFs) to Hibernate so that JPQL and HQL can use them.
NuoDBDialect.registerCustomFunctions()is changed to no longer require subclassing. -
Dialect.getFunctions()was removed by Hibernate 6. We have added similar functionality toNuoDBDialect. -
Avoids or emulates some SQL constructs (generated by Hibernate) that were previously incompatible with NuoDB SQL.
-
Support for Outer Joins - requires NuoDB 7.0 or later.
-
- V23.0.5-hib6
-
-
Compatible with Hibernate 6.2 and backwards compatible with Hibernate 6.1.
-
Includes all the enhancements of V23.1.0-hib6 except
trunc()is not supported. -
Some SQL constructs supported by V23.1.0-hib6 are not supported by this release. If you have problems with NuoDB rejecting some Hibernate generated SQL you may need to upgrade.
-
NOTE: This version of our JAR is incompatible with Hibernate 6.6 due to API changes in the
Dialectclass.
-
-
- V23.0.4-hib6
-
-
Added support for the timeout query hint using
(AvailableSettings.JAKARTA_LOCK_TIMEOUT, timeout), wheretimeoutis the lock timeout in ms.Requires NuoDB 6.x, where x ≥ 0.
-
- V23.0.3-hib6
-
-
Updated
NuoDBDialectto indicate that:-
NuoDB sorts
nullvalues first. -
NuoDB does not support
nullprecedence. -
NuoDB supports subquery on mutating tables. For more information, see
Dialect.supportsSubqueryOnMutatingTable(). -
NuoDB does not support subquery in
SELECT.
-
-
Added
lpad()andrpad()functions to pad a string with additional characters to reach a specified length. The padding character is optional. The default padding character is space. -
Added the
registerCustomFunctions()method to support custom functions. By default, the JPQL engine does not include any additional custom functions. To define and register custom functions, override theregisterCustomFunctions()method in a subclass, add definitions of custom functions for your application, and include the custom function calls in JPQL queries.For example:
public void registerCustomFunctions( SqmFunctionRegistry functionRegistry, TypeConfiguration typeConfiguration); -
Added support for the
sign()function in JPQL queries, for integer arguments only. -
Added support for the
SUPPRESS_VERSION_WARNINGJava property. Set its value totruein the OS environment as an environment variable or as a Java System property to suppress the version warning printed whenNuoDBDialectis created. -
Improved the mapping of
SQLExceptiontoJPAExceptionfor better error handling. For more information, seeNuoDBDialect.NuoDbSQLExceptionConversionDelegate. -
Updated
NuoDBDialectto generate a warning if a lock-timeout hint is used with a positive timeout value since it is not supported in NuoDB.NOWAITandSKIP_LOCKEDare supported. -
CHARandNCHARdata types are now implemented asCHARandNCHAR, respectively. In earlier releases,CHARandNCHARcould optionally be implemented using theSTRINGcolumn type.VARCHAR,NVARCHAR,LONGVARCHAR, andLONGNVARCHARcan optionally be implemented asSTRINGcolumn types.
-
- V23.0.2-hib6
-
-
When an application updates the same entity in a database, and the entity is versioned, the application reports, "BatchUpdateException: update conflict in table" instead of "ObjectOptimisticLockingFailureException:". (13810)
The issue has been resolved.
-
- V23.0.1-hib6
-
-
A SQL query with an
UPDATEclause could report, "multi-column value only allowed in comparison operators".
The issue has been resolved.
-
- V23.0.0-hib6
-
-
Supports Hibernate 6.1 and JPA 3.1.
-
Hibernate 6 requires Java 11, but Spring 6 and Spring Boot 3 require Java 17.
-
Hibernate 5
- V22.0.5-hib5
-
-
Added support for the timeout query hint using
(AvailableSettings.JPA_LOCK_TIMEOUT, timeout), wheretimeoutis the lock timeout in ms.Requires NuoDB 6.x, where x ≥ 0.
-
- V22.0.4-hib5
-
-
Improved
NuoDBDialectto correctly indicates that NuoDB support subquery on mutating table. For more information, seeDialect.supportsSubqueryOnMutatingTable(). -
Added support for the
sign()function in JPQL queries, for integer arguments only. -
Added support for the
SUPPRESS_VERSION_WARNINGJava property. Set its value totruein the OS environment as an environment variable or as a Java System property to suppress the version warning printed whenNuoDBDialectis created. -
Improved the mapping of
SQLExceptiontoJPAExceptionfor better error handling. For more information, seeNuoDBDialect.NuoDbSQLExceptionConversionDelegate. -
Updated
NuoDBDialectto generate a warning if a lock-timeout hint is used with a positive timeout value since it is not supported in NuoDB.NOWAITandSKIP_LOCKEDare supported. -
CHARandNCHARdata types are now implemented asCHARandNCHAR, respectively. In earlier releases,CHARandNCHARcould optionally be implemented using theSTRINGcolumn type.VARCHAR,NVARCHAR,LONGVARCHAR, andLONGNVARCHARcan optionally be implemented asSTRINGcolumn types.
-
- V22.0.1-hib5
-
-
Fixes for
UPDATE SKIP LOCKEDand a few function definitions. -
Adds
uuid()function. -
Refactored, commented and tidied
NuoDBDialectclass.
-
- V22.0.0-hib5
-
-
Supports Hibernate 5.4 and JPA 2.1, Hibernate 5.6 and JPA 2.2.
-
Adds support for NuoDB database query hints and
FOR UPDATE SKIP LOCKEDandFOR UPDATE NOWAIT. -
Adds
isValidJson()andjsonUnquote(),listagg()andrownum()functions. -
Adds
era(),quarter(),dayofweek(),dayofyear(),weekofmonth(),weekofyear()functions.
-
- V21.0.0-hib5
-
-
Supports Hibernate 5.4.
-
Enables mapping of
Stringdata-members to NuoDB’sSTRINGcolumn type. -
Removes direct dependency on Hibernate to avoid start up issues in Web/Application Server.
-
- V20.0.0-hib5
-
-
Renumbered to allow the Hibernate JAR to be released independently of the NuoDB database.
-
Last update for this version
20.0.2-hib5.
-