Details

    • Type: Bug
    • Status: Closed
    • Priority: Blocker
    • Resolution: Rejected
    • Affects Version/s: 5.5.4.Final
    • Fix Version/s: None
    • Component/s: massindexer
    • Labels:
      None
    • Environment:
      hibernateVersion = '5.1.0.Final'
      hibernateSearchVersion = '5.5.4.Final'
      oracle-xe-11g

      Spring Boot with:
      spring-platform Brussels-SR1
      spring-cloud-dependencies Camden.SR6
    • Bug Testcase Reminder (view):

      Bug reports should generally be accompanied by a test case!

    • Last commented by a user?:
      true

      Description

      This behaviour has been reported in a previous version and reported as closed, but we are still facing the MassIndexer freeze from time to time, on both development and production environment.

      Our datasource is configured with default Spring Boot pool settings (max 100 connections) and is a oracle-xe-11 in a docker container for development and a regular oracle in production.

        datasource:
          platform: oracle
          initialize: false
          continueOnError: true
          driverClassName: oracle.jdbc.OracleDriver
          url: jdbc:oracle:thin:@//localhost:1521/XE
         
          test-on-borrow: true
          test-while-idle: true
          validation-query: select 1 from dual
      
        jpa:
          show-sql: false
          database-platform: org.hibernate.dialect.Oracle10gDialect
          hibernate:
            naming-strategy: org.hibernate.cfg.ImprovedNamingStrategy
            ddl-auto: none
      

      We are indexing 7 entity types, the reindexing code is pretty straightforward

       @Transactional
        override def rebuildIndex: Unit = {
          try {
            val start = System.currentTimeMillis()
            LOGGER.info("Creating Lucene Index...")
            val fullTextEntityManager: FullTextEntityManager = Search.getFullTextEntityManager(entityManager)
            fullTextEntityManager.createIndexer().startAndWait()
            LOGGER.info("Index created successfully in " + (System.currentTimeMillis() - start) + "ms")
          }
          catch {
            case e: InterruptedException => LOGGER.error("An error occurred trying to build the search index: " + e)
          }
      

      The reindexing sometimes freezes and sometimes completes successfully. When the reindexing freezes we have this in the logs then it stops:

      2017-04-27 09:39:56.770  INFO 11997 --- [ entityloader-1] o.h.s.b.i.SimpleIndexingProgressMonitor  : HSEARCH000030: 1750 documents indexed in 5337 ms
      2017-04-27 09:39:56.771  INFO 11997 --- [ entityloader-1] o.h.s.b.i.SimpleIndexingProgressMonitor  : HSEARCH000031: Indexing speed: 327.899567 documents/second; progress: 98.70%
      2017-04-27 09:39:56.907  INFO 11997 --- [ntifierloader-1] o.h.s.b.i.SimpleIndexingProgressMonitor  : HSEARCH000027: Going to reindex 19 entities
      

      With the help of debugger we can see that all thread are waiting

        Attachments

          Issue links

            Activity

              People

              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: