org.hibernate.search.backend.impl.lucene.overrides

## Class ConcurrentMergeScheduler

- java.lang.Object
- - org.apache.lucene.index.MergeScheduler
  - - org.apache.lucene.index.ConcurrentMergeScheduler
    - - org.hibernate.search.backend.impl.lucene.overrides.ConcurrentMergeScheduler

- All Implemented Interfaces:
    Closeable, AutoCloseable

      public class ConcurrentMergeScheduler
      extends ConcurrentMergeScheduler

  We customize Lucene's ConcurrentMergeScheduler to route eventual exceptions to our configurable error handler.
  Since:
    3.3
  Author:
    Sanne Grinovero
  See Also:
    `ErrorHandler`

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.apache.lucene.index.ConcurrentMergeScheduler

      `ConcurrentMergeScheduler.MergeThread`

  - ### Field Summary

    - ### Fields inherited from class org.apache.lucene.index.ConcurrentMergeScheduler

      `AUTO_DETECT_MERGES_AND_THREADS, DEFAULT_CPU_CORE_COUNT_PROPERTY, DEFAULT_SPINS_PROPERTY, mergeThreadCount, mergeThreads, targetMBPerSec`

    - ### Fields inherited from class org.apache.lucene.index.MergeScheduler

      `infoStream`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ConcurrentMergeScheduler(ErrorHandler errorHandler, String indexName)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected ConcurrentMergeScheduler.MergeThread` | `getMergeThread(IndexWriter writer, MergePolicy.OneMerge merge)`
    `protected void` | `handleMergeException(Directory dir, Throwable t)`

    - ### Methods inherited from class org.apache.lucene.index.ConcurrentMergeScheduler

      `close, disableAutoIOThrottle, doMerge, doStall, enableAutoIOThrottle, getAutoIOThrottle, getForceMergeMBPerSec, getIORateLimitMBPerSec, getMaxMergeCount, getMaxThreadCount, maybeStall, merge, mergeThreadCount, setDefaultMaxMergesAndThreads, setForceMergeMBPerSec, setMaxMergesAndThreads, sync, targetMBPerSecChanged, toString, updateMergeThreads`

    - ### Methods inherited from class org.apache.lucene.index.MergeScheduler

      `message, verbose`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### ConcurrentMergeScheduler

          public ConcurrentMergeScheduler(ErrorHandler errorHandler,
                                          String indexName)

  - ### Method Detail

    - #### handleMergeException

          protected void handleMergeException(Directory dir,
                                              Throwable t)

      Overrides:
        `handleMergeException` in class `ConcurrentMergeScheduler`

    - #### getMergeThread

          protected ConcurrentMergeScheduler.MergeThread getMergeThread(IndexWriter writer,
                                                                        MergePolicy.OneMerge merge)
                                                                 throws IOException

      Overrides:
        `getMergeThread` in class `ConcurrentMergeScheduler`
      Throws:
        `IOException`

Copyright © 2006-2017 Red Hat, Inc. All Rights Reserved