[hibernate-commits] [hibernate/hibernate-search] d9784a: HSEARCH-1316 Update Spring ITs to use Spring Boot

GitHub noreply at github.com
Wed May 17 08:23:08 EDT 2017


  Branch: refs/heads/master
  Home:   https://github.com/hibernate/hibernate-search
  Commit: d9784a4f6160a4f12effe765858b20e6d909e188
      https://github.com/hibernate/hibernate-search/commit/d9784a4f6160a4f12effe765858b20e6d909e188
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2017-05-16 (Tue, 16 May 2017)

  Changed paths:
    M integrationtest/spring/pom.xml
    R integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/AbstractEntity.java
    R integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/Box.java
    R integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/BoxDAO.java
    R integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/BoxRun.java
    R integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/Container.java
    R integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/Doughnut.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/JtaAndSpringApplicationConfiguration.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/JtaAndSpringIT.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/JtaAndSpringMoreComplexIT.java
    R integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/JtaAndSpringMoreComplexTest.java
    R integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/JtaAndSpringTest.java
    R integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/Muffin.java
    R integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/MuffinDAO.java
    R integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/Snert.java
    R integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/SnertDAO.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/dao/BoxDAO.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/dao/MuffinDAO.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/dao/SnertDAO.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/entity/AbstractEntity.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/entity/Box.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/entity/Container.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/entity/Doughnut.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/entity/Muffin.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/entity/Snert.java
    A integrationtest/spring/src/test/resources/application-jta.yaml
    A integrationtest/spring/src/test/resources/application.yaml
    R integrationtest/spring/src/test/resources/beans.xml
    R integrationtest/spring/src/test/resources/persistence.xml

  Log Message:
  -----------
  HSEARCH-1316 Update Spring ITs to use Spring Boot


  Commit: 06aef433cbd04a767ad7fb2e9758b5204cc7b88a
      https://github.com/hibernate/hibernate-search/commit/06aef433cbd04a767ad7fb2e9758b5204cc7b88a
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2017-05-16 (Tue, 16 May 2017)

  Changed paths:
    M integrationtest/spring/src/test/resources/application-jta.yaml

  Log Message:
  -----------
  HSEARCH-1316 Remove the most obviously irrelevant custom values for configuration options in Spring ITs


  Commit: 857b970873e583e9b1ab395cd480cc3f0ca3d6c7
      https://github.com/hibernate/hibernate-search/commit/857b970873e583e9b1ab395cd480cc3f0ca3d6c7
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2017-05-16 (Tue, 16 May 2017)

  Changed paths:
    R integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/JtaAndSpringApplicationConfiguration.java
    R integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/JtaAndSpringIT.java
    R integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/JtaAndSpringMoreComplexIT.java
    R integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/dao/BoxDAO.java
    R integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/dao/MuffinDAO.java
    R integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/dao/SnertDAO.java
    R integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/entity/AbstractEntity.java
    R integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/entity/Box.java
    R integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/entity/Container.java
    R integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/entity/Doughnut.java
    R integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/entity/Muffin.java
    R integrationtest/spring/src/test/java/org/hibernate/search/test/integration/jtaspring/entity/Snert.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/jta/JtaAndSpringApplicationConfiguration.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/jta/JtaAndSpringIT.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/jta/JtaAndSpringMoreComplexIT.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/jta/dao/BoxDAO.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/jta/dao/MuffinDAO.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/jta/dao/SnertDAO.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/jta/entity/AbstractEntity.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/jta/entity/Box.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/jta/entity/Container.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/jta/entity/Doughnut.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/jta/entity/Muffin.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/jta/entity/Snert.java

  Log Message:
  -----------
  HSEARCH-1316 Move Spring JTA ITs to a subpackage of org.hibernate.search.test.integration.spring


  Commit: 1fd15efee972d1ba35b9aa328749faee660eb583
      https://github.com/hibernate/hibernate-search/commit/1fd15efee972d1ba35b9aa328749faee660eb583
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2017-05-16 (Tue, 16 May 2017)

  Changed paths:
    M engine/pom.xml
    M engine/src/main/java/org/hibernate/search/cfg/spi/SearchConfiguration.java
    A engine/src/main/java/org/hibernate/search/engine/service/beanresolver/impl/ReflectionBeanResolver.java
    A engine/src/main/java/org/hibernate/search/engine/service/beanresolver/spi/BeanResolver.java
    M engine/src/main/java/org/hibernate/search/engine/service/impl/StandardServiceManager.java
    M engine/src/main/java/org/hibernate/search/engine/service/spi/ServiceManager.java
    M engine/src/main/java/org/hibernate/search/util/logging/impl/Log.java
    M orm/pom.xml
    A orm/src/main/java/org/hibernate/search/cfg/impl/DelegatingBeanResolver.java
    M orm/src/main/java/org/hibernate/search/cfg/impl/SearchConfigurationFromHibernateCore.java
    M orm/src/main/java/org/hibernate/search/hcore/impl/HibernateSearchIntegrator.java
    M orm/src/main/java/org/hibernate/search/hcore/impl/HibernateSearchSessionFactoryObserver.java
    A orm/src/main/java/org/hibernate/search/hcore/spi/BeanResolver.java
    M orm/src/test/java/org/hibernate/search/test/configuration/integration/HibernateSearchIntegratorTest.java

  Log Message:
  -----------
  HSEARCH-1316 Introduce the BeanResolver, allowing to plug in external bean resolution mechanisms


  Commit: d247883fc280abf97938f80d0f28ccb73576c7bd
      https://github.com/hibernate/hibernate-search/commit/d247883fc280abf97938f80d0f28ccb73576c7bd
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2017-05-16 (Tue, 16 May 2017)

  Changed paths:
    M engine/src/main/java/org/hibernate/search/bridge/impl/BridgeFactory.java

  Log Message:
  -----------
  HSEARCH-1316 Use the BeanResolver in BridgeFactory


  Commit: a450112e1b218464af998e768ea187d09462a076
      https://github.com/hibernate/hibernate-search/commit/a450112e1b218464af998e768ea187d09462a076
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2017-05-16 (Tue, 16 May 2017)

  Changed paths:
    M integrationtest/spring/pom.xml
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/injection/SpringInjectionIT.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/injection/SpringInjectionITApplicationConfiguration.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/injection/i18n/InternationalizedValue.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/injection/i18n/Language.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/injection/i18n/LocalizationService.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/injection/integration/SpringBeanResolver.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/injection/integration/SpringBeanResolverContributor.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/injection/model/EntityWithSpringAwareBridges.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/injection/model/EntityWithSpringAwareBridgesDao.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/injection/search/InternationalizedValueBridge.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/injection/search/InternationalizedValueBridgeImpl.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/injection/search/InternationalizedValueClassBridge.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/injection/search/InternationalizedValueClassBridgeImpl.java
    A integrationtest/spring/src/test/resources/META-INF/services/org.hibernate.service.spi.ServiceContributor

  Log Message:
  -----------
  HSEARCH-1316 Test Spring injection in field/class bridges


  Commit: 201dcea9a7dca6a89ff4ae3203401981c7036cc8
      https://github.com/hibernate/hibernate-search/commit/201dcea9a7dca6a89ff4ae3203401981c7036cc8
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2017-05-16 (Tue, 16 May 2017)

  Changed paths:
    M engine/src/main/java/org/hibernate/search/bridge/impl/BridgeFactory.java
    M engine/src/main/java/org/hibernate/search/util/logging/impl/Log.java

  Log Message:
  -----------
  HSEARCH-1316 Fix the error message when a class bridge cannot be determined

