To build the Debian packages:
$ ../git-tools/id-deb-build/id-mk-deb-changelog.sh && dpkg-buildpackage -us -uc
-And to install a master Solr under Tomcat 8:
+And to install LUI Solr:
$ cd ..
-$ sudo dpkg -i masterkey-lui-solr4-common_*.indexdata_all.deb
-$ sudo dpkg -i masterkey-lui-solr4-common-tomcat8_*.indexdata_all.deb
-$ sudo dpkg -i masterkey-lui-solr4-master_*.indexdata_all.deb
-$ sudo dpkg -i masterkey-lui-solr4-master-tomcat8_*.indexdata_all.deb
+$ sudo dpkg -i masterkey-lui-solr5_*.indexdata_all.deb
+++ /dev/null
-<!--
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-
-<!-- The content of this page will be statically included into the top-
-right box of the cores overview page. Uncomment this as an example to
-see there the content will show up.
-
-<img src="img/ico/construction.png"> This line will appear at the top-
-right box on collection1's Overview
--->
+++ /dev/null
-<!--
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-
-<!-- admin-extra.menu-bottom.html -->
-<!--
-<li>
- <a href="#" style="background-image: url(img/ico/construction.png);">
- LAST ITEM
- </a>
-</li>
--->
+++ /dev/null
-<!--
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-
-<!-- admin-extra.menu-top.html -->
-<!--
-<li>
- <a href="#" style="background-image: url(img/ico/construction.png);">
- FIRST ITEM
- </a>
-</li>
--->
--- /dev/null
+# Logging level
+solr.log=/var/log/masterkey/lui
+log4j.rootLogger=INFO, file, CONSOLE
+
+log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
+
+log4j.appender.CONSOLE.layout=org.apache.log4j.EnhancedPatternLayout
+log4j.appender.CONSOLE.layout.ConversionPattern=%-4r %-5p (%t) [%X{collection} %X{shard} %X{replica} %X{core}] %c{1.} %m%n
+
+#- size rotation with log cleanup.
+log4j.appender.file=org.apache.log4j.RollingFileAppender
+log4j.appender.file.MaxFileSize=4MB
+log4j.appender.file.MaxBackupIndex=9
+
+#- File to log to and log format
+log4j.appender.file.File=${solr.log}/solr.log
+log4j.appender.file.layout=org.apache.log4j.EnhancedPatternLayout
+log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} %-5p (%t) [%X{collection} %X{shard} %X{replica} %X{core}] %c{1.} %m\n
+
+log4j.logger.org.apache.zookeeper=WARN
+log4j.logger.org.apache.hadoop=WARN
+
+# set to INFO to enable infostream log messages
+log4j.logger.org.apache.solr.update.LoggingInfoStream=OFF
--- /dev/null
+# This file will be linked to /etc/default/lui-solr.in.sh
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# By default the script will use JAVA_HOME to determine which java
+# to use, but you can set a specific path for Solr to use without
+# affecting other Java applications on your server/workstation.
+#SOLR_JAVA_HOME=""
+
+# Increase Java Heap as needed to support your indexing / query needs
+SOLR_HEAP="512m"
+
+# Expert: If you want finer control over memory options, specify them directly
+# Comment out SOLR_HEAP if you are using this though, that takes precedence
+#SOLR_JAVA_MEM="-Xms512m -Xmx512m"
+
+# Enable verbose GC logging
+GC_LOG_OPTS="-verbose:gc -XX:+PrintHeapAtGC -XX:+PrintGCDetails \
+-XX:+PrintGCDateStamps -XX:+PrintGCTimeStamps -XX:+PrintTenuringDistribution -XX:+PrintGCApplicationStoppedTime"
+
+# These GC settings have shown to work well for a number of common Solr workloads
+GC_TUNE="-XX:NewRatio=3 \
+-XX:SurvivorRatio=4 \
+-XX:TargetSurvivorRatio=90 \
+-XX:MaxTenuringThreshold=8 \
+-XX:+UseConcMarkSweepGC \
+-XX:+UseParNewGC \
+-XX:ConcGCThreads=4 -XX:ParallelGCThreads=4 \
+-XX:+CMSScavengeBeforeRemark \
+-XX:PretenureSizeThreshold=64m \
+-XX:+UseCMSInitiatingOccupancyOnly \
+-XX:CMSInitiatingOccupancyFraction=50 \
+-XX:CMSMaxAbortablePrecleanTime=6000 \
+-XX:+CMSParallelRemarkEnabled \
+-XX:+ParallelRefProcEnabled"
+
+# Set the ZooKeeper connection string if using an external ZooKeeper ensemble
+# e.g. host1:2181,host2:2181/chroot
+# Leave empty if not using SolrCloud
+#ZK_HOST=""
+
+# Set the ZooKeeper client timeout (for SolrCloud mode)
+#ZK_CLIENT_TIMEOUT="15000"
+
+# By default the start script uses "localhost"; override the hostname here
+# for production SolrCloud environments to control the hostname exposed to cluster state
+#SOLR_HOST="192.168.1.1"
+
+# By default the start script uses UTC; override the timezone if needed
+#SOLR_TIMEZONE="UTC"
+
+# Set to true to activate the JMX RMI connector to allow remote JMX client applications
+# to monitor the JVM hosting Solr; set to "false" to disable that behavior
+# (false is recommended in production environments)
+ENABLE_REMOTE_JMX_OPTS="false"
+
+# The script will use SOLR_PORT+10000 for the RMI_PORT or you can set it here
+# RMI_PORT=18983
+
+# Set the thread stack size
+SOLR_OPTS="$SOLR_OPTS -Xss256k"
+
+# Anything you add to the SOLR_OPTS variable will be included in the java
+# start command line as-is, in ADDITION to other options. If you specify the
+# -a option on start script, those options will be appended as well. Examples:
+#SOLR_OPTS="$SOLR_OPTS -Dsolr.autoSoftCommit.maxTime=3000"
+#SOLR_OPTS="$SOLR_OPTS -Dsolr.autoCommit.maxTime=60000"
+#SOLR_OPTS="$SOLR_OPTS -Dsolr.clustering.enabled=true"
+
+# Location where the bin/solr script will save PID files for running instances
+# If not set, the script will create PID files in $SOLR_TIP/bin
+SOLR_PID_DIR=/var/lib/masterkey/lui
+
+# Path to a directory for Solr to store cores and their data. By default, Solr will use server/solr
+# If solr.xml is not stored in ZooKeeper, this directory needs to contain solr.xml
+SOLR_HOME=/etc/masterkey/lui/solr-home
+
+# Solr provides a default Log4J configuration properties file in server/resources
+# however, you may want to customize the log settings and file appender location
+# so you can point the script to use a different log4j.properties file
+LOG4J_PROPS=/etc/masterkey/lui/log4j.properties
+
+# Location where Solr should write logs to; should agree with the file appender
+# settings in server/resources/log4j.properties
+SOLR_LOGS_DIR=/var/log/masterkey/lui
+
+# Sets the port Solr binds to, default is 8983
+#SOLR_PORT=8983
+
+# Uncomment to set SSL-related system properties
+# Be sure to update the paths to the correct keystore for your environment
+#SOLR_SSL_KEY_STORE=etc/solr-ssl.keystore.jks
+#SOLR_SSL_KEY_STORE_PASSWORD=secret
+#SOLR_SSL_TRUST_STORE=etc/solr-ssl.keystore.jks
+#SOLR_SSL_TRUST_STORE_PASSWORD=secret
+#SOLR_SSL_NEED_CLIENT_AUTH=false
+#SOLR_SSL_WANT_CLIENT_AUTH=false
+
+# Uncomment if you want to override previously defined SSL values for HTTP client
+# otherwise keep them commented and the above values will automatically be set for HTTP clients
+#SOLR_SSL_CLIENT_KEY_STORE=
+#SOLR_SSL_CLIENT_KEY_STORE_PASSWORD=
+#SOLR_SSL_CLIENT_TRUST_STORE=
+#SOLR_SSL_CLIENT_TRUST_STORE_PASSWORD=
+
+# Settings for authentication
+#SOLR_AUTHENTICATION_CLIENT_CONFIGURER=
+#SOLR_AUTHENTICATION_OPTS=
+
+++ /dev/null
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#-----------------------------------------------------------------------
-# Use a protected word file to protect against the stemmer reducing two
-# unrelated words to the same base word.
-
-# Some non-words that normally won't be encountered,
-# just to test that they won't be stemmed.
-dontstems
-zwhacky
-
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8" ?>
-<!--
- This is the Solr schema file for the Index Data Local Unified
- Index. This file should be named "schema.xml" and should be in the
- conf directory for the solr core
- (i.e. /etc/masterkey/lui/solr-config/schema.xml by default).
- For customization, see https://wiki.apache.org/solr/SchemaXml and the
- Schema Design section of the Solr Reference Guide.
--->
-
-<schema name="Local Unified Index" version="1.6">
-
- <!-- stock Solr field types from the dist schema.xml -->
- <fieldType name="string" class="solr.StrField" sortMissingLast="true" omitNorms="true"/>
- <fieldType name="boolean" class="solr.BoolField" sortMissingLast="true" omitNorms="true"/>
- <fieldtype name="binary" class="solr.BinaryField"/>
- <fieldType name="int" class="solr.TrieIntField" precisionStep="0" omitNorms="true" positionIncrementGap="0"/>
- <fieldType name="float" class="solr.TrieFloatField" precisionStep="0" omitNorms="true" positionIncrementGap="0"/>
- <fieldType name="long" class="solr.TrieLongField" precisionStep="0" omitNorms="true" positionIncrementGap="0"/>
- <fieldType name="double" class="solr.TrieDoubleField" precisionStep="0" omitNorms="true" positionIncrementGap="0"/>
- <fieldType name="tint" class="solr.TrieIntField" precisionStep="8" omitNorms="true" positionIncrementGap="0"/>
- <fieldType name="tfloat" class="solr.TrieFloatField" precisionStep="8" omitNorms="true" positionIncrementGap="0"/>
- <fieldType name="tlong" class="solr.TrieLongField" precisionStep="8" omitNorms="true" positionIncrementGap="0"/>
- <fieldType name="tdouble" class="solr.TrieDoubleField" precisionStep="8" omitNorms="true" positionIncrementGap="0"/>
- <fieldType name="date" class="solr.TrieDateField" omitNorms="true" precisionStep="0" positionIncrementGap="0"/>
- <fieldType name="tdate" class="solr.TrieDateField" omitNorms="true" precisionStep="6" positionIncrementGap="0"/>
-
- <fieldType name="facet" class="solr.TextField" sortMissingLast="true" omitNorms="true">
- <analyzer>
- <tokenizer class="solr.KeywordTokenizerFactory"/>
- <filter class="solr.LowerCaseFilterFactory" />
- <filter class="solr.TrimFilterFactory" />
- </analyzer>
- </fieldType>
-
- <fieldType name="random" class="solr.RandomSortField" indexed="true" />
-
- <fieldType name="text_ws" class="solr.TextField" positionIncrementGap="100">
- <analyzer>
- <tokenizer class="solr.WhitespaceTokenizerFactory"/>
- </analyzer>
- </fieldType>
-
- <fieldType name="text" class="solr.TextField" positionIncrementGap="100">
- <analyzer type="index">
- <tokenizer class="solr.WhitespaceTokenizerFactory"/>
- <filter class="solr.StopFilterFactory"
- ignoreCase="true"
- words="stopwords.txt"
- />
- <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="1" catenateNumbers="1" catenateAll="0" splitOnCaseChange="1"/>
- <filter class="solr.LowerCaseFilterFactory"/>
- <filter class="solr.SnowballPorterFilterFactory" language="English" protected="protwords.txt"/>
- </analyzer>
- <analyzer type="query">
- <tokenizer class="solr.WhitespaceTokenizerFactory"/>
- <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
- <filter class="solr.StopFilterFactory"
- ignoreCase="true"
- words="stopwords.txt"
- />
- <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="0" catenateNumbers="0" catenateAll="0" splitOnCaseChange="1"/>
- <filter class="solr.LowerCaseFilterFactory"/>
- <filter class="solr.SnowballPorterFilterFactory" language="English" protected="protwords.txt"/>
- </analyzer>
- </fieldType>
-
- <fieldType name="textTight" class="solr.TextField" positionIncrementGap="100" >
- <analyzer>
- <tokenizer class="solr.WhitespaceTokenizerFactory"/>
- <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="false"/>
- <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt"/>
- <filter class="solr.WordDelimiterFilterFactory" generateWordParts="0" generateNumberParts="0" catenateWords="1" catenateNumbers="1" catenateAll="0"/>
- <filter class="solr.LowerCaseFilterFactory"/>
- <filter class="solr.SnowballPorterFilterFactory" language="English" protected="protwords.txt"/>
- <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
- </analyzer>
- </fieldType>
-
- <fieldType name="textgen" class="solr.TextField" positionIncrementGap="100">
- <analyzer type="index">
- <tokenizer class="solr.WhitespaceTokenizerFactory"/>
- <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
- <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="1" catenateNumbers="1" catenateAll="0" splitOnCaseChange="0"/>
- <filter class="solr.LowerCaseFilterFactory"/>
- </analyzer>
- <analyzer type="query">
- <tokenizer class="solr.WhitespaceTokenizerFactory"/>
- <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
- <filter class="solr.StopFilterFactory"
- ignoreCase="true"
- words="stopwords.txt"
- />
- <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="0" catenateNumbers="0" catenateAll="0" splitOnCaseChange="0"/>
- <filter class="solr.LowerCaseFilterFactory"/>
- </analyzer>
- </fieldType>
-
- <fieldType name="text_rev" class="solr.TextField" positionIncrementGap="100">
- <analyzer type="index">
- <tokenizer class="solr.WhitespaceTokenizerFactory"/>
- <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
- <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="1" catenateNumbers="1" catenateAll="0" splitOnCaseChange="0"/>
- <filter class="solr.LowerCaseFilterFactory"/>
- <filter class="solr.ReversedWildcardFilterFactory" withOriginal="true"
- maxPosAsterisk="3" maxPosQuestion="2" maxFractionAsterisk="0.33"/>
- </analyzer>
- <analyzer type="query">
- <tokenizer class="solr.WhitespaceTokenizerFactory"/>
- <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
- <filter class="solr.StopFilterFactory"
- ignoreCase="true"
- words="stopwords.txt"
- />
- <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="0" catenateNumbers="0" catenateAll="0" splitOnCaseChange="0"/>
- <filter class="solr.LowerCaseFilterFactory"/>
- </analyzer>
- </fieldType>
-
- <fieldType name="alphaOnlySort" class="solr.TextField" sortMissingLast="true" omitNorms="true">
- <analyzer>
- <tokenizer class="solr.KeywordTokenizerFactory"/>
- <filter class="solr.LowerCaseFilterFactory" />
- <filter class="solr.TrimFilterFactory" />
- <filter class="solr.PatternReplaceFilterFactory"
- pattern="([^a-z])" replacement="" replace="all"
- />
- </analyzer>
- </fieldType>
-
- <fieldtype name="phonetic" stored="false" indexed="true" class="solr.TextField" >
- <analyzer>
- <tokenizer class="solr.StandardTokenizerFactory"/>
- <filter class="solr.DoubleMetaphoneFilterFactory" inject="false"/>
- </analyzer>
- </fieldtype>
-
- <fieldtype name="payloads" stored="false" indexed="true" class="solr.TextField" >
- <analyzer>
- <tokenizer class="solr.WhitespaceTokenizerFactory"/>
- <filter class="solr.DelimitedPayloadTokenFilterFactory" encoder="float"/>
- </analyzer>
- </fieldtype>
-
- <fieldType name="lowercase" class="solr.TextField" positionIncrementGap="100">
- <analyzer>
- <tokenizer class="solr.KeywordTokenizerFactory"/>
- <filter class="solr.LowerCaseFilterFactory" />
- </analyzer>
- </fieldType>
-
- <fieldtype name="ignored" stored="false" indexed="false" multiValued="true" class="solr.StrField" />
-
- <!-- defined fields in the lui-solr schema -->
-
- <field name="id" type="string" indexed="true" stored="true" required="true" />
- <field name="_version_" type="long" indexed="true" stored="true"/>
-
- <field name="transactionId" type="long" indexed="true" stored="false"/>
-
- <field name="author" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
- <field name="author_exact" type="string" indexed="true" stored="false" multiValued="true" omitNorms="true" docValues="true" />
- <field name="author-date" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
- <field name="author-title" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
-
- <field name="corporate-date" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
- <field name="corporate-location" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
- <field name="corporate-name" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
-
- <field name="callnumber" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
- <field name="citation" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
-
- <field name="date" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
- <field name="description" type="text_ws" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
-
- <field name="edition" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
-
- <field name="electronic-format-instruction" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
- <field name="electronic-format-type" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
- <field name="electronic-note" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
- <field name="electronic-text" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
- <field name="electronic-url" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
-
- <field name="isbn" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
- <field name="issn" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
- <field name="lccn" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
-
- <field name="medium" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
- <field name="medium_exact" type="string" indexed="true" stored="false" multiValued="true" omitNorms="true" docValues="true" />
-
- <field name="meeting-date" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
- <field name="meeting-location" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
- <field name="meeting-name" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
-
- <field name="series-title" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
-
- <field name="subject" type="text_ws" indexed="true" stored="true" multiValued="true" omitNorms="true" />
- <field name="subject_exact" type="string" indexed="true" stored="false" multiValued="true" omitNorms="true" docValues="true" />
- <field name="subject-long" type="text_ws" indexed="true" stored="true" multiValued="true" omitNorms="true" />
-
- <field name="system-control-nr" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
-
- <field name="tech-rep-nr" type="text" indexed="true" multiValued="true" stored="true"/>
-
- <field name="title" type="text" indexed="true" multiValued="true" stored="true"/>
- <field name="title-complete" type="text" indexed="true" multiValued="true" stored="true"/>
- <field name="title-dates" type="text" indexed="true" multiValued="true" stored="true"/>
- <field name="title-medium" type="text" indexed="true" multiValued="true" stored="true"/>
- <field name="title-number-section" type="text" indexed="true" multiValued="true" stored="true"/>
- <field name="title-remainder" type="text" indexed="true" multiValued="true" stored="true"/>
- <field name="title-responsibility" type="text" indexed="true" multiValued="true" stored="true"/>
- <field name="title-uniform" type="text" indexed="true" multiValued="true" stored="true"/>
- <field name="title-uniform-key" type="text" indexed="true" multiValued="true" stored="true"/>
- <field name="title-uniform-media" type="text" indexed="true" multiValued="true" stored="true"/>
- <field name="title-uniform-partname" type="text" indexed="true" multiValued="true" stored="true"/>
- <field name="title-uniform-parts" type="text" indexed="true" multiValued="true" stored="true"/>
-
- <field name="journal-title" type="text" indexed="true" multiValued="true" stored="true" />
- <field name="journal-title_exact" type="string" indexed="true" multiValued="true" stored="false" docValues="true" />
-
- <field name="physical-accomp" type="text" indexed="true" stored="true" multiValued="true" />
- <field name="physical-dimensions" type="text" indexed="true" stored="true" multiValued="true" />
- <field name="physical-extent" type="text" indexed="true" stored="true" multiValued="true" />
- <field name="physical-format" type="text" indexed="true" stored="true" multiValued="true" />
- <field name="physical-specified" type="text" indexed="true" stored="true" multiValued="true" />
- <field name="physical-unitsize" type="text" indexed="true" stored="true" multiValued="true" />
- <field name="physical-unittype" type="text" indexed="true" stored="true" multiValued="true" />
-
- <field name="publication-date" type="text" indexed="true" stored="true" multiValued="true" />
- <field name="publication-name" type="text" indexed="true" stored="true" multiValued="true" />
- <field name="publication-place" type="text" indexed="true" stored="true" multiValued="true" />
-
- <field name="harvest-timestamp" type="date" indexed="true" stored="true"/>
- <field name="harvest-date" type="string" indexed="true" stored="true"/>
-
- <!-- default search field, created by the clone-fields update
- processor chain in solrconfig.xml -->
- <field name="text" type="text" indexed="true" stored="false" multiValued="true"/>
-
- <!-- Dynamic field definitions -->
- <dynamicField name="*_i" type="int" indexed="true" stored="true"/>
- <dynamicField name="*_s" type="string" indexed="true" stored="true"/>
- <dynamicField name="*_l" type="long" indexed="true" stored="true"/>
- <dynamicField name="*_t" type="text" indexed="true" stored="true"/>
- <dynamicField name="*_b" type="boolean" indexed="true" stored="true"/>
- <dynamicField name="*_f" type="float" indexed="true" stored="true"/>
- <dynamicField name="*_d" type="double" indexed="true" stored="true"/>
- <dynamicField name="*_dt" type="date" indexed="true" stored="true"/>
- <dynamicField name="*_ti" type="tint" indexed="true" stored="true"/>
- <dynamicField name="*_tl" type="tlong" indexed="true" stored="true"/>
- <dynamicField name="*_tf" type="tfloat" indexed="true" stored="true"/>
- <dynamicField name="*_td" type="tdouble" indexed="true" stored="true"/>
- <dynamicField name="*_tdt" type="tdate" indexed="true" stored="true"/>
- <dynamicField name="ignored_*" type="ignored" multiValued="true"/>
- <dynamicField name="attr_*" type="textgen" indexed="true" stored="true" multiValued="true"/>
- <dynamicField name="random_*" type="random" />
- <dynamicField name="*_binary" type="binary" indexed="false" stored="true" multiValued="true"/>
- <dynamicField name="*_path" type="text" indexed="true" stored="true" multiValued="true"/>
-
- <!-- catchall dynamic field -->
- <dynamicField name="*" type="text" multiValued="true"/>
-
- <uniqueKey>id</uniqueKey>
-
- <!-- copyField commands -->
- <copyField source="author" dest="author_exact"/>
- <copyField source="subject" dest="subject_exact"/>
- <copyField source="medium" dest="medium_exact"/>
- <copyField source="journal-title" dest="journal-title_exact"/>
-
-</schema>
+++ /dev/null
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-user=
-solr_hostname=localhost
-solr_port=8984
-rsyncd_port=18984
-data_dir=
-webapp_name=solr
-master_host=
-master_data_dir=
-master_status_dir=
--- /dev/null
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<!-- The content of this page will be statically included into the top-
+right box of the cores overview page. Uncomment this as an example to
+see there the content will show up.
+
+<img src="img/ico/construction.png"> This line will appear at the top-
+right box on collection1's Overview
+-->
--- /dev/null
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<!-- admin-extra.menu-bottom.html -->
+<!--
+<li>
+ <a href="#" style="background-image: url(img/ico/construction.png);">
+ LAST ITEM
+ </a>
+</li>
+-->
--- /dev/null
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<!-- admin-extra.menu-top.html -->
+<!--
+<li>
+ <a href="#" style="background-image: url(img/ico/construction.png);">
+ FIRST ITEM
+ </a>
+</li>
+-->
--- /dev/null
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+#-----------------------------------------------------------------------
+# Use a protected word file to protect against the stemmer reducing two
+# unrelated words to the same base word.
+
+# Some non-words that normally won't be encountered,
+# just to test that they won't be stemmed.
+dontstems
+zwhacky
+
--- /dev/null
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+ This is the Solr schema file for the Index Data Local Unified
+ Index. This file should be named "schema.xml" and should be in the
+ conf directory for the solr core
+ (i.e. /etc/masterkey/lui/solr-config/schema.xml by default).
+ For customization, see https://wiki.apache.org/solr/SchemaXml and the
+ Schema Design section of the Solr Reference Guide.
+-->
+
+<schema name="Local Unified Index" version="1.6">
+
+ <!-- stock Solr field types from the dist schema.xml -->
+ <fieldType name="string" class="solr.StrField" sortMissingLast="true" omitNorms="true"/>
+ <fieldType name="boolean" class="solr.BoolField" sortMissingLast="true" omitNorms="true"/>
+ <fieldtype name="binary" class="solr.BinaryField"/>
+ <fieldType name="int" class="solr.TrieIntField" precisionStep="0" omitNorms="true" positionIncrementGap="0"/>
+ <fieldType name="float" class="solr.TrieFloatField" precisionStep="0" omitNorms="true" positionIncrementGap="0"/>
+ <fieldType name="long" class="solr.TrieLongField" precisionStep="0" omitNorms="true" positionIncrementGap="0"/>
+ <fieldType name="double" class="solr.TrieDoubleField" precisionStep="0" omitNorms="true" positionIncrementGap="0"/>
+ <fieldType name="tint" class="solr.TrieIntField" precisionStep="8" omitNorms="true" positionIncrementGap="0"/>
+ <fieldType name="tfloat" class="solr.TrieFloatField" precisionStep="8" omitNorms="true" positionIncrementGap="0"/>
+ <fieldType name="tlong" class="solr.TrieLongField" precisionStep="8" omitNorms="true" positionIncrementGap="0"/>
+ <fieldType name="tdouble" class="solr.TrieDoubleField" precisionStep="8" omitNorms="true" positionIncrementGap="0"/>
+ <fieldType name="date" class="solr.TrieDateField" omitNorms="true" precisionStep="0" positionIncrementGap="0"/>
+ <fieldType name="tdate" class="solr.TrieDateField" omitNorms="true" precisionStep="6" positionIncrementGap="0"/>
+
+ <fieldType name="facet" class="solr.TextField" sortMissingLast="true" omitNorms="true">
+ <analyzer>
+ <tokenizer class="solr.KeywordTokenizerFactory"/>
+ <filter class="solr.LowerCaseFilterFactory" />
+ <filter class="solr.TrimFilterFactory" />
+ </analyzer>
+ </fieldType>
+
+ <fieldType name="random" class="solr.RandomSortField" indexed="true" />
+
+ <fieldType name="text_ws" class="solr.TextField" positionIncrementGap="100">
+ <analyzer>
+ <tokenizer class="solr.WhitespaceTokenizerFactory"/>
+ </analyzer>
+ </fieldType>
+
+ <fieldType name="text" class="solr.TextField" positionIncrementGap="100">
+ <analyzer type="index">
+ <tokenizer class="solr.WhitespaceTokenizerFactory"/>
+ <filter class="solr.StopFilterFactory"
+ ignoreCase="true"
+ words="stopwords.txt"
+ />
+ <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="1" catenateNumbers="1" catenateAll="0" splitOnCaseChange="1"/>
+ <filter class="solr.LowerCaseFilterFactory"/>
+ <filter class="solr.SnowballPorterFilterFactory" language="English" protected="protwords.txt"/>
+ </analyzer>
+ <analyzer type="query">
+ <tokenizer class="solr.WhitespaceTokenizerFactory"/>
+ <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
+ <filter class="solr.StopFilterFactory"
+ ignoreCase="true"
+ words="stopwords.txt"
+ />
+ <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="0" catenateNumbers="0" catenateAll="0" splitOnCaseChange="1"/>
+ <filter class="solr.LowerCaseFilterFactory"/>
+ <filter class="solr.SnowballPorterFilterFactory" language="English" protected="protwords.txt"/>
+ </analyzer>
+ </fieldType>
+
+ <fieldType name="textTight" class="solr.TextField" positionIncrementGap="100" >
+ <analyzer>
+ <tokenizer class="solr.WhitespaceTokenizerFactory"/>
+ <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="false"/>
+ <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt"/>
+ <filter class="solr.WordDelimiterFilterFactory" generateWordParts="0" generateNumberParts="0" catenateWords="1" catenateNumbers="1" catenateAll="0"/>
+ <filter class="solr.LowerCaseFilterFactory"/>
+ <filter class="solr.SnowballPorterFilterFactory" language="English" protected="protwords.txt"/>
+ <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
+ </analyzer>
+ </fieldType>
+
+ <fieldType name="textgen" class="solr.TextField" positionIncrementGap="100">
+ <analyzer type="index">
+ <tokenizer class="solr.WhitespaceTokenizerFactory"/>
+ <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
+ <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="1" catenateNumbers="1" catenateAll="0" splitOnCaseChange="0"/>
+ <filter class="solr.LowerCaseFilterFactory"/>
+ </analyzer>
+ <analyzer type="query">
+ <tokenizer class="solr.WhitespaceTokenizerFactory"/>
+ <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
+ <filter class="solr.StopFilterFactory"
+ ignoreCase="true"
+ words="stopwords.txt"
+ />
+ <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="0" catenateNumbers="0" catenateAll="0" splitOnCaseChange="0"/>
+ <filter class="solr.LowerCaseFilterFactory"/>
+ </analyzer>
+ </fieldType>
+
+ <fieldType name="text_rev" class="solr.TextField" positionIncrementGap="100">
+ <analyzer type="index">
+ <tokenizer class="solr.WhitespaceTokenizerFactory"/>
+ <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
+ <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="1" catenateNumbers="1" catenateAll="0" splitOnCaseChange="0"/>
+ <filter class="solr.LowerCaseFilterFactory"/>
+ <filter class="solr.ReversedWildcardFilterFactory" withOriginal="true"
+ maxPosAsterisk="3" maxPosQuestion="2" maxFractionAsterisk="0.33"/>
+ </analyzer>
+ <analyzer type="query">
+ <tokenizer class="solr.WhitespaceTokenizerFactory"/>
+ <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
+ <filter class="solr.StopFilterFactory"
+ ignoreCase="true"
+ words="stopwords.txt"
+ />
+ <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="0" catenateNumbers="0" catenateAll="0" splitOnCaseChange="0"/>
+ <filter class="solr.LowerCaseFilterFactory"/>
+ </analyzer>
+ </fieldType>
+
+ <fieldType name="alphaOnlySort" class="solr.TextField" sortMissingLast="true" omitNorms="true">
+ <analyzer>
+ <tokenizer class="solr.KeywordTokenizerFactory"/>
+ <filter class="solr.LowerCaseFilterFactory" />
+ <filter class="solr.TrimFilterFactory" />
+ <filter class="solr.PatternReplaceFilterFactory"
+ pattern="([^a-z])" replacement="" replace="all"
+ />
+ </analyzer>
+ </fieldType>
+
+ <fieldtype name="phonetic" stored="false" indexed="true" class="solr.TextField" >
+ <analyzer>
+ <tokenizer class="solr.StandardTokenizerFactory"/>
+ <filter class="solr.DoubleMetaphoneFilterFactory" inject="false"/>
+ </analyzer>
+ </fieldtype>
+
+ <fieldtype name="payloads" stored="false" indexed="true" class="solr.TextField" >
+ <analyzer>
+ <tokenizer class="solr.WhitespaceTokenizerFactory"/>
+ <filter class="solr.DelimitedPayloadTokenFilterFactory" encoder="float"/>
+ </analyzer>
+ </fieldtype>
+
+ <fieldType name="lowercase" class="solr.TextField" positionIncrementGap="100">
+ <analyzer>
+ <tokenizer class="solr.KeywordTokenizerFactory"/>
+ <filter class="solr.LowerCaseFilterFactory" />
+ </analyzer>
+ </fieldType>
+
+ <fieldtype name="ignored" stored="false" indexed="false" multiValued="true" class="solr.StrField" />
+
+ <!-- defined fields in the lui-solr schema -->
+
+ <field name="id" type="string" indexed="true" stored="true" required="true" />
+ <field name="_version_" type="long" indexed="true" stored="true"/>
+
+ <field name="transactionId" type="long" indexed="true" stored="false"/>
+
+ <field name="author" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+ <field name="author_exact" type="string" indexed="true" stored="false" multiValued="true" omitNorms="true" docValues="true" />
+ <field name="author-date" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+ <field name="author-title" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+
+ <field name="corporate-date" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+ <field name="corporate-location" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+ <field name="corporate-name" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+
+ <field name="callnumber" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+ <field name="citation" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+
+ <field name="date" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+ <field name="description" type="text_ws" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+
+ <field name="edition" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+
+ <field name="electronic-format-instruction" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+ <field name="electronic-format-type" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+ <field name="electronic-note" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+ <field name="electronic-text" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+ <field name="electronic-url" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+
+ <field name="isbn" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+ <field name="issn" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+ <field name="lccn" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+
+ <field name="medium" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+ <field name="medium_exact" type="string" indexed="true" stored="false" multiValued="true" omitNorms="true" docValues="true" />
+
+ <field name="meeting-date" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+ <field name="meeting-location" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+ <field name="meeting-name" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+
+ <field name="series-title" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+
+ <field name="subject" type="text_ws" indexed="true" stored="true" multiValued="true" omitNorms="true" />
+ <field name="subject_exact" type="string" indexed="true" stored="false" multiValued="true" omitNorms="true" docValues="true" />
+ <field name="subject-long" type="text_ws" indexed="true" stored="true" multiValued="true" omitNorms="true" />
+
+ <field name="system-control-nr" type="text" indexed="true" stored="true" multiValued="true" omitNorms="true"/>
+
+ <field name="tech-rep-nr" type="text" indexed="true" multiValued="true" stored="true"/>
+
+ <field name="title" type="text" indexed="true" multiValued="true" stored="true"/>
+ <field name="title-complete" type="text" indexed="true" multiValued="true" stored="true"/>
+ <field name="title-dates" type="text" indexed="true" multiValued="true" stored="true"/>
+ <field name="title-medium" type="text" indexed="true" multiValued="true" stored="true"/>
+ <field name="title-number-section" type="text" indexed="true" multiValued="true" stored="true"/>
+ <field name="title-remainder" type="text" indexed="true" multiValued="true" stored="true"/>
+ <field name="title-responsibility" type="text" indexed="true" multiValued="true" stored="true"/>
+ <field name="title-uniform" type="text" indexed="true" multiValued="true" stored="true"/>
+ <field name="title-uniform-key" type="text" indexed="true" multiValued="true" stored="true"/>
+ <field name="title-uniform-media" type="text" indexed="true" multiValued="true" stored="true"/>
+ <field name="title-uniform-partname" type="text" indexed="true" multiValued="true" stored="true"/>
+ <field name="title-uniform-parts" type="text" indexed="true" multiValued="true" stored="true"/>
+
+ <field name="journal-title" type="text" indexed="true" multiValued="true" stored="true" />
+ <field name="journal-title_exact" type="string" indexed="true" multiValued="true" stored="false" docValues="true" />
+
+ <field name="physical-accomp" type="text" indexed="true" stored="true" multiValued="true" />
+ <field name="physical-dimensions" type="text" indexed="true" stored="true" multiValued="true" />
+ <field name="physical-extent" type="text" indexed="true" stored="true" multiValued="true" />
+ <field name="physical-format" type="text" indexed="true" stored="true" multiValued="true" />
+ <field name="physical-specified" type="text" indexed="true" stored="true" multiValued="true" />
+ <field name="physical-unitsize" type="text" indexed="true" stored="true" multiValued="true" />
+ <field name="physical-unittype" type="text" indexed="true" stored="true" multiValued="true" />
+
+ <field name="publication-date" type="text" indexed="true" stored="true" multiValued="true" />
+ <field name="publication-name" type="text" indexed="true" stored="true" multiValued="true" />
+ <field name="publication-place" type="text" indexed="true" stored="true" multiValued="true" />
+
+ <field name="harvest-timestamp" type="date" indexed="true" stored="true"/>
+ <field name="harvest-date" type="string" indexed="true" stored="true"/>
+
+ <!-- default search field, created by the clone-fields update
+ processor chain in solrconfig.xml -->
+ <field name="text" type="text" indexed="true" stored="false" multiValued="true"/>
+
+ <!-- Dynamic field definitions -->
+ <dynamicField name="*_i" type="int" indexed="true" stored="true"/>
+ <dynamicField name="*_s" type="string" indexed="true" stored="true"/>
+ <dynamicField name="*_l" type="long" indexed="true" stored="true"/>
+ <dynamicField name="*_t" type="text" indexed="true" stored="true"/>
+ <dynamicField name="*_b" type="boolean" indexed="true" stored="true"/>
+ <dynamicField name="*_f" type="float" indexed="true" stored="true"/>
+ <dynamicField name="*_d" type="double" indexed="true" stored="true"/>
+ <dynamicField name="*_dt" type="date" indexed="true" stored="true"/>
+ <dynamicField name="*_ti" type="tint" indexed="true" stored="true"/>
+ <dynamicField name="*_tl" type="tlong" indexed="true" stored="true"/>
+ <dynamicField name="*_tf" type="tfloat" indexed="true" stored="true"/>
+ <dynamicField name="*_td" type="tdouble" indexed="true" stored="true"/>
+ <dynamicField name="*_tdt" type="tdate" indexed="true" stored="true"/>
+ <dynamicField name="ignored_*" type="ignored" multiValued="true"/>
+ <dynamicField name="attr_*" type="textgen" indexed="true" stored="true" multiValued="true"/>
+ <dynamicField name="random_*" type="random" />
+ <dynamicField name="*_binary" type="binary" indexed="false" stored="true" multiValued="true"/>
+ <dynamicField name="*_path" type="text" indexed="true" stored="true" multiValued="true"/>
+
+ <!-- catchall dynamic field -->
+ <dynamicField name="*" type="text" multiValued="true"/>
+
+ <uniqueKey>id</uniqueKey>
+
+ <!-- copyField commands -->
+ <copyField source="author" dest="author_exact"/>
+ <copyField source="subject" dest="subject_exact"/>
+ <copyField source="medium" dest="medium_exact"/>
+ <copyField source="journal-title" dest="journal-title_exact"/>
+
+</schema>
--- /dev/null
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+user=
+solr_hostname=localhost
+solr_port=8984
+rsyncd_port=18984
+data_dir=
+webapp_name=solr
+master_host=
+master_data_dir=
+master_status_dir=
--- /dev/null
+<?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>
--- /dev/null
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+#-----------------------------------------------------------------------
+# a couple of test stopwords to test that the words are really being
+# configured from this file:
+stopworda
+stopwordb
+
+#Standard english stop words taken from Lucene's StopAnalyzer
+a
+an
+and
+are
+as
+at
+be
+but
+by
+for
+if
+in
+into
+is
+it
+no
+not
+of
+on
+or
+s
+such
+t
+that
+the
+their
+then
+there
+these
+they
+this
+to
+was
+will
+with
+
--- /dev/null
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+#-----------------------------------------------------------------------
+#some test synonym mappings unlikely to appear in real input text
+aaa => aaaa
+bbb => bbbb1 bbbb2
+ccc => cccc1,cccc2
+a\=>a => b\=>b
+a\,a => b\,b
+fooaaa,baraaa,bazaaa
+
+# Some synonym groups specific to this example
+GB,gib,gigabyte,gigabytes
+MB,mib,megabyte,megabytes
+Television, Televisions, TV, TVs
+#notice we use "gib" instead of "GiB" so any WordDelimiterFilter coming
+#after us won't split it into two words.
+
+# Synonym mappings can be used for spelling correction too
+pixima => pixma
+
--- /dev/null
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<!--
+ This is an example of a simple "solr.xml" file for configuring one or
+ more Solr Cores, as well as allowing Cores to be added, removed, and
+ reloaded via HTTP requests.
+
+ More information about options available in this configuration file,
+ and Solr Core administration can be found online:
+ http://wiki.apache.org/solr/CoreAdmin
+-->
+
+<solr>
+
+ <solrcloud>
+
+ <str name="host">${host:}</str>
+ <int name="hostPort">${jetty.port:8983}</int>
+ <str name="hostContext">${hostContext:solr}</str>
+
+ <bool name="genericCoreNodeNames">${genericCoreNodeNames:true}</bool>
+
+ <int name="zkClientTimeout">${zkClientTimeout:30000}</int>
+ <int name="distribUpdateSoTimeout">${distribUpdateSoTimeout:600000}</int>
+ <int name="distribUpdateConnTimeout">${distribUpdateConnTimeout:60000}</int>
+
+ </solrcloud>
+
+ <shardHandlerFactory name="shardHandlerFactory"
+ class="HttpShardHandlerFactory">
+ <int name="socketTimeout">${socketTimeout:600000}</int>
+ <int name="connTimeout">${connTimeout:60000}</int>
+ </shardHandlerFactory>
+
+</solr>
+++ /dev/null
-<?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/solr5/master}</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>
+++ /dev/null
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#-----------------------------------------------------------------------
-# a couple of test stopwords to test that the words are really being
-# configured from this file:
-stopworda
-stopwordb
-
-#Standard english stop words taken from Lucene's StopAnalyzer
-a
-an
-and
-are
-as
-at
-be
-but
-by
-for
-if
-in
-into
-is
-it
-no
-not
-of
-on
-or
-s
-such
-t
-that
-the
-their
-then
-there
-these
-they
-this
-to
-was
-will
-with
-
+++ /dev/null
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-#-----------------------------------------------------------------------
-#some test synonym mappings unlikely to appear in real input text
-aaa => aaaa
-bbb => bbbb1 bbbb2
-ccc => cccc1,cccc2
-a\=>a => b\=>b
-a\,a => b\,b
-fooaaa,baraaa,bazaaa
-
-# Some synonym groups specific to this example
-GB,gib,gigabyte,gigabytes
-MB,mib,megabyte,megabytes
-Television, Televisions, TV, TVs
-#notice we use "gib" instead of "GiB" so any WordDelimiterFilter coming
-#after us won't split it into two words.
-
-# Synonym mappings can be used for spelling correction too
-pixima => pixma
-
Section: misc
Priority: extra
Maintainer: Index Data ApS <info@indexdata.com>
-Build-Depends: debhelper (>= 5), openjdk-7-jdk, maven, unzip
-Standards-Version: 3.8.0
-Homepage: http://www.indexdata.dk/masterkey/harvester
+Build-Depends: debhelper (>= 9)
+Standards-Version: 3.9.8
+Homepage: http://www.indexdata.com/masterkey
-Package: masterkey-lui-solr4-common
+Package: masterkey-lui-solr5
Architecture: all
-Depends:
-Description: The Solr Web Application in war format.
- The Solr 4 Web Application is a Web service for indexing.
-
-Package: masterkey-lui-solr4-master
-Architecture: all
-Depends: masterkey-lui-solr4-common(= ${binary:Version})
-Description: Local Unified Index (Solr)
- The Local Unified Index is a index that contains multiple logical indexes (subdatabases). The underlying index is a Solr/lucene index configured to use a specific LUI schema.
-
-Package: masterkey-lui-solr4-slave
-Architecture: all
-Depends: masterkey-lui-solr4-common(= ${binary:Version})
-Description: Local Unified Index (Solr)
- The Local Unified Index is a index that contains multiple logical indexes (subdatabases). The underlying index is a Solr/lucene index configured to use a specific LUI schema. This has configuration for being a slave replicated for a master
-
-Package: masterkey-lui-solr4-common-tomcat6
-Architecture: all
-Depends:tomcat6,masterkey-lui-solr4-common(= ${binary:Version})
-Description: The Solr Web Application in war format.
- The common logging library installed under tomcat6
-
-Package: masterkey-lui-solr4-master-tomcat6
-Architecture: all
-Depends: tomcat6, masterkey-lui-solr4-master(= ${binary:Version}),masterkey-lui-solr4-common-tomcat6(= ${binary:Version})
-Description: Local Unified Index Solr Tomcat 6 integration for a LUI master
- The LUI is part of the MasterKey suite. This package provides Tomcat 6 integration.
-
-Package: masterkey-lui-solr4-slave-tomcat6
-Architecture: all
-Depends: tomcat6,masterkey-lui-solr4-slave(= ${binary:Version}),masterkey-lui-solr4-common-tomcat6(= ${binary:Version})
-Description: Local Unified Index Solr Tomcat 6 integration for a LUI slave
- The LUI is part of the MasterKey suite. This package provides Tomcat 6 integration.
-
-Package: masterkey-lui-solr4-common-tomcat8
-Architecture: all
-Depends:tomcat8, masterkey-lui-solr4-common(= ${binary:Version})
-Description: The Solr Web Application in war format.
- The common logging library installed under tomcat8
-
-Package: masterkey-lui-solr4-master-tomcat8
-Architecture: all
-Depends: tomcat8, masterkey-lui-solr4-master(= ${binary:Version}),masterkey-lui-solr4-common-tomcat8(= ${binary:Version})
-Description: Local Unified Index Solr Tomcat 8 integration for a LUI master
- The LUI is part of the MasterKey suite. This package provides Tomcat 8 integration.
-
-Package: masterkey-lui-solr4-slave-tomcat8
-Architecture: all
-Depends: tomcat8, masterkey-lui-solr4-slave(= ${binary:Version}), masterkey-lui-solr4-common-tomcat8(= ${binary:Version})
-Description: Local Unified Index Solr Tomcat 8 integration for a LUI slave
- The LUI is part of the MasterKey suite. This package provides Tomcat 8 integration.
-
-Package: masterkey-lui-solr4-zookeeper
-Architecture: all
-Depends: masterkey-lui-solr4-common(= ${binary:Version})
+Depends: openjdk-7-jdk, ${misc:Depends}
+Conflicts: masterkey-lui-solr4-common, masterkey-lui-solr4-master, masterkey-lui-solr4-slave, masterkey-lui-solr4-zookeeper, masterkey-lui-solr4-common-tomcat6, masterkey-lui-solr4-master-tomcat6, masterkey-lui-solr4-slave-tomcat6, masterkey-lui-solr4-common-tomcat8, masterkey-lui-solr4-master-tomcat8, masterkey-lui-solr4-slave-tomcat8
+Replaces: masterkey-lui-solr4-common, masterkey-lui-solr4-master, masterkey-lui-solr4-slave, masterkey-lui-solr4-zookeeper, masterkey-lui-solr4-common-tomcat6, masterkey-lui-solr4-master-tomcat6, masterkey-lui-solr4-slave-tomcat6, masterkey-lui-solr4-common-tomcat8, masterkey-lui-solr4-master-tomcat8, masterkey-lui-solr4-slave-tomcat8
Description: Local Unified Index (Solr)
- A stand-alone (jetty) ZooKeeper enabled Solr 4. Require 2 or more configurations running on multiple machines
+ The Local Unified Index is a index that contains multiple logical indexes
+ (subdatabases). The underlying index is a Solr/Lucene 5 index configured
+ to use a specific LUI schema.
-This package was debianized by the alien program by converting
-a binary .rpm package on Tue, 29 Jan 2013 15:03:38 +0100
+Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0
+Upstream-Name: masterkey-lui-solr
+Source: This is a repackaging of Solr <http://lucene.apache.org/solr/> for the Index Data Local Unified Index (LUI)
-Copyright: IndexData
+Files: *
+Copyright: 2011-2016 Index Data ApS <info@indexdata.com>
+License:
+ All rights reserved.
-Information from the binary package:
-Name : masterkey-lui-solr
-Version : 0.2.2
-Release : 1.indexdata
-Architecture: noarch
-Install Date: (not installed)
-Group : Applications/Internet
-Size : 7603954
-License : IndexData
-Signature : DSA/SHA1, Wed 02 Nov 2011 03:39:39 PM CET, Key ID 38e53a727f1d2347
-Source RPM : masterkey-lui-solr-0.2.2-1.indexdata.src.rpm
-Build Date : Wed 02 Nov 2011 03:35:41 PM CET
-Build Host : centos5.index
-Relocations : (not relocatable)
-Packager : Dennis Schafroth <dennis@indexdata.com>
-Vendor : Index Data ApS <info@indexdata.dk>
-URL : http://www.indexdata.dk/masterkey
-Summary : Local Unified Index (Solr)
-Description :
-The Local Unified Index is a index that contains multiple logical indexes. The underlying index is a Solr/lucene index configured to use a specific LUI schema.
+Files: dist/*
+Copyright: 2006-2016 The Apache Software Foundation
+License: Apache-2.0
+Files: debian/*
+Copyright: 2011-2016 Index Data ApS <info@indexdata.com>
+License:
+ All rights reserved.
+
+License: Apache-2.0
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+ .
+ http://www.apache.org/licenses/LICENSE-2.0
+ .
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ .
+ On Debian systems, the complete text of the Apache version 2.0 license
+ can be found in "/usr/share/common-licenses/Apache-2.0".
--- /dev/null
+etc/default
+usr/share/masterkey/lui
+usr/share/doc/masterkey-lui-solr5
+etc/masterkey/lui
+var/log/masterkey/lui
+var/lib/masterkey/lui/data/lui
--- /dev/null
+dist usr/share/masterkey/lui
+conf/* etc/masterkey/lui
--- /dev/null
+etc/masterkey/lui/lui-solr.in.sh etc/default/lui-solr.in.sh
\ No newline at end of file
+++ /dev/null
-#!/bin/sh
-ln -sf /etc/masterkey/lui/lui-solr4-master.xml /etc/tomcat6/Catalina/localhost/solr4.xml
-chown -R tomcat6:tomcat6 /var/lib/masterkey/lui/solr4/master
+++ /dev/null
-#!/bin/sh -e
-
-case "$1" in
- purge|remove)
- rm -f /etc/tomcat6/Catalina/localhost/solr4.xml
-# rm -f /etc/tomcat6/policy.d/05harvester.policy
- ;;
- upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
- ;;
-
- *)
- echo "postrm called with unknown argument \`$1'" >&2
- exit 1
-esac
-
-#DEBHELPER#
-
-exit 0
+++ /dev/null
-#!/bin/sh
-ln -sf /etc/masterkey/lui/lui-solr4-master.xml /etc/tomcat8/Catalina/localhost/solr4.xml
-chown -R tomcat8:tomcat8 /var/lib/masterkey/lui/solr4/master
+++ /dev/null
-#!/bin/sh -e
-
-case "$1" in
- purge|remove)
- rm -f /etc/tomcat8/Catalina/localhost/solr4.xml
-# rm -f /etc/tomcat8/policy.d/05harvester.policy
- ;;
- upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
- ;;
-
- *)
- echo "postrm called with unknown argument \`$1'" >&2
- exit 1
-esac
-
-#DEBHELPER#
-
-exit 0
+++ /dev/null
-#!/bin/sh
-ln -sf /etc/masterkey/lui/lui-solr4-slave.xml /etc/tomcat6/Catalina/localhost/solr4-slave.xml
-chown -R tomcat6:tomcat6 /var/lib/masterkey/lui/solr4/slave
+++ /dev/null
-#!/bin/sh -e
-
-case "$1" in
- purge|remove)
- rm -f /etc/tomcat6/Catalina/localhost/solr4-slave.xml
-# rm -f /etc/tomcat6/policy.d/05harvester.policy
- ;;
- upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
- ;;
-
- *)
- echo "postrm called with unknown argument \`$1'" >&2
- exit 1
-esac
-
-#DEBHELPER#
-
-exit 0
+++ /dev/null
-#!/bin/sh
-ln -sf /etc/masterkey/lui/lui-solr4-slave.xml /etc/tomcat8/Catalina/localhost/solr4-slave.xml
-chown -R tomcat8:tomcat8 /var/lib/masterkey/lui/solr4/slave
+++ /dev/null
-#!/bin/sh -e
-
-case "$1" in
- purge|remove)
- rm -f /etc/tomcat8/Catalina/localhost/solr4-slave.xml
-# rm -f /etc/tomcat8/policy.d/05harvester.policy
- ;;
- upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
- ;;
-
- *)
- echo "postrm called with unknown argument \`$1'" >&2
- exit 1
-esac
-
-#DEBHELPER#
-
-exit 0
--- /dev/null
+#!/bin/sh -e
+
+case "$1" in
+ configure|upgrade)
+ # Create the solr user
+ adduser --system --shell /bin/bash --group --disabled-password --home /var/lib/masterkey/lui lui-solr
+ # Set directory permissions
+ chown -R lui-solr /var/lib/masterkey/lui
+ chown -R lui-solr /var/log/masterkey/lui
+ chown -R lui-solr /etc/masterkey/lui/solr-home
+ # Run Solr installation script
+ /usr/share/masterkey/lui/dist/install_solr_service.sh /usr/share/masterkey/lui/dist/solr-5.5.1.tgz -d /var/lib/masterkey/lui -i /usr/share/masterkey/lui -s lui-solr -u lui-solr -f
+ ;;
+
+ abort-upgrade|abort-remove|abort-deconfigure)
+ ;;
+
+ *)
+ echo "postinst called with unknown argument '$1'" >&2
+ exit 1
+ ;;
+esac
+
+exit 0
--- /dev/null
+#!/bin/sh -e
+
+case "$1" in
+ purge|remove)
+ # Remove Solr installation
+ rm -f /usr/share/masterkey/lui/lui-solr
+ rm -rf /usr/share/masterkey/lui/solr-*
+ ;;
+ upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
+ ;;
+
+ *)
+ echo "postrm called with unknown argument \`$1'" >&2
+ exit 1
+esac
+
+exit 0
#!/usr/bin/make -f
-# debian/rules for alien
+#DH_VERBOSE = 1
-BASE=masterkey-lui-solr4
-DOC = /usr/share/doc/masterkey
-LOG = /var/log/masterkey
-SHARE = /usr/share/masterkey/lui/solr4
-
-CONF_MASTER = $(SHARE)/master/collection1/
-CONF_SLAVE = $(SHARE)/slave/collection1/
-CONF_ZK = $(SHARE)/zookeeper/
-
-DATA = /var/lib/masterkey/lui/solr4
-DATA_MASTER = $(DATA)/master
-DATA_SLAVE = $(DATA)/slave
-DATA_ZK = $(DATA)/zk-first
-
-LUI_SOLR_COMMON = $(BASE)-common
-LUI_SOLR_COMMON_ROOT = $(CURDIR)/debian/$(LUI_SOLR_COMMON)
-LUI_SOLR_COMMON_DIR = $(LUI_SOLR_COMMON_ROOT)$(SHARE)
-
-LUI_SOLR_MASTER = $(BASE)-master
-LUI_SOLR_MASTER_ROOT = $(CURDIR)/debian/$(LUI_SOLR_MASTER)
-LUI_SOLR_MASTER_SHARE_DIR = $(LUI_SOLR_MASTER_ROOT)$(CONF_MASTER)
-LUI_SOLR_MASTER_LIB_DIR = $(LUI_SOLR_MASTER_ROOT)$(DATA_MASTER)
-
-LUI_SOLR_COMMON_TOMCAT6 = $(LUI_SOLR_COMMON)-tomcat6
-LUI_SOLR_COMMON_TOMCAT6_ROOT = $(CURDIR)/debian/$(LUI_SOLR_COMMON_TOMCAT6)
-
-LUI_SOLR_MASTER_TOMCAT6 = $(LUI_SOLR_MASTER)-tomcat6
-LUI_SOLR_MASTER_TOMCAT6_ROOT = $(CURDIR)/debian/$(LUI_SOLR_MASTER_TOMCAT6)
-
-LUI_SOLR_SLAVE = $(BASE)-slave
-LUI_SOLR_SLAVE_ROOT = $(CURDIR)/debian/$(LUI_SOLR_SLAVE)
-LUI_SOLR_SLAVE_SHARE_DIR = $(LUI_SOLR_SLAVE_ROOT)$(CONF_SLAVE)
-LUI_SOLR_SLAVE_LIB_DIR = $(LUI_SOLR_SLAVE_ROOT)$(DATA_SLAVE)
-
-LUI_SOLR_SLAVE_TOMCAT6 = $(LUI_SOLR_SLAVE)-tomcat6
-LUI_SOLR_SLAVE_TOMCAT6_ROOT = $(CURDIR)/debian/$(LUI_SLAVE_TOMCAT6)
-CATALINA6_HOME=/usr/share/tomcat6
-
-LUI_SOLR_COMMON_TOMCAT8 = $(LUI_SOLR_COMMON)-tomcat8
-LUI_SOLR_COMMON_TOMCAT8_ROOT = $(CURDIR)/debian/$(LUI_SOLR_COMMON_TOMCAT8)
-
-LUI_SOLR_MASTER_TOMCAT8 = $(LUI_SOLR_MASTER)-tomcat8
-LUI_SOLR_MASTER_TOMCAT8_ROOT = $(CURDIR)/debian/$(LUI_SOLR_MASTER_TOMCAT8)
-
-LUI_SOLR_SLAVE = $(BASE)-slave
-LUI_SOLR_SLAVE_ROOT = $(CURDIR)/debian/$(LUI_SOLR_SLAVE)
-LUI_SOLR_SLAVE_SHARE_DIR = $(LUI_SOLR_SLAVE_ROOT)$(CONF_SLAVE)
-LUI_SOLR_SLAVE_LIB_DIR = $(LUI_SOLR_SLAVE_ROOT)$(DATA_SLAVE)
-
-LUI_SOLR_SLAVE_TOMCAT8 = $(LUI_SOLR_SLAVE)-tomcat8
-LUI_SOLR_SLAVE_TOMCAT8_ROOT = $(CURDIR)/debian/$(LUI_SLAVE_TOMCAT8)
-CATALINA8_HOME=/usr/share/tomcat8
-
-
-SOLR_VERSION=4.9.1
-
-LUI_SOLR_ZK = $(BASE)-zookeeper
-LUI_SOLR_ZK_ROOT = $(CURDIR)/debian/$(LUI_SOLR_ZK)
-LUI_SOLR_ZK_SHARE_DIR = $(LUI_SOLR_ZK_ROOT)$(CONF_ZK)
-LUI_SOLR_ZK_LIB_DIR = $(LUI_SOLR_ZK_ROOT)$(DATA_ZK)
-
-
-PACKAGE=$(shell dh_listpackages)
-
-build:
- dh_testdir
-
-clean:
- dh_testdir
- dh_testroot
- dh_clean -d
-
-
-install: install-stamp
-install-stamp: build
- dh_testdir
- dh_testroot
- dh_prep
-
- # lui-solr-common. Install a Solr WAR.
- mkdir -p $(LUI_SOLR_COMMON_DIR)
- mkdir -p $(LUI_SOLR_COMMON_DIR)/war
- cp dist/solr-$(SOLR_VERSION).war $(LUI_SOLR_COMMON_DIR)/war/solr.war
- cp -rp scripts $(LUI_SOLR_COMMON_DIR)
-
- # lui-solr-master
- mkdir -p $(LUI_SOLR_MASTER_SHARE_DIR)
- cp -rp conf $(LUI_SOLR_MASTER_SHARE_DIR)
- ln -sf solrconfig-master.xml $(LUI_SOLR_MASTER_SHARE_DIR)/conf/solrconfig.xml
- mkdir -p $(LUI_SOLR_MASTER_LIB_DIR)
-
- # lui-solr-slave Slave configuration
- mkdir -p $(LUI_SOLR_SLAVE_SHARE_DIR)
- cp -rp conf $(LUI_SOLR_SLAVE_SHARE_DIR)
- ln -sf solrconfig-slave.xml $(LUI_SOLR_SLAVE_SHARE_DIR)/conf/solrconfig.xml
- mkdir -p $(LUI_SOLR_SLAVE_LIB_DIR)
-
- # Common lui-solr4-tomcat: Logging Libraries installed under tomcat6.
- # Harvester Utilities. Stylesheet used in includes needs to be in CATALINA6_HOME
- mkdir -p $(LUI_SOLR_COMMON_TOMCAT6_ROOT)$(CATALINA6_HOME)/lib
- cp -rp lib/ $(LUI_SOLR_COMMON_TOMCAT6_ROOT)$(CATALINA6_HOME)
- ls -la $(LUI_SOLR_COMMON_TOMCAT6_ROOT)$(CATALINA6_HOME)/lib/
-
- # lui-solr-master plumbing for Tomcat 6.
- mkdir -p $(LUI_SOLR_MASTER_ROOT)/etc/masterkey/lui
- cp etc/solr4-tomcat-context-master.xml $(LUI_SOLR_MASTER_ROOT)/etc/masterkey/lui/lui-solr4-master.xml
-
- # lui-solr-slave plumbing for Tomcat 6
- mkdir -p $(LUI_SOLR_SLAVE_ROOT)/etc/masterkey/lui
- cp etc/solr4-tomcat-context-slave.xml $(LUI_SOLR_SLAVE_ROOT)/etc/masterkey/lui/lui-solr4-slave.xml
-
- # Common lui-solr4-tomcat: Logging Libraries installed under tomcat8.
- # Harvester Utilities. Stylesheet used in includes needs to be in CATALINA8_HOME
- mkdir -p $(LUI_SOLR_COMMON_TOMCAT8_ROOT)$(CATALINA8_HOME)/lib
- cp -rp lib/ $(LUI_SOLR_COMMON_TOMCAT8_ROOT)$(CATALINA8_HOME)
- ls -la $(LUI_SOLR_COMMON_TOMCAT8_ROOT)$(CATALINA8_HOME)/lib/
-
- # lui-solr-master plumbing for Tomcat 6.
- mkdir -p $(LUI_SOLR_MASTER_ROOT)/etc/masterkey/lui
- cp etc/solr4-tomcat-context-master.xml $(LUI_SOLR_MASTER_ROOT)/etc/masterkey/lui/lui-solr4-master.xml
-
- # lui-solr-slave plumbing for Tomcat 6
- mkdir -p $(LUI_SOLR_SLAVE_ROOT)/etc/masterkey/lui
- cp etc/solr4-tomcat-context-slave.xml $(LUI_SOLR_SLAVE_ROOT)/etc/masterkey/lui/lui-solr4-slave.xml
-
- # lui-solr-zookeeper
- mkdir -p $(LUI_SOLR_ZK_SHARE_DIR)
- cp -rp zookeeper/. $(LUI_SOLR_ZK_SHARE_DIR)
- mkdir -p $(LUI_SOLR_ZK_LIB_DIR)
- mkdir -p $(LUI_SOLR_ZK_ROOT)/etc/init.d/
- cp -p etc/init.d/indexdata-solr-zookeeper $(LUI_SOLR_ZK_ROOT)/etc/init.d/
-
- touch $@
-
-binary: build install
- dh_testdir
- dh_testroot
- dh_installdocs
- dh_installchangelogs
- dh_compress
- dh_fixperms
- dh_installdeb
- dh_gencontrol
- dh_md5sums
- dh_builddeb
-
-# Copy the packages's files.
-# find . -maxdepth 1 -mindepth 1 -not -name debian -print0 | \
-# xargs -0 -r -i cp -a {} debian/$(PACKAGE)
-#
-#
-# If you need to move files around in debian/$(PACKAGE) or do some
-# binary patching, do it here
-#
-
-.PHONY: build clean binary-indep binary-arch binary
+%:
+ dh $@