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