Giving ClassBridge.class.getName() in the error log is useless, what we
want is to provide a hint as to *which* class bridge has a problem.


  Commit: 15297efe2b243a55227c809648ddf1be46a0c761
      https://github.com/hibernate/hibernate-search/commit/15297efe2b243a55227c809648ddf1be46a0c761
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2017-05-16 (Tue, 16 May 2017)

  Changed paths:
    M orm/src/main/java/org/hibernate/search/event/impl/FullTextIndexEventListener.java
    M orm/src/main/java/org/hibernate/search/hcore/impl/HibernateSearchIntegrator.java
    M orm/src/main/java/org/hibernate/search/hcore/impl/HibernateSearchSessionFactoryObserver.java
    M orm/src/main/java/org/hibernate/search/hcore/impl/SearchFactoryReference.java
    A orm/src/main/java/org/hibernate/search/hcore/spi/EnvironmentSynchronizer.java
    M orm/src/test/java/org/hibernate/search/test/configuration/integration/HibernateSearchIntegratorTest.java

  Log Message:
  -----------
  HSEARCH-1316 Allow integrators to defer the initialization of the search factory using a provided EnvironmentSynchronizer

This is necessary to integrate with CDI on WildFly in particular.

When WildFly starts Hibernate ORM, the CDI context has already
been bootstrapped, but it hasn't been initialized, so one cannot request
beans yet. The CDI context will only get fully initialized *after* Hibernate
ORM has finished starting.

