|  | @@ -0,0 +1,289 @@
 | 
	
		
			
				|  |  | +<?xml version="1.0" encoding="UTF-8" ?>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +<!-- This is the default config with stuff non-essential to Dovecot removed. -->
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +<config>
 | 
	
		
			
				|  |  | +  <!-- Controls what version of Lucene various components of Solr
 | 
	
		
			
				|  |  | +       adhere to.  Generally, you want to use the latest version to
 | 
	
		
			
				|  |  | +       get all bug fixes and improvements. It is highly recommended
 | 
	
		
			
				|  |  | +       that you fully re-index after changing this setting as it can
 | 
	
		
			
				|  |  | +       affect both how text is indexed and queried.
 | 
	
		
			
				|  |  | +  -->
 | 
	
		
			
				|  |  | +  <luceneMatchVersion>7.7.0</luceneMatchVersion>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  <!-- A 'dir' option by itself adds any files found in the directory
 | 
	
		
			
				|  |  | +       to the classpath, this is useful for including all jars in a
 | 
	
		
			
				|  |  | +       directory.
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +       When a 'regex' is specified in addition to a 'dir', only the
 | 
	
		
			
				|  |  | +       files in that directory which completely match the regex
 | 
	
		
			
				|  |  | +       (anchored on both ends) will be included.
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +       If a 'dir' option (with or without a regex) is used and nothing
 | 
	
		
			
				|  |  | +       is found that matches, a warning will be logged.
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +       The examples below can be used to load some solr-contribs along
 | 
	
		
			
				|  |  | +       with their external dependencies.
 | 
	
		
			
				|  |  | +    -->
 | 
	
		
			
				|  |  | +  <lib dir="${solr.install.dir:../../../..}/contrib/extraction/lib" regex=".*\.jar" />
 | 
	
		
			
				|  |  | +  <lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-cell-\d.*\.jar" />
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  <lib dir="${solr.install.dir:../../../..}/contrib/clustering/lib/" regex=".*\.jar" />
 | 
	
		
			
				|  |  | +  <lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-clustering-\d.*\.jar" />
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  <lib dir="${solr.install.dir:../../../..}/contrib/langid/lib/" regex=".*\.jar" />
 | 
	
		
			
				|  |  | +  <lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-langid-\d.*\.jar" />
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  <lib dir="${solr.install.dir:../../../..}/contrib/velocity/lib" regex=".*\.jar" />
 | 
	
		
			
				|  |  | +  <lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-velocity-\d.*\.jar" />
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  <!-- Data Directory
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +       Used to specify an alternate directory to hold all index data
 | 
	
		
			
				|  |  | +       other than the default ./data under the Solr home.  If
 | 
	
		
			
				|  |  | +       replication is in use, this should match the replication
 | 
	
		
			
				|  |  | +       configuration.
 | 
	
		
			
				|  |  | +    -->
 | 
	
		
			
				|  |  | +  <dataDir>${solr.data.dir:}</dataDir>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  <!-- The default high-performance update handler -->
 | 
	
		
			
				|  |  | +  <updateHandler class="solr.DirectUpdateHandler2">
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    <!-- Enables a transaction log, used for real-time get, durability, and
 | 
	
		
			
				|  |  | +         and solr cloud replica recovery.  The log can grow as big as
 | 
	
		
			
				|  |  | +         uncommitted changes to the index, so use of a hard autoCommit
 | 
	
		
			
				|  |  | +         is recommended (see below).
 | 
	
		
			
				|  |  | +         "dir" - the target directory for transaction logs, defaults to the
 | 
	
		
			
				|  |  | +                solr data directory.
 | 
	
		
			
				|  |  | +         "numVersionBuckets" - sets the number of buckets used to keep
 | 
	
		
			
				|  |  | +                track of max version values when checking for re-ordered
 | 
	
		
			
				|  |  | +                updates; increase this value to reduce the cost of
 | 
	
		
			
				|  |  | +                synchronizing access to version buckets during high-volume
 | 
	
		
			
				|  |  | +                indexing, this requires 8 bytes (long) * numVersionBuckets
 | 
	
		
			
				|  |  | +                of heap space per Solr core.
 | 
	
		
			
				|  |  | +    -->
 | 
	
		
			
				|  |  | +    <updateLog>
 | 
	
		
			
				|  |  | +      <str name="dir">${solr.ulog.dir:}</str>
 | 
	
		
			
				|  |  | +      <int name="numVersionBuckets">${solr.ulog.numVersionBuckets:65536}</int>
 | 
	
		
			
				|  |  | +    </updateLog>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    <!-- AutoCommit
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +         Perform a hard commit automatically under certain conditions.
 | 
	
		
			
				|  |  | +         Instead of enabling autoCommit, consider using "commitWithin"
 | 
	
		
			
				|  |  | +         when adding documents.
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +         http://wiki.apache.org/solr/UpdateXmlMessages
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +         maxDocs - Maximum number of documents to add since the last
 | 
	
		
			
				|  |  | +                   commit before automatically triggering a new commit.
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +         maxTime - Maximum amount of time in ms that is allowed to pass
 | 
	
		
			
				|  |  | +                   since a document was added before automatically
 | 
	
		
			
				|  |  | +                   triggering a new commit.
 | 
	
		
			
				|  |  | +         openSearcher - if false, the commit causes recent index changes
 | 
	
		
			
				|  |  | +           to be flushed to stable storage, but does not cause a new
 | 
	
		
			
				|  |  | +           searcher to be opened to make those changes visible.
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +         If the updateLog is enabled, then it's highly recommended to
 | 
	
		
			
				|  |  | +         have some sort of hard autoCommit to limit the log size.
 | 
	
		
			
				|  |  | +      -->
 | 
	
		
			
				|  |  | +    <autoCommit>
 | 
	
		
			
				|  |  | +      <maxTime>${solr.autoCommit.maxTime:15000}</maxTime>
 | 
	
		
			
				|  |  | +      <openSearcher>false</openSearcher>
 | 
	
		
			
				|  |  | +    </autoCommit>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    <!-- softAutoCommit is like autoCommit except it causes a
 | 
	
		
			
				|  |  | +         'soft' commit which only ensures that changes are visible
 | 
	
		
			
				|  |  | +         but does not ensure that data is synced to disk.  This is
 | 
	
		
			
				|  |  | +         faster and more near-realtime friendly than a hard commit.
 | 
	
		
			
				|  |  | +      -->
 | 
	
		
			
				|  |  | +    <autoSoftCommit>
 | 
	
		
			
				|  |  | +      <maxTime>${solr.autoSoftCommit.maxTime:-1}</maxTime>
 | 
	
		
			
				|  |  | +    </autoSoftCommit>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    <!-- Update Related Event Listeners
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +         Various IndexWriter related events can trigger Listeners to
 | 
	
		
			
				|  |  | +         take actions.
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +         postCommit - fired after every commit or optimize command
 | 
	
		
			
				|  |  | +         postOptimize - fired after every optimize command
 | 
	
		
			
				|  |  | +      -->
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  </updateHandler>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 | 
	
		
			
				|  |  | +       Query section - these settings control query time things like caches
 | 
	
		
			
				|  |  | +       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
 | 
	
		
			
				|  |  | +  <query>
 | 
	
		
			
				|  |  | +    <!-- Solr Internal Query Caches
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +         There are two implementations of cache available for Solr,
 | 
	
		
			
				|  |  | +         LRUCache, based on a synchronized LinkedHashMap, and
 | 
	
		
			
				|  |  | +         FastLRUCache, based on a ConcurrentHashMap.
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +         FastLRUCache has faster gets and slower puts in single
 | 
	
		
			
				|  |  | +         threaded operation and thus is generally faster than LRUCache
 | 
	
		
			
				|  |  | +         when the hit ratio of the cache is high (> 75%), and may be
 | 
	
		
			
				|  |  | +         faster under other scenarios on multi-cpu systems.
 | 
	
		
			
				|  |  | +    -->
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    <!-- Filter Cache
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +         Cache used by SolrIndexSearcher for filters (DocSets),
 | 
	
		
			
				|  |  | +         unordered sets of *all* documents that match a query.  When a
 | 
	
		
			
				|  |  | +         new searcher is opened, its caches may be prepopulated or
 | 
	
		
			
				|  |  | +         "autowarmed" using data from caches in the old searcher.
 | 
	
		
			
				|  |  | +         autowarmCount is the number of items to prepopulate.  For
 | 
	
		
			
				|  |  | +         LRUCache, the autowarmed items will be the most recently
 | 
	
		
			
				|  |  | +         accessed items.
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +         Parameters:
 | 
	
		
			
				|  |  | +           class - the SolrCache implementation LRUCache or
 | 
	
		
			
				|  |  | +               (LRUCache or FastLRUCache)
 | 
	
		
			
				|  |  | +           size - the maximum number of entries in the cache
 | 
	
		
			
				|  |  | +           initialSize - the initial capacity (number of entries) of
 | 
	
		
			
				|  |  | +               the cache.  (see java.util.HashMap)
 | 
	
		
			
				|  |  | +           autowarmCount - the number of entries to prepopulate from
 | 
	
		
			
				|  |  | +               and old cache.
 | 
	
		
			
				|  |  | +           maxRamMB - the maximum amount of RAM (in MB) that this cache is allowed
 | 
	
		
			
				|  |  | +                      to occupy. Note that when this option is specified, the size
 | 
	
		
			
				|  |  | +                      and initialSize parameters are ignored.
 | 
	
		
			
				|  |  | +      -->
 | 
	
		
			
				|  |  | +    <filterCache class="solr.FastLRUCache"
 | 
	
		
			
				|  |  | +                 size="512"
 | 
	
		
			
				|  |  | +                 initialSize="512"
 | 
	
		
			
				|  |  | +                 autowarmCount="0"/>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    <!-- Query Result Cache
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +         Caches results of searches - ordered lists of document ids
 | 
	
		
			
				|  |  | +         (DocList) based on a query, a sort, and the range of documents requested.
 | 
	
		
			
				|  |  | +         Additional supported parameter by LRUCache:
 | 
	
		
			
				|  |  | +            maxRamMB - the maximum amount of RAM (in MB) that this cache is allowed
 | 
	
		
			
				|  |  | +                       to occupy
 | 
	
		
			
				|  |  | +      -->
 | 
	
		
			
				|  |  | +    <queryResultCache class="solr.LRUCache"
 | 
	
		
			
				|  |  | +                      size="512"
 | 
	
		
			
				|  |  | +                      initialSize="512"
 | 
	
		
			
				|  |  | +                      autowarmCount="0"/>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    <!-- Document Cache
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +         Caches Lucene Document objects (the stored fields for each
 | 
	
		
			
				|  |  | +         document).  Since Lucene internal document ids are transient,
 | 
	
		
			
				|  |  | +         this cache will not be autowarmed.
 | 
	
		
			
				|  |  | +      -->
 | 
	
		
			
				|  |  | +    <documentCache class="solr.LRUCache"
 | 
	
		
			
				|  |  | +                   size="512"
 | 
	
		
			
				|  |  | +                   initialSize="512"
 | 
	
		
			
				|  |  | +                   autowarmCount="0"/>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    <!-- custom cache currently used by block join -->
 | 
	
		
			
				|  |  | +    <cache name="perSegFilter"
 | 
	
		
			
				|  |  | +           class="solr.search.LRUCache"
 | 
	
		
			
				|  |  | +           size="10"
 | 
	
		
			
				|  |  | +           initialSize="0"
 | 
	
		
			
				|  |  | +           autowarmCount="10"
 | 
	
		
			
				|  |  | +           regenerator="solr.NoOpRegenerator" />
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    <!-- Lazy Field Loading
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +         If true, stored fields that are not requested will be loaded
 | 
	
		
			
				|  |  | +         lazily.  This can result in a significant speed improvement
 | 
	
		
			
				|  |  | +         if the usual case is to not load all stored fields,
 | 
	
		
			
				|  |  | +         especially if the skipped fields are large compressed text
 | 
	
		
			
				|  |  | +         fields.
 | 
	
		
			
				|  |  | +    -->
 | 
	
		
			
				|  |  | +    <enableLazyFieldLoading>true</enableLazyFieldLoading>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    <!-- Result Window Size
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +         An optimization for use with the queryResultCache.  When a search
 | 
	
		
			
				|  |  | +         is requested, a superset of the requested number of document ids
 | 
	
		
			
				|  |  | +         are collected.  For example, if a search for a particular query
 | 
	
		
			
				|  |  | +         requests matching documents 10 through 19, and queryWindowSize is 50,
 | 
	
		
			
				|  |  | +         then documents 0 through 49 will be collected and cached.  Any further
 | 
	
		
			
				|  |  | +         requests in that range can be satisfied via the cache.
 | 
	
		
			
				|  |  | +      -->
 | 
	
		
			
				|  |  | +    <queryResultWindowSize>20</queryResultWindowSize>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    <!-- Maximum number of documents to cache for any entry in the
 | 
	
		
			
				|  |  | +         queryResultCache.
 | 
	
		
			
				|  |  | +      -->
 | 
	
		
			
				|  |  | +    <queryResultMaxDocsCached>200</queryResultMaxDocsCached>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    <!-- Use Cold Searcher
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +         If a search request comes in and there is no current
 | 
	
		
			
				|  |  | +         registered searcher, then immediately register the still
 | 
	
		
			
				|  |  | +         warming searcher and use it.  If "false" then all requests
 | 
	
		
			
				|  |  | +         will block until the first searcher is done warming.
 | 
	
		
			
				|  |  | +      -->
 | 
	
		
			
				|  |  | +    <useColdSearcher>false</useColdSearcher>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  </query>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  <!-- Request Dispatcher
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +       This section contains instructions for how the SolrDispatchFilter
 | 
	
		
			
				|  |  | +       should behave when processing requests for this SolrCore.
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    -->
 | 
	
		
			
				|  |  | +  <requestDispatcher>
 | 
	
		
			
				|  |  | +    <httpCaching never304="true" />
 | 
	
		
			
				|  |  | +  </requestDispatcher>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  <!-- Request Handlers
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +       http://wiki.apache.org/solr/SolrRequestHandler
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +       Incoming queries will be dispatched to a specific handler by name
 | 
	
		
			
				|  |  | +       based on the path specified in the request.
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +       If a Request Handler is declared with startup="lazy", then it will
 | 
	
		
			
				|  |  | +       not be initialized until the first request that uses it.
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    -->
 | 
	
		
			
				|  |  | +  <!-- SearchHandler
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +       http://wiki.apache.org/solr/SearchHandler
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +       For processing Search Queries, the primary Request Handler
 | 
	
		
			
				|  |  | +       provided with Solr is "SearchHandler" It delegates to a sequent
 | 
	
		
			
				|  |  | +       of SearchComponents (see below) and supports distributed
 | 
	
		
			
				|  |  | +       queries across multiple shards
 | 
	
		
			
				|  |  | +    -->
 | 
	
		
			
				|  |  | +  <requestHandler name="/select" class="solr.SearchHandler">
 | 
	
		
			
				|  |  | +    <!-- default values for query parameters can be specified, these
 | 
	
		
			
				|  |  | +         will be overridden by parameters in the request
 | 
	
		
			
				|  |  | +      -->
 | 
	
		
			
				|  |  | +    <lst name="defaults">
 | 
	
		
			
				|  |  | +      <str name="echoParams">explicit</str>
 | 
	
		
			
				|  |  | +      <int name="rows">10</int>
 | 
	
		
			
				|  |  | +    </lst>
 | 
	
		
			
				|  |  | +  </requestHandler>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  <initParams path="/update/**,/select">
 | 
	
		
			
				|  |  | +    <lst name="defaults">
 | 
	
		
			
				|  |  | +      <str name="df">_text_</str>
 | 
	
		
			
				|  |  | +    </lst>
 | 
	
		
			
				|  |  | +  </initParams>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  <!-- Response Writers
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +       http://wiki.apache.org/solr/QueryResponseWriter
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +       Request responses will be written using the writer specified by
 | 
	
		
			
				|  |  | +       the 'wt' request parameter matching the name of a registered
 | 
	
		
			
				|  |  | +       writer.
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +       The "default" writer is the default and will be used if 'wt' is
 | 
	
		
			
				|  |  | +       not specified in the request.
 | 
	
		
			
				|  |  | +    -->
 | 
	
		
			
				|  |  | +  <queryResponseWriter name="xml"
 | 
	
		
			
				|  |  | +                       default="true"
 | 
	
		
			
				|  |  | +                       class="solr.XMLResponseWriter" />
 | 
	
		
			
				|  |  | +</config>
 |