Complete redo of Debian packaging
[lui-solr.git] / conf / solr-home / lui / conf / solrconfig.xml
diff --git a/conf/solr-home/lui/conf/solrconfig.xml b/conf/solr-home/lui/conf/solrconfig.xml
new file mode 100644 (file)
index 0000000..500518c
--- /dev/null
@@ -0,0 +1,262 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--  
+     This is the Solr core configuration file for the Index Data Local
+     Unified Index.
+     
+     For more details about configurations options that may appear in
+     this file, see http://wiki.apache.org/solr/SolrConfigXml and the
+     "Configuring solrconfig.xml" section of the Solr Reference
+     Guide.
+-->
+<config>
+
+  <luceneMatchVersion>5.5.1</luceneMatchVersion>
+  <dataDir>${solr.data.dir:/var/lib/masterkey/lui/data/lui}</dataDir>
+  <directoryFactory name="DirectoryFactory" 
+                    class="${solr.directoryFactory:solr.NRTCachingDirectoryFactory}"/> 
+  <codecFactory class="solr.SchemaCodecFactory"/>
+
+  <!-- Use the ClassicIndexSchemaFactory, not Managed -->
+  <schemaFactory class="ClassicIndexSchemaFactory"/>
+
+  <indexConfig>
+    <lockType>${solr.lock.type:native}</lockType>
+    <!-- logging controlled through log4j.properties -->
+     <infoStream>true</infoStream>
+  </indexConfig>
+
+
+  <!--
+       Enable JMX if and only if an existing MBeanServer
+       is found.
+  -->
+  <jmx />
+
+  <!-- The default high-performance update handler -->
+  <updateHandler class="solr.DirectUpdateHandler2">
+
+    <updateLog>
+      <str name="dir">${solr.ulog.dir:}</str>
+    </updateLog>
+
+    <autoCommit> 
+      <maxTime>${solr.autoCommit.maxTime:15000}</maxTime> 
+      <openSearcher>false</openSearcher> 
+    </autoCommit>
+    
+    <autoSoftCommit> 
+      <maxTime>${solr.autoSoftCommit.maxTime:-1}</maxTime> 
+    </autoSoftCommit>
+
+
+  </updateHandler>
+  
+  <query>
+
+    <maxBooleanClauses>1024</maxBooleanClauses>
+
+    <filterCache class="solr.FastLRUCache"
+                 size="512"
+                 initialSize="512"
+                 autowarmCount="0"/>
+
+    <queryResultCache class="solr.LRUCache"
+                     size="512"
+                     initialSize="512"
+                     autowarmCount="0"/>
+   
+    <documentCache class="solr.LRUCache"
+                   size="512"
+                   initialSize="512"
+                   autowarmCount="0"/>
+    
+    <enableLazyFieldLoading>true</enableLazyFieldLoading>
+    <queryResultWindowSize>20</queryResultWindowSize>
+    <queryResultMaxDocsCached>200</queryResultMaxDocsCached>
+
+   <!-- Query Related Event Listeners: warm up the facet cache -->
+    <listener event="newSearcher" class="solr.QuerySenderListener">
+      <arr name="queries">
+        <lst>
+         <str name="q">database:*</str>
+         <str name="facet">true</str>
+         <str name="facet.mincount">1</str>
+         <str name="facet.field">author_exact</str>
+         <str name="facet.field">subject_exact</str>
+         <str name="facet.field">medium_exact</str>
+         <str name="facet.field">date</str>
+         <str name="facet.field">database</str>
+        </lst>
+      </arr>
+    </listener>
+
+    <listener event="firstSearcher" class="solr.QuerySenderListener">
+      <arr name="queries">
+        <lst>
+         <str name="q">database:*</str>
+         <str name="facet">true</str>
+         <str name="facet.mincount">1</str>
+         <str name="facet.field">author_exact</str>
+         <str name="facet.field">subject_exact</str>
+         <str name="facet.field">medium_exact</str>
+         <str name="facet.field">date</str>
+         <str name="facet.field">database</str>
+        </lst>
+      </arr>
+    </listener>
+
+    <useColdSearcher>false</useColdSearcher>
+    <maxWarmingSearchers>2</maxWarmingSearchers>
+
+  </query>
+
+  <requestDispatcher handleSelect="false" >
+
+    <requestParsers enableRemoteStreaming="true" 
+                    multipartUploadLimitInKB="2048000"
+                    formdataUploadLimitInKB="2048"
+                    addHttpRequestToContext="false"/>
+
+    <httpCaching never304="true" />
+    
+  </requestDispatcher>
+
+  <!-- Request Handlers -->
+
+  <requestHandler name="/select" class="solr.SearchHandler">
+     <lst name="defaults">
+       <str name="echoParams">explicit</str>
+       <int name="rows">10</int>
+       <str name="df">text</str>
+       <str name="fl">*,score</str>
+       <str name="q.op">AND</str>
+     </lst>
+  </requestHandler>
+
+  <requestHandler name="/query" class="solr.SearchHandler">
+     <lst name="defaults">
+       <str name="echoParams">explicit</str>
+       <str name="wt">json</str>
+       <str name="indent">true</str>
+       <str name="df">text</str>
+       <str name="fl">*,score</str>
+       <str name="q.op">AND</str>
+     </lst>
+  </requestHandler>
+
+  <requestHandler name="/get" class="solr.RealTimeGetHandler">
+     <lst name="defaults">
+       <str name="omitHeader">true</str>
+       <str name="wt">json</str>
+       <str name="indent">true</str>
+     </lst>
+  </requestHandler>
+
+  <requestHandler name="/export" class="solr.SearchHandler">
+    <lst name="invariants">
+      <str name="rq">{!xport}</str>
+      <str name="wt">xsort</str>
+      <str name="distrib">false</str>
+    </lst>
+
+    <arr name="components">
+      <str>query</str>
+    </arr>
+  </requestHandler>
+
+  <!-- Update Request Handlers -->
+  
+  <initParams path="/update/**">
+    <lst name="defaults">
+      <str name="update.chain">clone-fields</str>
+    </lst>
+  </initParams>
+
+  <requestHandler name="/update" class="solr.UpdateRequestHandler" />
+
+  <requestHandler name="/update/extract" 
+                  startup="lazy"
+                  class="solr.extraction.ExtractingRequestHandler" >
+    <lst name="defaults">
+      <str name="lowernames">true</str>
+      <str name="uprefix">ignored_</str>
+
+      <!-- capture link hrefs but ignore div attributes -->
+      <str name="captureAttr">true</str>
+      <str name="fmap.a">links</str>
+      <str name="fmap.div">ignored_</str>
+    </lst>
+  </requestHandler>
+
+  <!-- analysis handlers -->
+       
+  <requestHandler name="/analysis/field" 
+                  startup="lazy"
+                  class="solr.FieldAnalysisRequestHandler" />
+
+  <requestHandler name="/analysis/document" 
+                  class="solr.DocumentAnalysisRequestHandler" 
+                  startup="lazy" />
+
+  <!-- ping/healthcheck -->
+  <requestHandler name="/admin/ping" class="solr.PingRequestHandler">
+    <lst name="invariants">
+      <str name="q">solrpingquery</str>
+    </lst>
+    <lst name="defaults">
+      <str name="echoParams">all</str>
+    </lst>
+  </requestHandler>
+
+  <!-- Echo the request contents back to the client -->
+  <requestHandler name="/debug/dump" class="solr.DumpRequestHandler" >
+    <lst name="defaults">
+     <str name="echoParams">explicit</str> 
+     <str name="echoHandler">true</str>
+    </lst>
+  </requestHandler>
+  
+  <!-- Solr Replication -->
+  <requestHandler name="/replication" class="solr.ReplicationHandler" > 
+    <lst name="master">
+      <str name="replicateAfter">commit</str>
+      <str name="replicateAfter">startup</str>
+      <str name="confFiles">schema.xml,stopwords.txt</str>
+    </lst>
+  </requestHandler>
+
+  <!-- Update Processors -->
+  <!-- 
+       Hook in a CloneFieldUpdateProcessor to copy all fields
+       except for binaries to the "text" (default search) field
+  -->
+  <updateRequestProcessorChain name="clone-fields">
+     <processor class="solr.CloneFieldUpdateProcessorFactory">
+       <lst name="source">
+         <str name="fieldRegex">.*</str>
+         <lst name="exclude">
+           <str name="fieldRegex">.*_binary$</str>
+         </lst>
+       </lst>
+       <str name="dest">text</str>
+     </processor>
+     <processor class="solr.LogUpdateProcessorFactory" />
+     <processor class="solr.RunUpdateProcessorFactory" />
+  </updateRequestProcessorChain>    
+  <!-- Response Writers -->
+
+  <queryResponseWriter name="json" class="solr.JSONResponseWriter">
+     <!-- For debugging purposes, JSON responses are written as
+      plain text so that they are easy to read in *any* browser.
+      If you expect a MIME type of "application/json" just remove this override.
+     -->
+    <str name="content-type">text/plain; charset=UTF-8</str>
+  </queryResponseWriter>
+  
+  <!-- Legacy config for the admin interface -->
+  <admin>
+    <defaultQuery>*:*</defaultQuery>
+  </admin>
+
+</config>