When we want to provide a CDI implementation of BeanResolver, this
creates a cyclic dependency: Hibernate Search needs the BeanResolver to
be available when it starts, but the BeanResolver needs CDI to be
initialized, and CDI won't be initialized before Hibernate ORM has
started, which won't happen before Hibernate Search has started.

The EnvironmentSynchronizer provides a way to break this cyclic
dependency, by defering the initialization of Hibernate Search to when
CDI is fully initialized. If Search is accessed (either to index
entities or to execute search queries) before that, the calls will just
block.


  Commit: 03dec066bfc917fbb43d563abe95f688c9a29e11
      https://github.com/hibernate/hibernate-search/commit/03dec066bfc917fbb43d563abe95f688c9a29e11
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2017-05-16 (Tue, 16 May 2017)

  Changed paths:
    A integrationtest/wildfly/src/test/java/org/hibernate/search/test/integration/wildfly/cdi/CDIInjectionIT.java
    A integrationtest/wildfly/src/test/java/org/hibernate/search/test/integration/wildfly/cdi/bridge/InternationalizedValueBridge.java
    A integrationtest/wildfly/src/test/java/org/hibernate/search/test/integration/wildfly/cdi/bridge/InternationalizedValueBridgeImpl.java
    A integrationtest/wildfly/src/test/java/org/hibernate/search/test/integration/wildfly/cdi/bridge/InternationalizedValueClassBridge.java
    A integrationtest/wildfly/src/test/java/org/hibernate/search/test/integration/wildfly/cdi/bridge/InternationalizedValueClassBridgeImpl.java
    A integrationtest/wildfly/src/test/java/org/hibernate/search/test/integration/wildfly/cdi/i18n/InternationalizedValue.java
    A integrationtest/wildfly/src/test/java/org/hibernate/search/test/integration/wildfly/cdi/i18n/Language.java
    A integrationtest/wildfly/src/test/java/org/hibernate/search/test/integration/wildfly/cdi/i18n/LocalizationService.java
    A integrationtest/wildfly/src/test/java/org/hibernate/search/test/integration/wildfly/cdi/integration/CDIBeanManagerSynchronizer.java
    A integrationtest/wildfly/src/test/java/org/hibernate/search/test/integration/wildfly/cdi/integration/CDIBeanResolver.java
    A integrationtest/wildfly/src/test/java/org/hibernate/search/test/integration/wildfly/cdi/integration/CDIObserver.java
    A integrationtest/wildfly/src/test/java/org/hibernate/search/test/integration/wildfly/cdi/integration/CDIServiceContributor.java
    A integrationtest/wildfly/src/test/java/org/hibernate/search/test/integration/wildfly/cdi/model/EntityWithCDIAwareBridges.java
    A integrationtest/wildfly/src/test/java/org/hibernate/search/test/integration/wildfly/cdi/model/EntityWithCDIAwareBridgesDao.java
    A integrationtest/wildfly/src/test/resources/cdi/META-INF/services/javax.enterprise.inject.spi.Extension
    A integrationtest/wildfly/src/test/resources/cdi/META-INF/services/org.hibernate.service.spi.ServiceContributor
    M testing/pom.xml

  Log Message:
  -----------
  HSEARCH-1316 Test CDI injection in field/class bridges


  Commit: 06e92de3fd0b6ef6afdeac763f6caeafba787375
      https://github.com/hibernate/hibernate-search/commit/06e92de3fd0b6ef6afdeac763f6caeafba787375
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2017-05-16 (Tue, 16 May 2017)

  Changed paths:
    A engine/src/main/java/org/hibernate/search/engine/service/beanresolver/impl/ReflectionFallbackBeanResolver.java
    M engine/src/main/java/org/hibernate/search/engine/service/impl/StandardServiceManager.java

  Log Message:
  -----------
  HSEARCH-1316 Allow BeanResolver implementations to return null to fall back to reflection

