More work towards SolrCloud/Docker.
[lui-solr.git] / docker / solr / lui-solr / solrconfig.xml
1 <?xml version="1.0" encoding="UTF-8" ?>
2 <!--  
3      This is the Solr core configuration file for the Index Data Local
4      Unified Index.
5      
6      For more details about configurations options that may appear in
7      this file, see http://wiki.apache.org/solr/SolrConfigXml and the
8      "Configuring solrconfig.xml" section of the Solr Reference
9      Guide.
10 -->
11 <config>
12
13   <luceneMatchVersion>5.5.1</luceneMatchVersion>
14   <directoryFactory name="DirectoryFactory" 
15                     class="${solr.directoryFactory:solr.NRTCachingDirectoryFactory}"/> 
16   <codecFactory class="solr.SchemaCodecFactory"/>
17
18   <!-- Use the ClassicIndexSchemaFactory, not Managed -->
19   <schemaFactory class="ClassicIndexSchemaFactory"/>
20
21   <indexConfig>
22     <lockType>${solr.lock.type:native}</lockType>
23     <!-- logging controlled through log4j.properties -->
24      <infoStream>true</infoStream>
25   </indexConfig>
26
27
28   <!--
29        Enable JMX if and only if an existing MBeanServer
30        is found.
31   -->
32   <jmx />
33
34   <!-- The default high-performance update handler -->
35   <updateHandler class="solr.DirectUpdateHandler2">
36
37     <updateLog>
38       <str name="dir">${solr.ulog.dir:}</str>
39     </updateLog>
40
41     <autoCommit> 
42       <maxTime>${solr.autoCommit.maxTime:15000}</maxTime> 
43       <openSearcher>false</openSearcher> 
44     </autoCommit>
45     
46     <autoSoftCommit> 
47       <maxTime>${solr.autoSoftCommit.maxTime:-1}</maxTime> 
48     </autoSoftCommit>
49
50
51   </updateHandler>
52   
53   <query>
54
55     <maxBooleanClauses>1024</maxBooleanClauses>
56
57     <filterCache class="solr.FastLRUCache"
58                  size="512"
59                  initialSize="512"
60                  autowarmCount="0"/>
61
62     <queryResultCache class="solr.LRUCache"
63                      size="512"
64                      initialSize="512"
65                      autowarmCount="0"/>
66    
67     <documentCache class="solr.LRUCache"
68                    size="512"
69                    initialSize="512"
70                    autowarmCount="0"/>
71     
72     <enableLazyFieldLoading>true</enableLazyFieldLoading>
73     <queryResultWindowSize>20</queryResultWindowSize>
74     <queryResultMaxDocsCached>200</queryResultMaxDocsCached>
75
76    <!-- Query Related Event Listeners: warm up the facet cache -->
77     <listener event="newSearcher" class="solr.QuerySenderListener">
78       <arr name="queries">
79         <lst>
80           <str name="q">database:*</str>
81           <str name="facet">true</str>
82           <str name="facet.mincount">1</str>
83           <str name="facet.field">author_exact</str>
84           <str name="facet.field">subject_exact</str>
85           <str name="facet.field">medium_exact</str>
86           <str name="facet.field">date</str>
87           <str name="facet.field">database</str>
88         </lst>
89       </arr>
90     </listener>
91
92     <listener event="firstSearcher" class="solr.QuerySenderListener">
93       <arr name="queries">
94         <lst>
95           <str name="q">database:*</str>
96           <str name="facet">true</str>
97           <str name="facet.mincount">1</str>
98           <str name="facet.field">author_exact</str>
99           <str name="facet.field">subject_exact</str>
100           <str name="facet.field">medium_exact</str>
101           <str name="facet.field">date</str>
102           <str name="facet.field">database</str>
103         </lst>
104       </arr>
105     </listener>
106
107     <useColdSearcher>false</useColdSearcher>
108     <maxWarmingSearchers>2</maxWarmingSearchers>
109
110   </query>
111
112   <requestDispatcher handleSelect="false" >
113
114     <requestParsers enableRemoteStreaming="true" 
115                     multipartUploadLimitInKB="2048000"
116                     formdataUploadLimitInKB="2048"
117                     addHttpRequestToContext="false"/>
118
119     <httpCaching never304="true" />
120     
121   </requestDispatcher>
122
123   <!-- Request Handlers -->
124
125   <requestHandler name="/select" class="solr.SearchHandler">
126      <lst name="defaults">
127        <str name="echoParams">explicit</str>
128        <int name="rows">10</int>
129        <str name="df">text</str>
130        <str name="fl">*,score</str>
131        <str name="q.op">AND</str>
132      </lst>
133   </requestHandler>
134
135   <requestHandler name="/query" class="solr.SearchHandler">
136      <lst name="defaults">
137        <str name="echoParams">explicit</str>
138        <str name="wt">json</str>
139        <str name="indent">true</str>
140        <str name="df">text</str>
141        <str name="fl">*,score</str>
142        <str name="q.op">AND</str>
143      </lst>
144   </requestHandler>
145
146   <requestHandler name="/get" class="solr.RealTimeGetHandler">
147      <lst name="defaults">
148        <str name="omitHeader">true</str>
149        <str name="wt">json</str>
150        <str name="indent">true</str>
151      </lst>
152   </requestHandler>
153
154   <requestHandler name="/export" class="solr.SearchHandler">
155     <lst name="invariants">
156       <str name="rq">{!xport}</str>
157       <str name="wt">xsort</str>
158       <str name="distrib">false</str>
159     </lst>
160
161     <arr name="components">
162       <str>query</str>
163     </arr>
164   </requestHandler>
165
166   <!-- Update Request Handlers -->
167   
168   <initParams path="/update/**">
169     <lst name="defaults">
170       <str name="update.chain">clone-fields</str>
171     </lst>
172   </initParams>
173
174   <requestHandler name="/update" class="solr.UpdateRequestHandler" />
175
176   <requestHandler name="/update/extract" 
177                   startup="lazy"
178                   class="solr.extraction.ExtractingRequestHandler" >
179     <lst name="defaults">
180       <str name="lowernames">true</str>
181       <str name="uprefix">ignored_</str>
182
183       <!-- capture link hrefs but ignore div attributes -->
184       <str name="captureAttr">true</str>
185       <str name="fmap.a">links</str>
186       <str name="fmap.div">ignored_</str>
187     </lst>
188   </requestHandler>
189
190   <!-- analysis handlers -->
191        
192   <requestHandler name="/analysis/field" 
193                   startup="lazy"
194                   class="solr.FieldAnalysisRequestHandler" />
195
196   <requestHandler name="/analysis/document" 
197                   class="solr.DocumentAnalysisRequestHandler" 
198                   startup="lazy" />
199
200   <!-- ping/healthcheck -->
201   <requestHandler name="/admin/ping" class="solr.PingRequestHandler">
202     <lst name="invariants">
203       <str name="q">solrpingquery</str>
204     </lst>
205     <lst name="defaults">
206       <str name="echoParams">all</str>
207     </lst>
208   </requestHandler>
209
210   <!-- Echo the request contents back to the client -->
211   <requestHandler name="/debug/dump" class="solr.DumpRequestHandler" >
212     <lst name="defaults">
213      <str name="echoParams">explicit</str> 
214      <str name="echoHandler">true</str>
215     </lst>
216   </requestHandler>
217   
218   <!-- Solr Replication -->
219   <requestHandler name="/replication" class="solr.ReplicationHandler" > 
220     <lst name="master">
221       <str name="replicateAfter">commit</str>
222       <str name="replicateAfter">startup</str>
223       <str name="confFiles">schema.xml,stopwords.txt</str>
224     </lst>
225     <!--
226        <lst name="slave">
227          <str name="masterUrl">http://your-master-hostname:8983/solr</str>
228          <str name="pollInterval">00:00:60</str>
229        </lst>
230     -->
231   </requestHandler>
232
233   <!-- Update Processors -->
234   <!-- 
235        Hook in a CloneFieldUpdateProcessor to copy all fields
236        except for binaries to the "text" (default search) field
237   -->
238   <updateRequestProcessorChain name="clone-fields">
239      <processor class="solr.CloneFieldUpdateProcessorFactory">
240        <lst name="source">
241          <str name="fieldRegex">.*</str>
242          <lst name="exclude">
243            <str name="fieldRegex">.*_binary$</str>
244          </lst>
245        </lst>
246        <str name="dest">text</str>
247      </processor>
248      <processor class="solr.LogUpdateProcessorFactory" />
249      <processor class="solr.RunUpdateProcessorFactory" />
250   </updateRequestProcessorChain>    
251  
252   <!-- Response Writers -->
253
254   <queryResponseWriter name="json" class="solr.JSONResponseWriter">
255      <!-- For debugging purposes, JSON responses are written as
256       plain text so that they are easy to read in *any* browser.
257       If you expect a MIME type of "application/json" just remove this override.
258      -->
259     <str name="content-type">text/plain; charset=UTF-8</str>
260   </queryResponseWriter>
261   
262   <!-- Legacy config for the admin interface -->
263   <admin>
264     <defaultQuery>*:*</defaultQuery>
265   </admin>
266
267 </config>