You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@grails.apache.org by bo...@apache.org on 2026/03/29 10:55:06 UTC
(grails-core) branch 8.0.x-hibernate7 updated (0ef4d199fa -> 18eaf6befa)
This is an automated email from the ASF dual-hosted git repository.
borinquenkid pushed a change to branch 8.0.x-hibernate7
in repository https://gitbox.apache.org/repos/asf/grails-core.git
from 0ef4d199fa 1) Stabilized Multi-DataSource Support I fixed two major initialization errors in HibernateDatastore.java that were breaking the multi-datasource TCK tests: * Broken Infinite Recursion: Introduced a private isChild flag and constructor to prevent child datastores from recursively iterating through connection sources. This resolved the StackOverflowError during multi-datasource setup. * Fixed ClassCastException: Updated the bytecodeProvider initialization t [...]
add f1a881e9be Quick Updates for Spring Boot 4
add fb217b99ba Merge remote-tracking branch 'origin/8.0.x' into spring-boot-4
add 530013aae0 fix: resolve Spring Boot 4 incompatibilities reintroduced by 8.0.x merge
add 5aad61d4eb Merge branch '8.0.x' into spring-boot-4
add 6e2d905207 Merge branch '8.0.x' into spring-boot-4
add fb98bbe473 fix: Remove ThemeSource usage removed in Spring Framework 7.0
add 62f88648ce fix: correct import ordering in ControllersAutoConfiguration
add f7037630d4 fix: Resolve compilation and test failures for Spring Boot 4 upgrade
add 29ce89afa5 fix: Replace wildcard import with explicit imports in LoggingTransformer
add 5c4bb1a6ee Merge branch '8.0.x' into spring-boot-4
add 8e2878a03e fix: Resolve CI failures for Spring Boot 4 upgrade
add 042ef95aac fix: restore reset() behavior in AbstractGrailsMockHttpServletResponse
add 577bb41eb2 test: Update assertions in RenderMethodTests
add 07173002c7 test(cleanup): Cleanup RenderMethodTests
add 2b7199d51c spring 4.0 integration hit hibernate 7 branch
add 18eaf6befa Finalize Hibernate 7 multi-datasource support and Spring Boot 4 modular alignment. Implement ChildHibernateDatastore for isolated session routing, resolve bootstrapping circular dependencies, and update auto-configuration imports for Boot 4 compatibility. Includes verified unit tests for the new datastore architecture.
No new revisions were added by this update.
Summary of changes:
build-logic/docs-core/build.gradle | 2 +-
build.gradle | 8 +
dependencies.gradle | 44 +-
grails-bom/build.gradle | 9 +
grails-bootstrap/build.gradle | 2 +-
grails-codecs-core/build.gradle | 2 +-
grails-codecs/build.gradle | 2 +-
grails-common/build.gradle | 2 +-
grails-console/build.gradle | 2 +-
grails-controllers/build.gradle | 4 +-
.../controllers/ControllersAutoConfiguration.java | 8 +-
grails-converters/build.gradle | 2 +-
grails-core/build.gradle | 3 +-
.../src/main/groovy/grails/boot/GrailsApp.groovy | 2 +-
.../external/ExternalConfigRunListener.groovy | 2 +-
.../injection/ApplicationClassInjector.groovy | 2 +-
.../injection/ApplicationClassInjectorSpec.groovy | 2 +-
.../groovy/com/example/demo/DemoApplication.groovy | 2 +-
grails-data-hibernate5/boot-plugin/build.gradle | 4 +
.../HibernateGormAutoConfiguration.groovy | 4 +-
.../HibernateGormAutoConfigurationSpec.groovy | 2 -
grails-data-hibernate5/core/build.gradle | 7 +
.../grails/orm/HibernateCriteriaBuilder.java | 2 +-
.../orm/hibernate/GrailsHibernateTemplate.java | 5 +-
.../GrailsHibernateTransactionManager.groovy | 4 +-
.../grails/orm/hibernate/GrailsSessionContext.java | 9 +-
.../orm/hibernate/HibernateGormStaticApi.groovy | 2 +-
.../HibernateMappingContextSessionFactoryBean.java | 2 +-
.../hibernate5/ConfigurableJtaPlatform.java | 113 ++
.../support/hibernate5/HibernateCallback.java | 55 +
.../hibernate5/HibernateExceptionTranslator.java | 103 ++
.../support/hibernate5/HibernateJdbcException.java | 59 +
.../HibernateObjectRetrievalFailureException.java | 59 +
.../support/hibernate5/HibernateOperations.java | 857 ++++++++++++++
...HibernateOptimisticLockingFailureException.java | 49 +
.../hibernate5/HibernateQueryException.java | 48 +
.../hibernate5/HibernateSystemException.java | 45 +
.../support/hibernate5/HibernateTemplate.java | 1185 ++++++++++++++++++++
.../hibernate5/HibernateTransactionManager.java | 928 +++++++++++++++
.../hibernate5/LocalSessionFactoryBean.java | 665 +++++++++++
.../hibernate5/LocalSessionFactoryBuilder.java | 468 ++++++++
.../support/hibernate5/SessionFactoryUtils.java | 263 +++++
.../support/hibernate5/SessionHolder.java | 84 ++
.../support/hibernate5/SpringBeanContainer.java | 270 +++++
.../hibernate5/SpringFlushSynchronization.java | 56 +
.../hibernate5/SpringJtaSessionContext.java | 49 +
.../support/hibernate5/SpringSessionContext.java | 144 +++
.../hibernate5/SpringSessionSynchronization.java | 148 +++
.../support/AsyncRequestInterceptor.java | 124 ++
.../support/OpenSessionInViewInterceptor.java | 219 ++++
.../specs/Hibernate5OptimisticLockingSpec.groovy | 4 +-
...WithNewSessionAndExistingTransactionSpec.groovy | 2 +-
.../specs/validation/BeanValidationSpec.groovy | 2 +-
.../core/GrailsDataHibernate5TckManager.groovy | 4 +-
.../connections/SchemaMultiTenantSpec.groovy | 2 +-
.../GrailsOpenSessionInViewInterceptor.java | 6 +-
.../HibernatePersistenceContextInterceptor.java | 4 +-
.../support/MultiDataSourceSessionSpec.groovy | 2 +-
grails-data-hibernate7/HIBERNATE_7_MIGRATION.md | 62 +-
grails-data-hibernate7/boot-plugin/build.gradle | 2 +
.../HibernateGormAutoConfiguration.groovy | 4 +-
.../HibernateGormAutoConfigurationSpec.groovy | 4 +-
grails-data-hibernate7/core/build.gradle | 3 +-
.../grails/orm/HibernateCriteriaBuilder.java | 2 +-
.../orm/hibernate/EventListenerIntegrator.java | 2 +-
.../orm/hibernate/GrailsHibernateTemplate.java | 4 +-
.../GrailsHibernateTransactionManager.groovy | 4 +-
.../grails/orm/hibernate/GrailsSessionContext.java | 8 +-
.../grails/orm/hibernate/HibernateDatastore.java | 383 +++----
.../orm/hibernate/HibernateGormEnhancer.groovy | 7 +-
.../orm/hibernate/HibernateGormStaticApi.groovy | 44 +-
.../cfg/HibernateMappingContextConfiguration.java | 2 +-
.../HibernateConnectionSourceFactory.java | 1 +
.../proxy/ByteBuddyGroovyInterceptor.java | 14 +-
.../proxy/GroovyProxyInterceptorLogic.java | 11 +-
.../hibernate7/ConfigurableJtaPlatform.java | 113 ++
.../support/hibernate7/HibernateCallback.java | 55 +
.../hibernate7/HibernateExceptionTranslator.java | 103 ++
.../support/hibernate7/HibernateJdbcException.java | 59 +
.../HibernateObjectRetrievalFailureException.java | 59 +
.../support/hibernate7/HibernateOperations.java | 728 ++++++++++++
...HibernateOptimisticLockingFailureException.java | 49 +
.../hibernate7/HibernateQueryException.java | 48 +
.../hibernate7/HibernateSystemException.java | 45 +
.../support/hibernate7/HibernateTemplate.java | 1077 ++++++++++++++++++
.../hibernate7/HibernateTransactionManager.java | 928 +++++++++++++++
.../hibernate7/LocalSessionFactoryBean.java | 665 +++++++++++
.../hibernate7/LocalSessionFactoryBuilder.java | 469 ++++++++
.../support/hibernate7/SessionFactoryUtils.java | 263 +++++
.../support/hibernate7/SessionHolder.java | 84 ++
.../support/hibernate7/SpringBeanContainer.java | 276 +++++
.../hibernate7/SpringFlushSynchronization.java | 56 +
.../hibernate7/SpringJtaSessionContext.java | 49 +
.../support/hibernate7/SpringSessionContext.java | 144 +++
.../hibernate7/SpringSessionSynchronization.java | 148 +++
.../support/AsyncRequestInterceptor.java | 124 ++
.../support/OpenSessionInViewInterceptor.java | 219 ++++
...WithNewSessionAndExistingTransactionSpec.groovy | 2 +-
.../sessioncontext/GrailsSessionContextSpec.groovy | 2 +-
.../specs/validation/BeanValidationSpec.groovy | 2 +-
.../orm/HibernateCriteriaBuilderDirectSpec.groovy | 2 +-
.../core/GrailsDataHibernate7TckManager.groovy | 4 +-
.../hibernate/ChildHibernateDatastoreSpec.groovy | 85 ++
.../ChildHibernateDatastoreUnitSpec.groovy | 59 +
.../support/ClosureEventListenerSpec.groovy | 2 +-
grails-data-hibernate7/dbmigration/build.gradle | 2 +-
.../HibernateDatastoreSpringInitializer.groovy | 17 +-
.../plugin/hibernate/HibernateGrailsPlugin.groovy | 4 +-
.../hibernate/commands/SchemaExportCommand.groovy | 4 +-
.../grails/test/hibernate/HibernateSpec.groovy | 27 +-
.../GrailsOpenSessionInViewInterceptor.java | 6 +-
.../HibernatePersistenceContextInterceptor.java | 4 +-
.../HibernateDatastoreSpringInitializerSpec.groovy | 14 +-
.../support/MultiDataSourceSessionSpec.groovy | 2 +-
grails-data-mongodb/boot-plugin/build.gradle | 6 +-
.../MongoDbGormAutoConfiguration.groovy | 4 +-
.../MongoDbGormAutoConfigurationSpec.groovy | 14 +-
...ngoDbGormAutoConfigureWithGeoSpacialSpec.groovy | 17 +-
grails-data-mongodb/core/build.gradle | 1 -
grails-data-neo4j/build.gradle | 4 +-
grails-databinding-core/build.gradle | 2 +-
grails-databinding/build.gradle | 2 +-
.../transactions/TransactionalTransformSpec.groovy | 4 +-
grails-datamapping-rx/build.gradle | 2 +-
grails-datasource/build.gradle | 2 +-
grails-domain-class/build.gradle | 2 +-
grails-encoder/build.gradle | 2 +-
grails-geb/build.gradle | 2 +-
grails-gradle/model/build.gradle | 2 +-
.../gradle/plugin/core/GrailsGradlePlugin.groovy | 7 -
.../web/taglib/AbstractGrailsTagTests.groovy | 83 +-
grails-gsp/spring-boot/build.gradle | 1 +
.../java/grails/gsp/boot/GspAutoConfiguration.java | 2 +-
grails-i18n/build.gradle | 3 +-
.../grails/plugins/i18n/I18nAutoConfiguration.java | 2 +-
grails-interceptors/build.gradle | 2 +-
grails-logging/build.gradle | 2 +-
.../compiler/logging/LoggingTransformer.java | 35 +-
grails-mimetypes/build.gradle | 2 +-
grails-rest-transforms/build.gradle | 2 +-
grails-services/build.gradle | 2 +-
grails-shell-cli/build.gradle | 2 +-
grails-spring/build.gradle | 7 +-
.../grails/spring/GrailsApplicationContext.java | 29 -
grails-test-core/build.gradle | 4 +-
.../AbstractGrailsMockHttpServletResponse.groovy | 2 +-
grails-test-examples/app1/build.gradle | 6 +
grails-test-examples/app3/build.gradle | 6 +
grails-test-examples/exploded/build.gradle | 6 +
.../groovy/GrailsLayoutSpec.groovy | 2 +
.../views/gsp/layout/AbstractGrailsTagTests.groovy | 90 +-
grails-test-examples/gsp-sitemesh3/build.gradle | 6 +
.../hibernate5/spring-boot-hibernate/build.gradle | 3 +
.../src/main/groovy/example/Application.groovy | 2 +-
.../grails-hibernate-groovy-proxy/build.gradle | 1 +
.../src/test/groovy/example/ProxySpec.groovy | 3 +
.../src/main/groovy/example/Application.groovy | 2 +-
.../mongodb/test-data-service/build.gradle | 8 +-
grails-test-examples/plugins/exploded/build.gradle | 6 +
.../plugins/micronaut-singleton/build.gradle | 5 +
grails-test-suite-base/build.gradle | 2 +-
.../org/grails/support/MockApplicationContext.java | 5 +
grails-test-suite-persistence/build.gradle | 2 +-
.../grails/web/servlet/RenderMethodTests.groovy | 284 ++---
.../web/servlet/mvc/RedirectMethodTests.groovy | 4 +-
grails-testing-support-core/build.gradle | 5 +-
.../grails/testing/GrailsApplicationBuilder.groovy | 39 +-
grails-testing-support-datamapping/build.gradle | 2 +-
grails-testing-support-mongodb/build.gradle | 2 +-
grails-url-mappings/build.gradle | 3 +-
.../web/mapping/UrlMappingsAutoConfiguration.java | 9 +-
grails-validation/build.gradle | 2 +-
grails-web-boot/build.gradle | 2 +-
.../boot/EmbeddedContainerWithGrailsSpec.groovy | 33 +-
.../grails/boot/GrailsSpringApplicationSpec.groovy | 30 +-
grails-web-common/build.gradle | 2 +-
.../grails/web/config/http/GrailsFilterOrder.java | 48 +
.../org/grails/web/config/http/GrailsFilters.java | 9 +-
grails-web-core/build.gradle | 2 +-
.../context/GrailsWebApplicationContext.java | 7 +-
grails-web-databinding/build.gradle | 2 +-
grails-web-mvc/build.gradle | 2 +-
grails-web-url-mappings/build.gradle | 4 +-
.../grails/web/mapping/ResponseRedirector.groovy | 2 +-
.../mapping/mvc/UrlMappingsHandlerMapping.groovy | 3 +-
.../mvc/UrlMappingsInfoHandlerAdapter.groovy | 1 -
.../servlet/UrlMappingsErrorPageCustomizer.groovy | 7 +-
.../web/mapping/DefaultUrlCreatorTests.groovy | 2 +-
grails-wrapper/build.gradle | 2 +-
189 files changed, 12829 insertions(+), 801 deletions(-)
create mode 100644 grails-data-hibernate5/core/src/main/java/org/grails/orm/hibernate/support/hibernate5/ConfigurableJtaPlatform.java
create mode 100644 grails-data-hibernate5/core/src/main/java/org/grails/orm/hibernate/support/hibernate5/HibernateCallback.java
create mode 100644 grails-data-hibernate5/core/src/main/java/org/grails/orm/hibernate/support/hibernate5/HibernateExceptionTranslator.java
create mode 100644 grails-data-hibernate5/core/src/main/java/org/grails/orm/hibernate/support/hibernate5/HibernateJdbcException.java
create mode 100644 grails-data-hibernate5/core/src/main/java/org/grails/orm/hibernate/support/hibernate5/HibernateObjectRetrievalFailureException.java
create mode 100644 grails-data-hibernate5/core/src/main/java/org/grails/orm/hibernate/support/hibernate5/HibernateOperations.java
create mode 100644 grails-data-hibernate5/core/src/main/java/org/grails/orm/hibernate/support/hibernate5/HibernateOptimisticLockingFailureException.java
create mode 100644 grails-data-hibernate5/core/src/main/java/org/grails/orm/hibernate/support/hibernate5/HibernateQueryException.java
create mode 100644 grails-data-hibernate5/core/src/main/java/org/grails/orm/hibernate/support/hibernate5/HibernateSystemException.java
create mode 100644 grails-data-hibernate5/core/src/main/java/org/grails/orm/hibernate/support/hibernate5/HibernateTemplate.java
create mode 100644 grails-data-hibernate5/core/src/main/java/org/grails/orm/hibernate/support/hibernate5/HibernateTransactionManager.java
create mode 100644 grails-data-hibernate5/core/src/main/java/org/grails/orm/hibernate/support/hibernate5/LocalSessionFactoryBean.java
create mode 100644 grails-data-hibernate5/core/src/main/java/org/grails/orm/hibernate/support/hibernate5/LocalSessionFactoryBuilder.java
create mode 100644 grails-data-hibernate5/core/src/main/java/org/grails/orm/hibernate/support/hibernate5/SessionFactoryUtils.java
create mode 100644 grails-data-hibernate5/core/src/main/java/org/grails/orm/hibernate/support/hibernate5/SessionHolder.java
create mode 100644 grails-data-hibernate5/core/src/main/java/org/grails/orm/hibernate/support/hibernate5/SpringBeanContainer.java
create mode 100644 grails-data-hibernate5/core/src/main/java/org/grails/orm/hibernate/support/hibernate5/SpringFlushSynchronization.java
create mode 100644 grails-data-hibernate5/core/src/main/java/org/grails/orm/hibernate/support/hibernate5/SpringJtaSessionContext.java
create mode 100644 grails-data-hibernate5/core/src/main/java/org/grails/orm/hibernate/support/hibernate5/SpringSessionContext.java
create mode 100644 grails-data-hibernate5/core/src/main/java/org/grails/orm/hibernate/support/hibernate5/SpringSessionSynchronization.java
create mode 100644 grails-data-hibernate5/core/src/main/java/org/grails/orm/hibernate/support/hibernate5/support/AsyncRequestInterceptor.java
create mode 100644 grails-data-hibernate5/core/src/main/java/org/grails/orm/hibernate/support/hibernate5/support/OpenSessionInViewInterceptor.java
create mode 100644 grails-data-hibernate7/core/src/main/java/org/grails/orm/hibernate/support/hibernate7/ConfigurableJtaPlatform.java
create mode 100644 grails-data-hibernate7/core/src/main/java/org/grails/orm/hibernate/support/hibernate7/HibernateCallback.java
create mode 100644 grails-data-hibernate7/core/src/main/java/org/grails/orm/hibernate/support/hibernate7/HibernateExceptionTranslator.java
create mode 100644 grails-data-hibernate7/core/src/main/java/org/grails/orm/hibernate/support/hibernate7/HibernateJdbcException.java
create mode 100644 grails-data-hibernate7/core/src/main/java/org/grails/orm/hibernate/support/hibernate7/HibernateObjectRetrievalFailureException.java
create mode 100644 grails-data-hibernate7/core/src/main/java/org/grails/orm/hibernate/support/hibernate7/HibernateOperations.java
create mode 100644 grails-data-hibernate7/core/src/main/java/org/grails/orm/hibernate/support/hibernate7/HibernateOptimisticLockingFailureException.java
create mode 100644 grails-data-hibernate7/core/src/main/java/org/grails/orm/hibernate/support/hibernate7/HibernateQueryException.java
create mode 100644 grails-data-hibernate7/core/src/main/java/org/grails/orm/hibernate/support/hibernate7/HibernateSystemException.java
create mode 100644 grails-data-hibernate7/core/src/main/java/org/grails/orm/hibernate/support/hibernate7/HibernateTemplate.java
create mode 100644 grails-data-hibernate7/core/src/main/java/org/grails/orm/hibernate/support/hibernate7/HibernateTransactionManager.java
create mode 100644 grails-data-hibernate7/core/src/main/java/org/grails/orm/hibernate/support/hibernate7/LocalSessionFactoryBean.java
create mode 100644 grails-data-hibernate7/core/src/main/java/org/grails/orm/hibernate/support/hibernate7/LocalSessionFactoryBuilder.java
create mode 100644 grails-data-hibernate7/core/src/main/java/org/grails/orm/hibernate/support/hibernate7/SessionFactoryUtils.java
create mode 100644 grails-data-hibernate7/core/src/main/java/org/grails/orm/hibernate/support/hibernate7/SessionHolder.java
create mode 100644 grails-data-hibernate7/core/src/main/java/org/grails/orm/hibernate/support/hibernate7/SpringBeanContainer.java
create mode 100644 grails-data-hibernate7/core/src/main/java/org/grails/orm/hibernate/support/hibernate7/SpringFlushSynchronization.java
create mode 100644 grails-data-hibernate7/core/src/main/java/org/grails/orm/hibernate/support/hibernate7/SpringJtaSessionContext.java
create mode 100644 grails-data-hibernate7/core/src/main/java/org/grails/orm/hibernate/support/hibernate7/SpringSessionContext.java
create mode 100644 grails-data-hibernate7/core/src/main/java/org/grails/orm/hibernate/support/hibernate7/SpringSessionSynchronization.java
create mode 100644 grails-data-hibernate7/core/src/main/java/org/grails/orm/hibernate/support/hibernate7/support/AsyncRequestInterceptor.java
create mode 100644 grails-data-hibernate7/core/src/main/java/org/grails/orm/hibernate/support/hibernate7/support/OpenSessionInViewInterceptor.java
create mode 100644 grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/ChildHibernateDatastoreSpec.groovy
create mode 100644 grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/ChildHibernateDatastoreUnitSpec.groovy
create mode 100644 grails-web-common/src/main/groovy/org/grails/web/config/http/GrailsFilterOrder.java