This allow integrators to only provide bean resolution for a subset of
beans, for instance those with a pre-defined annotation, and still not
interfere with other beans required by Hibernate Search.


  Commit: 5d6a73d7a2d7b8ea9cbf8628355bc2c4da245143
      https://github.com/hibernate/hibernate-search/commit/5d6a73d7a2d7b8ea9cbf8628355bc2c4da245143
  Author: Yoann Rodière <yoann at hibernate.org>
  Date:   2017-05-16 (Tue, 16 May 2017)

  Changed paths:
    M integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/injection/SpringInjectionIT.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/injection/integration/ResolveInHibernateSearch.java
    M integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/injection/integration/SpringBeanResolver.java
    M integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/injection/model/EntityWithSpringAwareBridges.java
    M integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/injection/model/EntityWithSpringAwareBridgesDao.java
    M integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/injection/search/InternationalizedValueBridge.java
    M integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/injection/search/InternationalizedValueClassBridge.java
    A integrationtest/spring/src/test/java/org/hibernate/search/test/integration/spring/injection/search/NonSpringBridge.java

  Log Message:
  -----------
  HSEARCH-1316 Test behavior when BeanResolver implementations return null


  Commit: 99184a6a52a1d7895cd0a6f30390a4397acc941b
      https://github.com/hibernate/hibernate-search/commit/99184a6a52a1d7895cd0a6f30390a4397acc941b
  Author: Sanne Grinovero <sanne at hibernate.org>
  Date:   2017-05-16 (Tue, 16 May 2017)

  Changed paths:
    M orm/src/main/java/org/hibernate/search/cfg/impl/DelegatingBeanResolver.java

  Log Message:
  -----------
  HSEARCH-1316 Make DelegatingBeanResolver a non-public final class


  Commit: a841db6b4b1c90f60c0db68149ede6a9766f559e
      https://github.com/hibernate/hibernate-search/commit/a841db6b4b1c90f60c0db68149ede6a9766f559e
  Author: Sanne Grinovero <sanne at hibernate.org>
  Date:   2017-05-16 (Tue, 16 May 2017)

  Changed paths:
    M orm/src/main/java/org/hibernate/search/hcore/impl/HibernateSearchSessionFactoryObserver.java
    A orm/src/main/java/org/hibernate/search/hcore/impl/JMXHook.java

  Log Message:
  -----------
  HSEARCH-1316 Clarify synchronization of state of JMX registrations


  Commit: dc22084be589445a4dbc427bae9f5ff95da42a8c
      https://github.com/hibernate/hibernate-search/commit/dc22084be589445a4dbc427bae9f5ff95da42a8c
  Author: Sanne Grinovero <sanne at hibernate.org>
  Date:   2017-05-16 (Tue, 16 May 2017)

  Changed paths:
    M orm/src/main/java/org/hibernate/search/hcore/impl/HibernateSearchSessionFactoryObserver.java
    M orm/src/main/java/org/hibernate/search/hcore/impl/SearchFactoryReference.java

  Log Message:
  -----------
  HSEARCH-1316 Avoid redundant delegation via Futures in SearchFactoryReference


  Commit: bf4342c8991e0384243ff22317c87102738daf59
      https://github.com/hibernate/hibernate-search/commit/bf4342c8991e0384243ff22317c87102738daf59
  Author: Sanne Grinovero <sanne at hibernate.org>
  Date:   2017-05-16 (Tue, 16 May 2017)

  Changed paths:
    A orm/src/main/java/org/hibernate/search/event/impl/EventsIntegratorState.java
    M orm/src/main/java/org/hibernate/search/event/impl/FullTextIndexEventListener.java
    A orm/src/main/java/org/hibernate/search/event/impl/InitializingIntegratorState.java
    A orm/src/main/java/org/hibernate/search/event/impl/NonInitializedIntegratorState.java
    A orm/src/main/java/org/hibernate/search/event/impl/OptimalEventsIntegratorState.java

  Log Message:
  -----------
  HSEARCH-1316 Protect all state depending on the Integrator consistently

The FullTextIndexEventListener has several more fields which depend on the
initialization of the final ExtendedSearchIntegrator, this patch is making
sure that any such necessary state is accessed consistently and via the
required visibility guards.

There's something dodgy going on with Serializability of this class but that
appears to be a problem we already had.


Compare: https://github.com/hibernate/hibernate-search/compare/72ae9800fbd3...bf4342c8991e


More information about the hibernate-commits mailing list