first commit
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,226 @@
|
||||
Apache License
|
||||
Version 2.0, January 2004
|
||||
http://www.apache.org/licenses/
|
||||
|
||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
|
||||
1. Definitions.
|
||||
|
||||
"License" shall mean the terms and conditions for use, reproduction,
|
||||
and distribution as defined by Sections 1 through 9 of this document.
|
||||
|
||||
"Licensor" shall mean the copyright owner or entity authorized by
|
||||
the copyright owner that is granting the License.
|
||||
|
||||
"Legal Entity" shall mean the union of the acting entity and all
|
||||
other entities that control, are controlled by, or are under common
|
||||
control with that entity. For the purposes of this definition,
|
||||
"control" means (i) the power, direct or indirect, to cause the
|
||||
direction or management of such entity, whether by contract or
|
||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||
|
||||
"You" (or "Your") shall mean an individual or Legal Entity
|
||||
exercising permissions granted by this License.
|
||||
|
||||
"Source" form shall mean the preferred form for making modifications,
|
||||
including but not limited to software source code, documentation
|
||||
source, and configuration files.
|
||||
|
||||
"Object" form shall mean any form resulting from mechanical
|
||||
transformation or translation of a Source form, including but
|
||||
not limited to compiled object code, generated documentation,
|
||||
and conversions to other media types.
|
||||
|
||||
"Work" shall mean the work of authorship, whether in Source or
|
||||
Object form, made available under the License, as indicated by a
|
||||
copyright notice that is included in or attached to the work
|
||||
(an example is provided in the Appendix below).
|
||||
|
||||
"Derivative Works" shall mean any work, whether in Source or Object
|
||||
form, that is based on (or derived from) the Work and for which the
|
||||
editorial revisions, annotations, elaborations, or other modifications
|
||||
represent, as a whole, an original work of authorship. For the purposes
|
||||
of this License, Derivative Works shall not include works that remain
|
||||
separable from, or merely link (or bind by name) to the interfaces of,
|
||||
the Work and Derivative Works thereof.
|
||||
|
||||
"Contribution" shall mean any work of authorship, including
|
||||
the original version of the Work and any modifications or additions
|
||||
to that Work or Derivative Works thereof, that is intentionally
|
||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||
or by an individual or Legal Entity authorized to submit on behalf of
|
||||
the copyright owner. For the purposes of this definition, "submitted"
|
||||
means any form of electronic, verbal, or written communication sent
|
||||
to the Licensor or its representatives, including but not limited to
|
||||
communication on electronic mailing lists, source code control systems,
|
||||
and issue tracking systems that are managed by, or on behalf of, the
|
||||
Licensor for the purpose of discussing and improving the Work, but
|
||||
excluding communication that is conspicuously marked or otherwise
|
||||
designated in writing by the copyright owner as "Not a Contribution."
|
||||
|
||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||
on behalf of whom a Contribution has been received by Licensor and
|
||||
subsequently incorporated within the Work.
|
||||
|
||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
copyright license to reproduce, prepare Derivative Works of,
|
||||
publicly display, publicly perform, sublicense, and distribute the
|
||||
Work and such Derivative Works in Source or Object form.
|
||||
|
||||
3. Grant of Patent License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
(except as stated in this section) patent license to make, have made,
|
||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||
where such license applies only to those patent claims licensable
|
||||
by such Contributor that are necessarily infringed by their
|
||||
Contribution(s) alone or by combination of their Contribution(s)
|
||||
with the Work to which such Contribution(s) was submitted. If You
|
||||
institute patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||
or a Contribution incorporated within the Work constitutes direct
|
||||
or contributory patent infringement, then any patent licenses
|
||||
granted to You under this License for that Work shall terminate
|
||||
as of the date such litigation is filed.
|
||||
|
||||
4. Redistribution. You may reproduce and distribute copies of the
|
||||
Work or Derivative Works thereof in any medium, with or without
|
||||
modifications, and in Source or Object form, provided that You
|
||||
meet the following conditions:
|
||||
|
||||
(a) You must give any other recipients of the Work or
|
||||
Derivative Works a copy of this License; and
|
||||
|
||||
(b) You must cause any modified files to carry prominent notices
|
||||
stating that You changed the files; and
|
||||
|
||||
(c) You must retain, in the Source form of any Derivative Works
|
||||
that You distribute, all copyright, patent, trademark, and
|
||||
attribution notices from the Source form of the Work,
|
||||
excluding those notices that do not pertain to any part of
|
||||
the Derivative Works; and
|
||||
|
||||
(d) If the Work includes a "NOTICE" text file as part of its
|
||||
distribution, then any Derivative Works that You distribute must
|
||||
include a readable copy of the attribution notices contained
|
||||
within such NOTICE file, excluding those notices that do not
|
||||
pertain to any part of the Derivative Works, in at least one
|
||||
of the following places: within a NOTICE text file distributed
|
||||
as part of the Derivative Works; within the Source form or
|
||||
documentation, if provided along with the Derivative Works; or,
|
||||
within a display generated by the Derivative Works, if and
|
||||
wherever such third-party notices normally appear. The contents
|
||||
of the NOTICE file are for informational purposes only and
|
||||
do not modify the License. You may add Your own attribution
|
||||
notices within Derivative Works that You distribute, alongside
|
||||
or as an addendum to the NOTICE text from the Work, provided
|
||||
that such additional attribution notices cannot be construed
|
||||
as modifying the License.
|
||||
|
||||
You may add Your own copyright statement to Your modifications and
|
||||
may provide additional or different license terms and conditions
|
||||
for use, reproduction, or distribution of Your modifications, or
|
||||
for any such Derivative Works as a whole, provided Your use,
|
||||
reproduction, and distribution of the Work otherwise complies with
|
||||
the conditions stated in this License.
|
||||
|
||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||
any Contribution intentionally submitted for inclusion in the Work
|
||||
by You to the Licensor shall be under the terms and conditions of
|
||||
this License, without any additional terms or conditions.
|
||||
Notwithstanding the above, nothing herein shall supersede or modify
|
||||
the terms of any separate license agreement you may have executed
|
||||
with Licensor regarding such Contributions.
|
||||
|
||||
6. Trademarks. This License does not grant permission to use the trade
|
||||
names, trademarks, service marks, or product names of the Licensor,
|
||||
except as required for reasonable and customary use in describing the
|
||||
origin of the Work and reproducing the content of the NOTICE file.
|
||||
|
||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||
agreed to in writing, Licensor provides the Work (and each
|
||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
implied, including, without limitation, any warranties or conditions
|
||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||
appropriateness of using or redistributing the Work and assume any
|
||||
risks associated with Your exercise of permissions under this License.
|
||||
|
||||
8. Limitation of Liability. In no event and under no legal theory,
|
||||
whether in tort (including negligence), contract, or otherwise,
|
||||
unless required by applicable law (such as deliberate and grossly
|
||||
negligent acts) or agreed to in writing, shall any Contributor be
|
||||
liable to You for damages, including any direct, indirect, special,
|
||||
incidental, or consequential damages of any character arising as a
|
||||
result of this License or out of the use or inability to use the
|
||||
Work (including but not limited to damages for loss of goodwill,
|
||||
work stoppage, computer failure or malfunction, or any and all
|
||||
other commercial damages or losses), even if such Contributor
|
||||
has been advised of the possibility of such damages.
|
||||
|
||||
9. Accepting Warranty or Additional Liability. While redistributing
|
||||
the Work or Derivative Works thereof, You may choose to offer,
|
||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||
or other liability obligations and/or rights consistent with this
|
||||
License. However, in accepting such obligations, You may act only
|
||||
on Your own behalf and on Your sole responsibility, not on behalf
|
||||
of any other Contributor, and only if You agree to indemnify,
|
||||
defend, and hold each Contributor harmless for any liability
|
||||
incurred by, or claims asserted against, such Contributor by reason
|
||||
of your accepting any such warranty or additional liability.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
APPENDIX: How to apply the Apache License to your work.
|
||||
|
||||
To apply the Apache License to your work, attach the following
|
||||
boilerplate notice, with the fields enclosed by brackets "[]"
|
||||
replaced with your own identifying information. (Don't include
|
||||
the brackets!) The text should be enclosed in the appropriate
|
||||
comment syntax for the file format. We also recommend that a
|
||||
file or class name and description of purpose be included on the
|
||||
same "printed page" as the copyright notice for easier
|
||||
identification within third-party archives.
|
||||
|
||||
Copyright [yyyy] [name of copyright owner]
|
||||
|
||||
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.
|
||||
|
||||
==========================================================================
|
||||
The following license applies to the JQuery JavaScript library
|
||||
--------------------------------------------------------------------------
|
||||
Copyright (c) 2010 John Resig, http://jquery.com/
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be
|
||||
included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,575 @@
|
||||
==============================================================
|
||||
Apache Solr
|
||||
Copyright 2006-2019 The Apache Software Foundation
|
||||
==============================================================
|
||||
|
||||
This product includes software developed at
|
||||
The Apache Software Foundation (http://www.apache.org/).
|
||||
|
||||
Includes software from other Apache Software Foundation projects,
|
||||
including, but not limited to:
|
||||
- Apache Lucene Java
|
||||
- Apache Commons
|
||||
- Apache Blur
|
||||
- Apache Hadoop
|
||||
|
||||
This product includes code forked from the Java-HLL library.
|
||||
Copyright (c) 2013 Aggregate Knowledge, Inc., https://github.com/aggregateknowledge/java-hll/
|
||||
|
||||
This product includes the JQuery JavaScript library created by John Resig.
|
||||
Copyright (c) 2010 John Resig, http://jquery.com/
|
||||
|
||||
This product includes the D3.js JavaScript library created by Michael Bostock.
|
||||
Copyright (c) 2012, Michael Bostock, https://github.com/mbostock/d3
|
||||
|
||||
This product includes the highlight.js Javascript library created by Ivan Sagalaev
|
||||
Copyright (c) 2006, Ivan Sagalaev, https://github.com/isagalaev/highlight.js
|
||||
|
||||
This product includes the Chosen Javascript library created by Patrick Filler
|
||||
Copyright (c) 2011-2014 by Harvest, https://github.com/harvesthq/chosen
|
||||
|
||||
This product includes jquery.blockUI.js Javascript library created by Mike Alsup
|
||||
Copyright (c) 2007-2014 M. Alsup https://github.com/malsup/blockui/
|
||||
|
||||
This product includes jquery.cookie.js Javascript library created by Klaus Hartl
|
||||
Copyright (c) 2013-2014 Klaus Hartl, https://github.com/carhartl/jquery-cookie
|
||||
|
||||
This product includes jquery.form Javascript library created by Mike Alsup
|
||||
Copyright 2006-2014 (c) M. Alsup, https://github.com/malsup/form/
|
||||
|
||||
This product includes the jquery.jstree.js Javascript library created by Ivan Bozhanov
|
||||
Copyright (c) 2013-2014 Ivan Bozhanov, https://github.com/vakata/jstree
|
||||
|
||||
This product includes jquery.timeago.js Javascript library by Ryan McGeary
|
||||
Copyright (c) 2008-2014, Ryan McGeary, https://github.com/rmm5t/jquery-timeago
|
||||
|
||||
This product includes require.js Javascript library created by James Burke
|
||||
Copyright (C) 2010-2014 James Burke, https://github.com/jrburke/requirejs
|
||||
|
||||
This product includes angular-utf8-base64.js Javascript library created by Andrey Bezyazychniy
|
||||
Copyright (c) 2014 Andrey Bezyazychniy, https://github.com/stranger82/angular-utf8-base64
|
||||
|
||||
This product includes code copied and modified from the www-authenticate Javascript library
|
||||
Copyright (c) 2013 Randy McLaughlin, MIT-license, https://github.com/randymized/www-authenticate
|
||||
|
||||
This product includes fugue icons created by Yusuke Kamiyamane
|
||||
Copyright (C) 2013-2014 Yusuke Kamiyamane, https://github.com/yusukekamiyamane/fugue-icons
|
||||
|
||||
Jackcess: http://jackcess.sourceforge.net/
|
||||
Copyright (C) 2011-2014 James Ahlborn
|
||||
|
||||
JavaMail: https://java.net/projects/javamail/
|
||||
License: Common Development and Distribution License (CDDL) v1.1 (https://glassfish.java.net/public/CDDL+GPL_1_1.html)
|
||||
|
||||
JavaBeans Activation Framework (JAF): http://java.sun.com/products/javabeans/jaf/index.jsp
|
||||
License: Common Development and Distribution License (CDDL) v1.0 (https://glassfish.dev.java.net/public/CDDLv1.0.html)
|
||||
|
||||
HSQL Database (HSQLDB): http://hsqldb.org/
|
||||
License: http://hsqldb.org/web/hsqlLicense.html
|
||||
|
||||
Jersey Core: https://jersey.java.net/
|
||||
License: Common Development and Distribution License (CDDL) v1.0 (https://glassfish.dev.java.net/public/CDDLv1.0.html)
|
||||
|
||||
The HdfsDirectory and BlockDirectory were derived from
|
||||
the Apache Blur incubating project and are Apache License 2.0.
|
||||
|
||||
ASM (Java bytecode manipulation and analysis framework): http://asm.ow2.org/
|
||||
Copyright (c) 2000-2005 INRIA, France Telecom
|
||||
|
||||
This project includes portions of the Jekyll Documentation Theme
|
||||
Copyright (c) 2016 Tom Johnson
|
||||
License: MIT https://github.com/tomjohnson1492/documentation-theme-jekyll/blob/gh-pages/licenses/LICENSE
|
||||
|
||||
This project includes templates from the Asciidoctor HTML5 backend converter
|
||||
Copyright (c) 2014-2018 Jakub Jirutka
|
||||
License: MIT https://github.com/jirutka/asciidoctor-html5s/blob/master/LICENSE
|
||||
|
||||
This project includes the Navgoco JQuery plugin
|
||||
Copyright (c) 2013 Christopher Tsoulloftas, http://www.komposta.net
|
||||
License: BSD https://github.com/tefra/navgoco/blob/master/LICENSE-BSD
|
||||
|
||||
=========================================================================
|
||||
== Antlr2 Notice ==
|
||||
=========================================================================
|
||||
|
||||
|
||||
SOFTWARE RIGHTS
|
||||
|
||||
ANTLR 1989-2006 Developed by Terence Parr
|
||||
Partially supported by University of San Francisco & jGuru.com
|
||||
|
||||
We reserve no legal rights to the ANTLR--it is fully in the
|
||||
public domain. An individual or company may do whatever
|
||||
they wish with source code distributed with ANTLR or the
|
||||
code generated by ANTLR, including the incorporation of
|
||||
ANTLR, or its output, into commerical software.
|
||||
|
||||
We encourage users to develop software with ANTLR. However,
|
||||
we do ask that credit is given to us for developing
|
||||
ANTLR. By "credit", we mean that if you use ANTLR or
|
||||
incorporate any source code into one of your programs
|
||||
(commercial product, research project, or otherwise) that
|
||||
you acknowledge this fact somewhere in the documentation,
|
||||
research report, etc... If you like ANTLR and have
|
||||
developed a nice tool with the output, please mention that
|
||||
you developed it using ANTLR. In addition, we ask that the
|
||||
headers remain intact in our source code. As long as these
|
||||
guidelines are kept, we expect to continue enhancing this
|
||||
system and expect to make other tools available as they are
|
||||
completed.
|
||||
|
||||
The primary ANTLR guy:
|
||||
|
||||
Terence Parr
|
||||
parrt@cs.usfca.edu
|
||||
parrt@antlr.org
|
||||
|
||||
=========================================================================
|
||||
== Apache Lucene Notice ==
|
||||
=========================================================================
|
||||
|
||||
Apache Lucene
|
||||
Copyright 2001-2019 The Apache Software Foundation
|
||||
|
||||
This product includes software developed at
|
||||
The Apache Software Foundation (http://www.apache.org/).
|
||||
|
||||
Includes software from other Apache Software Foundation projects,
|
||||
including, but not limited to:
|
||||
- Apache Ant
|
||||
- Apache Jakarta Regexp
|
||||
- Apache Commons
|
||||
- Apache Xerces
|
||||
|
||||
ICU4J, (under analysis/icu) is licensed under an MIT styles license
|
||||
and Copyright (c) 1995-2008 International Business Machines Corporation and others
|
||||
|
||||
Some data files (under analysis/icu/src/data) are derived from Unicode data such
|
||||
as the Unicode Character Database. See http://unicode.org/copyright.html for more
|
||||
details.
|
||||
|
||||
Brics Automaton (under core/src/java/org/apache/lucene/util/automaton) is
|
||||
BSD-licensed, created by Anders Møller. See http://www.brics.dk/automaton/
|
||||
|
||||
The levenshtein automata tables (under core/src/java/org/apache/lucene/util/automaton) were
|
||||
automatically generated with the moman/finenight FSA library, created by
|
||||
Jean-Philippe Barrette-LaPierre. This library is available under an MIT license,
|
||||
see http://sites.google.com/site/rrettesite/moman and
|
||||
http://bitbucket.org/jpbarrette/moman/overview/
|
||||
|
||||
The class org.apache.lucene.util.WeakIdentityMap was derived from
|
||||
the Apache CXF project and is Apache License 2.0.
|
||||
|
||||
The Google Code Prettify is Apache License 2.0.
|
||||
See http://code.google.com/p/google-code-prettify/
|
||||
|
||||
JUnit (junit-4.10) is licensed under the Common Public License v. 1.0
|
||||
See http://junit.sourceforge.net/cpl-v10.html
|
||||
|
||||
This product includes code (JaspellTernarySearchTrie) from Java Spelling Checkin
|
||||
g Package (jaspell): http://jaspell.sourceforge.net/
|
||||
License: The BSD License (http://www.opensource.org/licenses/bsd-license.php)
|
||||
|
||||
The snowball stemmers in
|
||||
analysis/common/src/java/net/sf/snowball
|
||||
were developed by Martin Porter and Richard Boulton.
|
||||
The snowball stopword lists in
|
||||
analysis/common/src/resources/org/apache/lucene/analysis/snowball
|
||||
were developed by Martin Porter and Richard Boulton.
|
||||
The full snowball package is available from
|
||||
http://snowball.tartarus.org/
|
||||
|
||||
The KStem stemmer in
|
||||
analysis/common/src/org/apache/lucene/analysis/en
|
||||
was developed by Bob Krovetz and Sergio Guzman-Lara (CIIR-UMass Amherst)
|
||||
under the BSD-license.
|
||||
|
||||
The Arabic,Persian,Romanian,Bulgarian, Hindi and Bengali analyzers (common) come with a default
|
||||
stopword list that is BSD-licensed created by Jacques Savoy. These files reside in:
|
||||
analysis/common/src/resources/org/apache/lucene/analysis/ar/stopwords.txt,
|
||||
analysis/common/src/resources/org/apache/lucene/analysis/fa/stopwords.txt,
|
||||
analysis/common/src/resources/org/apache/lucene/analysis/ro/stopwords.txt,
|
||||
analysis/common/src/resources/org/apache/lucene/analysis/bg/stopwords.txt,
|
||||
analysis/common/src/resources/org/apache/lucene/analysis/hi/stopwords.txt,
|
||||
analysis/common/src/resources/org/apache/lucene/analysis/bn/stopwords.txt
|
||||
See http://members.unine.ch/jacques.savoy/clef/index.html.
|
||||
|
||||
The German,Spanish,Finnish,French,Hungarian,Italian,Portuguese,Russian and Swedish light stemmers
|
||||
(common) are based on BSD-licensed reference implementations created by Jacques Savoy and
|
||||
Ljiljana Dolamic. These files reside in:
|
||||
analysis/common/src/java/org/apache/lucene/analysis/de/GermanLightStemmer.java
|
||||
analysis/common/src/java/org/apache/lucene/analysis/de/GermanMinimalStemmer.java
|
||||
analysis/common/src/java/org/apache/lucene/analysis/es/SpanishLightStemmer.java
|
||||
analysis/common/src/java/org/apache/lucene/analysis/fi/FinnishLightStemmer.java
|
||||
analysis/common/src/java/org/apache/lucene/analysis/fr/FrenchLightStemmer.java
|
||||
analysis/common/src/java/org/apache/lucene/analysis/fr/FrenchMinimalStemmer.java
|
||||
analysis/common/src/java/org/apache/lucene/analysis/hu/HungarianLightStemmer.java
|
||||
analysis/common/src/java/org/apache/lucene/analysis/it/ItalianLightStemmer.java
|
||||
analysis/common/src/java/org/apache/lucene/analysis/pt/PortugueseLightStemmer.java
|
||||
analysis/common/src/java/org/apache/lucene/analysis/ru/RussianLightStemmer.java
|
||||
analysis/common/src/java/org/apache/lucene/analysis/sv/SwedishLightStemmer.java
|
||||
|
||||
The Stempel analyzer (stempel) includes BSD-licensed software developed
|
||||
by the Egothor project http://egothor.sf.net/, created by Leo Galambos, Martin Kvapil,
|
||||
and Edmond Nolan.
|
||||
|
||||
The Polish analyzer (stempel) comes with a default
|
||||
stopword list that is BSD-licensed created by the Carrot2 project. The file resides
|
||||
in stempel/src/resources/org/apache/lucene/analysis/pl/stopwords.txt.
|
||||
See http://project.carrot2.org/license.html.
|
||||
|
||||
The SmartChineseAnalyzer source code (smartcn) was
|
||||
provided by Xiaoping Gao and copyright 2009 by www.imdict.net.
|
||||
|
||||
WordBreakTestUnicode_*.java (under modules/analysis/common/src/test/)
|
||||
is derived from Unicode data such as the Unicode Character Database.
|
||||
See http://unicode.org/copyright.html for more details.
|
||||
|
||||
The Morfologik analyzer (morfologik) includes BSD-licensed software
|
||||
developed by Dawid Weiss and Marcin Miłkowski (http://morfologik.blogspot.com/).
|
||||
|
||||
Morfologik uses data from Polish ispell/myspell dictionary
|
||||
(http://www.sjp.pl/slownik/en/) licenced on the terms of (inter alia)
|
||||
LGPL and Creative Commons ShareAlike.
|
||||
|
||||
Morfologic includes data from BSD-licensed dictionary of Polish (SGJP)
|
||||
(http://sgjp.pl/morfeusz/)
|
||||
|
||||
Servlet-api.jar and javax.servlet-*.jar are under the CDDL license, the original
|
||||
source code for this can be found at http://www.eclipse.org/jetty/downloads.php
|
||||
|
||||
===========================================================================
|
||||
Kuromoji Japanese Morphological Analyzer - Apache Lucene Integration
|
||||
===========================================================================
|
||||
|
||||
This software includes a binary and/or source version of data from
|
||||
|
||||
mecab-ipadic-2.7.0-20070801
|
||||
|
||||
which can be obtained from
|
||||
|
||||
http://atilika.com/releases/mecab-ipadic/mecab-ipadic-2.7.0-20070801.tar.gz
|
||||
|
||||
or
|
||||
|
||||
http://jaist.dl.sourceforge.net/project/mecab/mecab-ipadic/2.7.0-20070801/mecab-ipadic-2.7.0-20070801.tar.gz
|
||||
|
||||
===========================================================================
|
||||
mecab-ipadic-2.7.0-20070801 Notice
|
||||
===========================================================================
|
||||
|
||||
Nara Institute of Science and Technology (NAIST),
|
||||
the copyright holders, disclaims all warranties with regard to this
|
||||
software, including all implied warranties of merchantability and
|
||||
fitness, in no event shall NAIST be liable for
|
||||
any special, indirect or consequential damages or any damages
|
||||
whatsoever resulting from loss of use, data or profits, whether in an
|
||||
action of contract, negligence or other tortuous action, arising out
|
||||
of or in connection with the use or performance of this software.
|
||||
|
||||
A large portion of the dictionary entries
|
||||
originate from ICOT Free Software. The following conditions for ICOT
|
||||
Free Software applies to the current dictionary as well.
|
||||
|
||||
Each User may also freely distribute the Program, whether in its
|
||||
original form or modified, to any third party or parties, PROVIDED
|
||||
that the provisions of Section 3 ("NO WARRANTY") will ALWAYS appear
|
||||
on, or be attached to, the Program, which is distributed substantially
|
||||
in the same form as set out herein and that such intended
|
||||
distribution, if actually made, will neither violate or otherwise
|
||||
contravene any of the laws and regulations of the countries having
|
||||
jurisdiction over the User or the intended distribution itself.
|
||||
|
||||
NO WARRANTY
|
||||
|
||||
The program was produced on an experimental basis in the course of the
|
||||
research and development conducted during the project and is provided
|
||||
to users as so produced on an experimental basis. Accordingly, the
|
||||
program is provided without any warranty whatsoever, whether express,
|
||||
implied, statutory or otherwise. The term "warranty" used herein
|
||||
includes, but is not limited to, any warranty of the quality,
|
||||
performance, merchantability and fitness for a particular purpose of
|
||||
the program and the nonexistence of any infringement or violation of
|
||||
any right of any third party.
|
||||
|
||||
Each user of the program will agree and understand, and be deemed to
|
||||
have agreed and understood, that there is no warranty whatsoever for
|
||||
the program and, accordingly, the entire risk arising from or
|
||||
otherwise connected with the program is assumed by the user.
|
||||
|
||||
Therefore, neither ICOT, the copyright holder, or any other
|
||||
organization that participated in or was otherwise related to the
|
||||
development of the program and their respective officials, directors,
|
||||
officers and other employees shall be held liable for any and all
|
||||
damages, including, without limitation, general, special, incidental
|
||||
and consequential damages, arising out of or otherwise in connection
|
||||
with the use or inability to use the program or any product, material
|
||||
or result produced or otherwise obtained by using the program,
|
||||
regardless of whether they have been advised of, or otherwise had
|
||||
knowledge of, the possibility of such damages at any time during the
|
||||
project or thereafter. Each user will be deemed to have agreed to the
|
||||
foregoing by his or her commencement of use of the program. The term
|
||||
"use" as used herein includes, but is not limited to, the use,
|
||||
modification, copying and distribution of the program and the
|
||||
production of secondary products from the program.
|
||||
|
||||
In the case where the program, whether in its original form or
|
||||
modified, was distributed or delivered to or received by a user from
|
||||
any person, organization or entity other than ICOT, unless it makes or
|
||||
grants independently of ICOT any specific warranty to the user in
|
||||
writing, such person, organization or entity, will also be exempted
|
||||
from and not be held liable to the user for any such damages as noted
|
||||
above as far as the program is concerned.
|
||||
|
||||
===========================================================================
|
||||
Nori Korean Morphological Analyzer - Apache Lucene Integration
|
||||
===========================================================================
|
||||
|
||||
This software includes a binary and/or source version of data from
|
||||
|
||||
mecab-ko-dic-2.0.3-20170922
|
||||
|
||||
which can be obtained from
|
||||
|
||||
https://bitbucket.org/eunjeon/mecab-ko-dic/downloads/mecab-ko-dic-2.0.3-20170922.tar.gz
|
||||
---
|
||||
|
||||
This product includes/uses software, Woodstox (http://woodstox.codehaus.org),
|
||||
developed by Codehaus (http://www.codehaus.org/)
|
||||
License: The Apache Software License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0.txt)
|
||||
=========================================================================
|
||||
== Woodstox Notice ==
|
||||
=========================================================================
|
||||
This product currently only contains code developed by authors
|
||||
of specific components, as identified by the source code files.
|
||||
|
||||
Since product implements StAX API, it has dependencies to StAX API
|
||||
classes.
|
||||
|
||||
For additional credits (generally to people who reported problems)
|
||||
see CREDITS file.
|
||||
---
|
||||
|
||||
This product includes software developed by the Eclipse Foundation
|
||||
(specifically, Jetty, the bundled servlet container in example),
|
||||
available under the Apache 2 License.
|
||||
|
||||
Servlet-api.jar is under the CDDL license, the original source
|
||||
code for this can be found at http://www.eclipse.org/jetty/downloads.php
|
||||
|
||||
=========================================================================
|
||||
== SLF4J Notice -- http://www.slf4j.org/license.html ==
|
||||
=========================================================================
|
||||
|
||||
Copyright (c) 2004-2008 QOS.ch
|
||||
All rights reserved.
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be
|
||||
included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
=========================================================================
|
||||
== Apache Tika Notices ==
|
||||
=========================================================================
|
||||
|
||||
The following notices apply to contrib/extraction:
|
||||
|
||||
This product includes software developed by the following copyright owners:
|
||||
|
||||
Copyright (c) 2000-2006 The Legion Of The Bouncy Castle
|
||||
(http://www.bouncycastle.org)
|
||||
|
||||
Copyright (c) 2003-2005, www.pdfbox.org
|
||||
|
||||
Copyright (c) 2003-2005, www.fontbox.org
|
||||
|
||||
Copyright (c) 1995-2005 International Business Machines Corporation and others
|
||||
|
||||
Copyright 2001-2005 (C) MetaStuff, Ltd. All Rights Reserved.
|
||||
|
||||
Copyright 2004 Sun Microsystems, Inc. (Rome JAR)
|
||||
|
||||
Copyright 2002-2008 by John Cowan (TagSoup -- http://ccil.org/~cowan/XML/tagsoup/)
|
||||
|
||||
Copyright (C) 1994-2007 by the Xiph.org Foundation, http://www.xiph.org/ (OggVorbis)
|
||||
|
||||
Copyright 2012 Kohei Taketa juniversalchardet (http://code.google.com/p/juniversalchardet/)
|
||||
|
||||
Lasse Collin and others, XZ for Java (http://tukaani.org/xz/java.html)
|
||||
|
||||
java-libpst is a pure java library for the reading of Outlook PST and OST files.
|
||||
https://github.com/rjohnsondev/java-libpst
|
||||
|
||||
JMatIO is a JAVA library to read/write/manipulate with Matlab binary MAT-files.
|
||||
http://www.sourceforge.net/projects/jmatio
|
||||
|
||||
=========================================================================
|
||||
== Language Detection Notices ==
|
||||
=========================================================================
|
||||
|
||||
The following notices apply to contrib/langid:
|
||||
|
||||
This product includes software developed by Cybozu Labs, Inc.
|
||||
(c)2010 All rights reserved by Cybozu Labs, Inc.
|
||||
http://code.google.com/p/language-detection/
|
||||
|
||||
This product includes software developed by the Jsonic project:
|
||||
http://sourceforge.jp/projects/jsonic/
|
||||
|
||||
=========================================================================
|
||||
== Carrot2 Notice ==
|
||||
=========================================================================
|
||||
Copyright (C) 2002-2010, Dawid Weiss, Stanislaw Osinski.
|
||||
Portions (C) Contributors listed in "carrot2.CONTRIBUTORS" file.
|
||||
All rights reserved.
|
||||
|
||||
This product includes software developed by the Carrot2 Project.
|
||||
|
||||
See http://project.carrot2.org/
|
||||
|
||||
=========================================================================
|
||||
== Guava Notice ==
|
||||
=========================================================================
|
||||
|
||||
Copyright (C) 2009 Google Inc.
|
||||
|
||||
This product includes software developed by the Google Guava project.
|
||||
|
||||
See http://code.google.com/p/guava-libraries/
|
||||
|
||||
=========================================================================
|
||||
== Prettify Notice ==
|
||||
=========================================================================
|
||||
|
||||
Copyright (C) 2009 Google Inc.
|
||||
|
||||
This product includes software developed by the Google Prettify project.
|
||||
|
||||
See http://code.google.com/p/google-code-prettify/
|
||||
|
||||
=========================================================================
|
||||
== Jackson Notice ==
|
||||
=========================================================================
|
||||
Copyright 2010 FasterXML, LLC
|
||||
|
||||
This product includes software developed by the Jackson project.
|
||||
|
||||
See http://jackson.codehaus.org/
|
||||
|
||||
=========================================================================
|
||||
== HSQLDB Notice ==
|
||||
=========================================================================
|
||||
|
||||
For content, code, and products originally developed by Thomas Mueller and the Hypersonic SQL Group:
|
||||
|
||||
Copyright (c) 1995-2000 by the Hypersonic SQL Group.
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions are met:
|
||||
|
||||
Redistributions of source code must retain the above copyright notice, this
|
||||
list of conditions and the following disclaimer.
|
||||
|
||||
Redistributions in binary form must reproduce the above copyright notice,
|
||||
this list of conditions and the following disclaimer in the documentation
|
||||
and/or other materials provided with the distribution.
|
||||
|
||||
Neither the name of the Hypersonic SQL Group nor the names of its
|
||||
contributors may be used to endorse or promote products derived from this
|
||||
software without specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
ARE DISCLAIMED. IN NO EVENT SHALL THE HYPERSONIC SQL GROUP,
|
||||
OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
||||
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
This software consists of voluntary contributions made by many individuals on behalf of the
|
||||
Hypersonic SQL Group.
|
||||
|
||||
For work added by the HSQL Development Group (a.k.a. hsqldb_lic.txt):
|
||||
|
||||
Copyright (c) 2001-2005, The HSQL Development Group
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions are met:
|
||||
|
||||
Redistributions of source code must retain the above copyright notice, this
|
||||
list of conditions and the following disclaimer.
|
||||
|
||||
Redistributions in binary form must reproduce the above copyright notice,
|
||||
this list of conditions and the following disclaimer in the documentation
|
||||
and/or other materials provided with the distribution.
|
||||
|
||||
Neither the name of the HSQL Development Group nor the names of its
|
||||
contributors may be used to endorse or promote products derived from this
|
||||
software without specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
ARE DISCLAIMED. IN NO EVENT SHALL HSQL DEVELOPMENT GROUP, HSQLDB.ORG,
|
||||
OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
||||
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
=========================================================================
|
||||
== Restlet Notice ==
|
||||
=========================================================================
|
||||
|
||||
Copyright (C) 2005-2014 Restlet S.A.S.
|
||||
|
||||
Restlet is a registered trademark of Restlet S.A.S.
|
||||
|
||||
This product contains software developed by the Restlet project.
|
||||
|
||||
See http://www.restlet.org/
|
||||
|
||||
=========================================================================
|
||||
== Protocol Buffers Notice ==
|
||||
=========================================================================
|
||||
|
||||
Protocol Buffers - Google's data interchange format
|
||||
Copyright 2008 Google Inc.
|
||||
http://code.google.com/apis/protocolbuffers/
|
||||
|
||||
=========================================================================
|
||||
== SolrTextTagger Notice ==
|
||||
=========================================================================
|
||||
|
||||
The TaggerRequestHandler and related classes in its package came from the
|
||||
OpenSextant Solr Text Tagger,
|
||||
Copyright 2013 The MITRE Corporation. All Rights Reserved.
|
||||
|
||||
This software was produced for the U. S. Government
|
||||
under Contract No. W15P7T-11-C-F600, and is
|
||||
subject to the Rights in Noncommercial Computer Software
|
||||
and Noncommercial Computer Software Documentation
|
||||
Clause 252.227-7014 (JUN 1995)
|
||||
@@ -0,0 +1,189 @@
|
||||
# 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.
|
||||
|
||||
|
||||
Welcome to the Apache Solr project!
|
||||
-----------------------------------
|
||||
|
||||
Solr is the popular, blazing fast open source enterprise search platform
|
||||
from the Apache Lucene project.
|
||||
|
||||
For a complete description of the Solr project, team composition, source
|
||||
code repositories, and other details, please see the Solr web site at
|
||||
http://lucene.apache.org/solr
|
||||
|
||||
|
||||
Getting Started
|
||||
---------------
|
||||
|
||||
To start Solr for the first time after installation, simply do:
|
||||
|
||||
bin/solr start
|
||||
|
||||
This will launch a standalone Solr server in the background of your shell,
|
||||
listening on port 8983. Alternatively, you can launch Solr in "cloud" mode,
|
||||
which allows you to scale out using sharding and replication. To launch Solr
|
||||
in cloud mode, do:
|
||||
|
||||
bin/solr start -cloud
|
||||
|
||||
To see all available options for starting Solr, please do:
|
||||
|
||||
bin/solr start -help
|
||||
|
||||
After starting Solr, create either a core or collection depending on whether
|
||||
Solr is running in standalone (core) or SolrCloud mode (collection) by doing:
|
||||
|
||||
bin/solr create -c <name>
|
||||
|
||||
This will create a collection that uses a data-driven schema which tries to guess
|
||||
the correct field type when you add documents to the index. To see all available
|
||||
options for creating a new collection, execute:
|
||||
|
||||
bin/solr create -help
|
||||
|
||||
After starting Solr, direct your Web browser to the Solr Admin Console at:
|
||||
|
||||
http://localhost:8983/solr/
|
||||
|
||||
When finished with your Solr installation, shut it down by executing:
|
||||
|
||||
bin/solr stop -all
|
||||
|
||||
The `-p PORT` option can also be used to identify the Solr instance to shutdown,
|
||||
where more than one Solr is running on the machine.
|
||||
|
||||
|
||||
Solr Examples
|
||||
---------------
|
||||
|
||||
Solr includes a few examples to help you get started. To run a specific example, do:
|
||||
|
||||
bin/solr -e <EXAMPLE> where <EXAMPLE> is one of:
|
||||
|
||||
cloud : SolrCloud example
|
||||
dih : Data Import Handler (rdbms, mail, atom, tika)
|
||||
schemaless : Schema-less example (schema is inferred from data during indexing)
|
||||
techproducts : Kitchen sink example providing comprehensive examples of Solr features
|
||||
|
||||
For instance, if you want to run the Solr Data Import Handler example, do:
|
||||
|
||||
bin/solr -e dih
|
||||
|
||||
|
||||
Indexing Documents
|
||||
---------------
|
||||
|
||||
To add documents to the index, use bin/post. For example:
|
||||
|
||||
bin/post -c <collection_name> example/exampledocs/*.xml
|
||||
|
||||
For more information about Solr examples please read...
|
||||
|
||||
* example/README.txt
|
||||
For more information about the "Solr Home" and Solr specific configuration
|
||||
* https://lucene.apache.org/solr/guide/solr-tutorial.html
|
||||
For a Solr tutorial
|
||||
* http://lucene.apache.org/solr/resources.html
|
||||
For a list of other tutorials and introductory articles.
|
||||
|
||||
or linked from "docs/index.html" in a binary distribution.
|
||||
|
||||
Also, there are Solr clients for many programming languages, see
|
||||
http://wiki.apache.org/solr/IntegratingSolr
|
||||
|
||||
|
||||
Files included in an Apache Solr binary distribution
|
||||
----------------------------------------------------
|
||||
|
||||
server/
|
||||
A self-contained Solr instance, complete with a sample
|
||||
configuration and documents to index. Please see: bin/solr start -help
|
||||
for more information about starting a Solr server.
|
||||
|
||||
example/
|
||||
Contains example documents and an alternative Solr home
|
||||
directory containing examples of how to use the Data Import Handler,
|
||||
see example/example-DIH/README.txt for more information.
|
||||
|
||||
dist/solr-<component>-XX.jar
|
||||
The Apache Solr libraries. To compile Apache Solr Plugins,
|
||||
one or more of these will be required. The core library is
|
||||
required at a minimum. (see http://wiki.apache.org/solr/SolrPlugins
|
||||
for more information).
|
||||
|
||||
docs/index.html
|
||||
A link to the online version of Apache Solr Javadoc API documentation and Tutorial
|
||||
|
||||
|
||||
Instructions for Building Apache Solr from Source
|
||||
-------------------------------------------------
|
||||
|
||||
1. Download the Java SE 8 JDK (Java Development Kit) or later from http://www.oracle.com/java/
|
||||
You will need the JDK installed, and the $JAVA_HOME/bin (Windows: %JAVA_HOME%\bin)
|
||||
folder included on your command path. To test this, issue a "java -version" command
|
||||
from your shell (command prompt) and verify that the Java version is 1.8 or later.
|
||||
|
||||
2. Download the Apache Ant binary distribution (1.8.2+) from
|
||||
http://ant.apache.org/ You will need Ant installed and the $ANT_HOME/bin (Windows:
|
||||
%ANT_HOME%\bin) folder included on your command path. To test this, issue a
|
||||
"ant -version" command from your shell (command prompt) and verify that Ant is
|
||||
available.
|
||||
|
||||
You will also need to install Apache Ivy binary distribution (2.2.0) from
|
||||
http://ant.apache.org/ivy/ and place ivy-2.2.0.jar file in ~/.ant/lib -- if you skip
|
||||
this step, the Solr build system will offer to do it for you.
|
||||
|
||||
3. Download the Apache Solr distribution, linked from the above web site.
|
||||
Unzip the distribution to a folder of your choice, e.g. C:\solr or ~/solr
|
||||
Alternately, you can obtain a copy of the latest Apache Solr source code
|
||||
directly from the GIT repository:
|
||||
|
||||
http://lucene.apache.org/solr/versioncontrol.html
|
||||
|
||||
4. Navigate to the "solr" folder and issue an "ant" command to see the available options
|
||||
for building, testing, and packaging Solr.
|
||||
|
||||
NOTE:
|
||||
To see Solr in action, you may want to use the "ant server" command to build
|
||||
and package Solr into the server directory. See also server/README.txt.
|
||||
|
||||
|
||||
Export control
|
||||
-------------------------------------------------
|
||||
This distribution includes cryptographic software. The country in
|
||||
which you currently reside may have restrictions on the import,
|
||||
possession, use, and/or re-export to another country, of
|
||||
encryption software. BEFORE using any encryption software, please
|
||||
check your country's laws, regulations and policies concerning the
|
||||
import, possession, or use, and re-export of encryption software, to
|
||||
see if this is permitted. See <http://www.wassenaar.org/> for more
|
||||
information.
|
||||
|
||||
The U.S. Government Department of Commerce, Bureau of Industry and
|
||||
Security (BIS), has classified this software as Export Commodity
|
||||
Control Number (ECCN) 5D002.C.1, which includes information security
|
||||
software using or performing cryptographic functions with asymmetric
|
||||
algorithms. The form and manner of this Apache Software Foundation
|
||||
distribution makes it eligible for export under the License Exception
|
||||
ENC Technology Software Unrestricted (TSU) exception (see the BIS
|
||||
Export Administration Regulations, Section 740.13) for both object
|
||||
code and source code.
|
||||
|
||||
The following provides more details on the included cryptographic
|
||||
software:
|
||||
Apache Solr uses the Apache Tika which uses the Bouncy Castle generic encryption libraries for
|
||||
extracting text content and metadata from encrypted PDF files.
|
||||
See http://www.bouncycastle.org/ for more details on Bouncy Castle.
|
||||
@@ -0,0 +1,78 @@
|
||||
#!/bin/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.
|
||||
|
||||
### BEGIN INIT INFO
|
||||
# Provides: solr
|
||||
# Required-Start: $remote_fs $syslog
|
||||
# Required-Stop: $remote_fs $syslog
|
||||
# Default-Start: 2 3 4 5
|
||||
# Default-Stop: 0 1 6
|
||||
# Description: Controls Apache Solr as a Service
|
||||
### END INIT INFO
|
||||
|
||||
# Example of a very simple *nix init script that delegates commands to the bin/solr script
|
||||
# Typical usage is to do:
|
||||
#
|
||||
# cp bin/init.d/solr /etc/init.d/solr
|
||||
# chmod 755 /etc/init.d/solr
|
||||
# chown root:root /etc/init.d/solr
|
||||
# update-rc.d solr defaults
|
||||
# update-rc.d solr enable
|
||||
|
||||
# Where you extracted the Solr distribution bundle
|
||||
SOLR_INSTALL_DIR="/opt/solr"
|
||||
|
||||
if [ ! -d "$SOLR_INSTALL_DIR" ]; then
|
||||
echo "$SOLR_INSTALL_DIR not found! Please check the SOLR_INSTALL_DIR setting in your $0 script."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Path to an include file that defines environment specific settings to override default
|
||||
# variables used by the bin/solr script. It's highly recommended to define this script so
|
||||
# that you can keep the Solr binary files separated from live files (pid, logs, index data, etc)
|
||||
# see bin/solr.in.sh for an example
|
||||
SOLR_ENV="/etc/default/solr.in.sh"
|
||||
|
||||
if [ ! -f "$SOLR_ENV" ]; then
|
||||
echo "$SOLR_ENV not found! Please check the SOLR_ENV setting in your $0 script."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Specify the user to run Solr as; if not set, then Solr will run as root.
|
||||
# Running Solr as root is not recommended for production environments
|
||||
RUNAS="solr"
|
||||
|
||||
# verify the specified run as user exists
|
||||
runas_uid="`id -u "$RUNAS"`"
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "User $RUNAS not found! Please create the $RUNAS user before running this script."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
case "$1" in
|
||||
start|stop|restart|status)
|
||||
SOLR_CMD="$1"
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $0 {start|stop|restart|status}"
|
||||
exit
|
||||
esac
|
||||
|
||||
if [ -n "$RUNAS" ]; then
|
||||
su -c "SOLR_INCLUDE=\"$SOLR_ENV\" \"$SOLR_INSTALL_DIR/bin/solr\" $SOLR_CMD" - "$RUNAS"
|
||||
else
|
||||
SOLR_INCLUDE="$SOLR_ENV" "$SOLR_INSTALL_DIR/bin/solr" "$SOLR_CMD"
|
||||
fi
|
||||
@@ -0,0 +1,370 @@
|
||||
#!/usr/bin/env bash
|
||||
# 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.
|
||||
|
||||
if [[ $EUID -ne 0 ]]; then
|
||||
echo -e "\nERROR: This script must be run as root\n" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
print_usage() {
|
||||
ERROR_MSG="$1"
|
||||
|
||||
if [ "$ERROR_MSG" != "" ]; then
|
||||
echo -e "\nERROR: $ERROR_MSG\n" 1>&2
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "Usage: install_solr_service.sh <path_to_solr_distribution_archive> [OPTIONS]"
|
||||
echo ""
|
||||
echo " The first argument to the script must be a path to a Solr distribution archive, such as solr-5.0.0.tgz"
|
||||
echo " (only .tgz or .zip are supported formats for the archive)"
|
||||
echo ""
|
||||
echo " Supported OPTIONS include:"
|
||||
echo ""
|
||||
echo " -d Directory for live / writable Solr files, such as logs, pid files, and index data; defaults to /var/solr"
|
||||
echo ""
|
||||
echo " -i Directory to extract the Solr installation archive; defaults to /opt/"
|
||||
echo " The specified path must exist prior to using this script."
|
||||
echo ""
|
||||
echo " -p Port Solr should bind to; default is 8983"
|
||||
echo ""
|
||||
echo " -s Service name; defaults to solr"
|
||||
echo ""
|
||||
echo " -u User to own the Solr files and run the Solr process as; defaults to solr"
|
||||
echo " This script will create the specified user account if it does not exist."
|
||||
echo ""
|
||||
echo " -f Upgrade Solr. Overwrite symlink and init script of previous installation."
|
||||
echo ""
|
||||
echo " -n Do not start Solr service after install, and do not abort on missing Java"
|
||||
echo ""
|
||||
echo " NOTE: Must be run as the root user"
|
||||
echo ""
|
||||
} # end print_usage
|
||||
|
||||
print_error() {
|
||||
echo $1
|
||||
exit 1
|
||||
}
|
||||
|
||||
# Locate *NIX distribution by looking for match from various detection strategies
|
||||
# We start with /etc/os-release, as this will also work for Docker containers
|
||||
for command in "grep -E \"^NAME=\" /etc/os-release" \
|
||||
"lsb_release -i" \
|
||||
"cat /proc/version" \
|
||||
"uname -a" ; do
|
||||
distro_string=$(eval $command 2>/dev/null)
|
||||
unset distro
|
||||
if [[ ${distro_string,,} == *"debian"* ]]; then
|
||||
distro=Debian
|
||||
elif [[ ${distro_string,,} == *"red hat"* ]]; then
|
||||
distro=RedHat
|
||||
elif [[ ${distro_string,,} == *"centos"* ]]; then
|
||||
distro=CentOS
|
||||
elif [[ ${distro_string,,} == *"ubuntu"* ]]; then
|
||||
distro=Ubuntu
|
||||
elif [[ ${distro_string,,} == *"suse"* ]]; then
|
||||
distro=SUSE
|
||||
elif [[ ${distro_string,,} == *"darwin"* ]]; then
|
||||
echo "Sorry, this script does not support macOS. You'll need to setup Solr as a service manually using the documentation provided in the Solr Reference Guide."
|
||||
echo "You could also try installing via Homebrew (http://brew.sh/), e.g. brew install solr"
|
||||
exit 1
|
||||
fi
|
||||
if [[ $distro ]] ; then break ; fi
|
||||
done
|
||||
if [[ ! $distro ]] ; then
|
||||
echo -e "\nERROR: Unable to auto-detect your *NIX distribution!\nYou'll need to setup Solr as a service manually using the documentation provided in the Solr Reference Guide.\n" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -z "$1" ]; then
|
||||
print_usage "Must specify the path to the Solr installation archive, such as solr-5.0.0.tgz"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
SOLR_ARCHIVE=$1
|
||||
if [ ! -f "$SOLR_ARCHIVE" ]; then
|
||||
print_usage "Specified Solr installation archive $SOLR_ARCHIVE not found!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# strip off path info
|
||||
SOLR_INSTALL_FILE=${SOLR_ARCHIVE##*/}
|
||||
is_tar=true
|
||||
if [ ${SOLR_INSTALL_FILE: -4} == ".tgz" ]; then
|
||||
SOLR_DIR=${SOLR_INSTALL_FILE%.tgz}
|
||||
elif [ ${SOLR_INSTALL_FILE: -4} == ".zip" ]; then
|
||||
SOLR_DIR=${SOLR_INSTALL_FILE%.zip}
|
||||
is_tar=false
|
||||
else
|
||||
print_usage "Solr installation archive $SOLR_ARCHIVE is invalid, expected a .tgz or .zip file!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
SOLR_START=true
|
||||
if [ $# -gt 1 ]; then
|
||||
shift
|
||||
while true; do
|
||||
case $1 in
|
||||
-i)
|
||||
if [[ -z "$2" || "${2:0:1}" == "-" ]]; then
|
||||
print_usage "Directory path is required when using the $1 option!"
|
||||
exit 1
|
||||
fi
|
||||
SOLR_EXTRACT_DIR=$2
|
||||
shift 2
|
||||
;;
|
||||
-d)
|
||||
if [[ -z "$2" || "${2:0:1}" == "-" ]]; then
|
||||
print_usage "Directory path is required when using the $1 option!"
|
||||
exit 1
|
||||
fi
|
||||
SOLR_VAR_DIR="$2"
|
||||
shift 2
|
||||
;;
|
||||
-u)
|
||||
if [[ -z "$2" || "${2:0:1}" == "-" ]]; then
|
||||
print_usage "Username is required when using the $1 option!"
|
||||
exit 1
|
||||
fi
|
||||
SOLR_USER="$2"
|
||||
shift 2
|
||||
;;
|
||||
-s)
|
||||
if [[ -z "$2" || "${2:0:1}" == "-" ]]; then
|
||||
print_usage "Service name is required when using the $1 option!"
|
||||
exit 1
|
||||
fi
|
||||
SOLR_SERVICE="$2"
|
||||
shift 2
|
||||
;;
|
||||
-p)
|
||||
if [[ -z "$2" || "${2:0:1}" == "-" ]]; then
|
||||
print_usage "Port is required when using the $1 option!"
|
||||
exit 1
|
||||
fi
|
||||
SOLR_PORT="$2"
|
||||
shift 2
|
||||
;;
|
||||
-f)
|
||||
SOLR_UPGRADE="YES"
|
||||
shift 1
|
||||
;;
|
||||
-n)
|
||||
SOLR_START=false
|
||||
shift 1
|
||||
;;
|
||||
-help|-usage)
|
||||
print_usage ""
|
||||
exit 0
|
||||
;;
|
||||
--)
|
||||
shift
|
||||
break
|
||||
;;
|
||||
*)
|
||||
if [ "$1" != "" ]; then
|
||||
print_usage "Unrecognized or misplaced argument: $1!"
|
||||
exit 1
|
||||
else
|
||||
break # out-of-args, stop looping
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
done
|
||||
fi
|
||||
|
||||
# Test for availability of needed tools
|
||||
if [[ $is_tar ]] ; then
|
||||
tar --version &>/dev/null || print_error "Script requires the 'tar' command"
|
||||
else
|
||||
unzip -hh &>/dev/null || print_error "Script requires the 'unzip' command"
|
||||
fi
|
||||
if [[ $SOLR_START == "true" ]] ; then
|
||||
service --version &>/dev/null || service --help &>/dev/null || print_error "Script requires the 'service' command"
|
||||
java -version &>/dev/null || print_error "Solr requires java, please install or set JAVA_HOME properly"
|
||||
fi
|
||||
lsof -h &>/dev/null || echo "We recommend installing the 'lsof' command for more stable start/stop of Solr"
|
||||
|
||||
|
||||
if [ -z "$SOLR_EXTRACT_DIR" ]; then
|
||||
SOLR_EXTRACT_DIR=/opt
|
||||
fi
|
||||
|
||||
if [ ! -d "$SOLR_EXTRACT_DIR" ]; then
|
||||
print_usage "Installation directory $SOLR_EXTRACT_DIR not found! Please create it before running this script."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -z "$SOLR_SERVICE" ]; then
|
||||
SOLR_SERVICE=solr
|
||||
fi
|
||||
|
||||
if [ -z "$SOLR_VAR_DIR" ]; then
|
||||
SOLR_VAR_DIR="/var/$SOLR_SERVICE"
|
||||
fi
|
||||
|
||||
if [ -z "$SOLR_USER" ]; then
|
||||
SOLR_USER=solr
|
||||
fi
|
||||
|
||||
if [ -z "$SOLR_PORT" ]; then
|
||||
SOLR_PORT=8983
|
||||
fi
|
||||
|
||||
if [ -z "$SOLR_UPGRADE" ]; then
|
||||
SOLR_UPGRADE=NO
|
||||
fi
|
||||
|
||||
if [ ! "$SOLR_UPGRADE" = "YES" ]; then
|
||||
if [ -f "/etc/init.d/$SOLR_SERVICE" ]; then
|
||||
print_usage "/etc/init.d/$SOLR_SERVICE already exists! Perhaps Solr is already setup as a service on this host? To upgrade Solr use the -f option."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -e "$SOLR_EXTRACT_DIR/$SOLR_SERVICE" ]; then
|
||||
print_usage "$SOLR_EXTRACT_DIR/$SOLR_SERVICE already exists! Please move this directory / link or choose a different service name using the -s option."
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
# stop running instance
|
||||
if [ -f "/etc/init.d/$SOLR_SERVICE" ]; then
|
||||
echo -e "\nStopping Solr instance if exists ...\n"
|
||||
service "$SOLR_SERVICE" stop
|
||||
fi
|
||||
|
||||
# create user if not exists
|
||||
solr_uid="`id -u "$SOLR_USER"`"
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "Creating new user: $SOLR_USER"
|
||||
if [ "$distro" == "RedHat" ] || [ "$distro" == "CentOS" ] ; then
|
||||
adduser --system -U -m --home-dir "$SOLR_VAR_DIR" "$SOLR_USER"
|
||||
elif [ "$distro" == "SUSE" ]; then
|
||||
useradd --system -U -m --home-dir "$SOLR_VAR_DIR" "$SOLR_USER"
|
||||
else
|
||||
adduser --system --shell /bin/bash --group --disabled-password --home "$SOLR_VAR_DIR" "$SOLR_USER"
|
||||
fi
|
||||
fi
|
||||
|
||||
# extract
|
||||
SOLR_INSTALL_DIR="$SOLR_EXTRACT_DIR/$SOLR_DIR"
|
||||
if [ ! -d "$SOLR_INSTALL_DIR" ]; then
|
||||
|
||||
echo -e "\nExtracting $SOLR_ARCHIVE to $SOLR_EXTRACT_DIR\n"
|
||||
|
||||
if $is_tar ; then
|
||||
tar zxf "$SOLR_ARCHIVE" -C "$SOLR_EXTRACT_DIR"
|
||||
else
|
||||
unzip -q "$SOLR_ARCHIVE" -d "$SOLR_EXTRACT_DIR"
|
||||
fi
|
||||
|
||||
if [ ! -d "$SOLR_INSTALL_DIR" ]; then
|
||||
echo -e "\nERROR: Expected directory $SOLR_INSTALL_DIR not found after extracting $SOLR_ARCHIVE ... script fails.\n" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
chown -R root: "$SOLR_INSTALL_DIR"
|
||||
find "$SOLR_INSTALL_DIR" -type d -print0 | xargs -0 chmod 0755
|
||||
find "$SOLR_INSTALL_DIR" -type f -print0 | xargs -0 chmod 0644
|
||||
chmod -R 0755 "$SOLR_INSTALL_DIR/bin"
|
||||
else
|
||||
echo -e "\nWARNING: $SOLR_INSTALL_DIR already exists! Skipping extract ...\n"
|
||||
fi
|
||||
|
||||
# create a symlink for easier scripting
|
||||
if [ -h "$SOLR_EXTRACT_DIR/$SOLR_SERVICE" ]; then
|
||||
echo -e "\nRemoving old symlink $SOLR_EXTRACT_DIR/$SOLR_SERVICE ...\n"
|
||||
rm "$SOLR_EXTRACT_DIR/$SOLR_SERVICE"
|
||||
fi
|
||||
if [ -e "$SOLR_EXTRACT_DIR/$SOLR_SERVICE" ]; then
|
||||
echo -e "\nWARNING: $SOLR_EXTRACT_DIR/$SOLR_SERVICE is not symlink! Skipping symlink update ...\n"
|
||||
else
|
||||
echo -e "\nInstalling symlink $SOLR_EXTRACT_DIR/$SOLR_SERVICE -> $SOLR_INSTALL_DIR ...\n"
|
||||
ln -s "$SOLR_INSTALL_DIR" "$SOLR_EXTRACT_DIR/$SOLR_SERVICE"
|
||||
fi
|
||||
|
||||
# install init.d script
|
||||
echo -e "\nInstalling /etc/init.d/$SOLR_SERVICE script ...\n"
|
||||
cp "$SOLR_INSTALL_DIR/bin/init.d/solr" "/etc/init.d/$SOLR_SERVICE"
|
||||
chmod 0744 "/etc/init.d/$SOLR_SERVICE"
|
||||
chown root: "/etc/init.d/$SOLR_SERVICE"
|
||||
# do some basic variable substitution on the init.d script
|
||||
sed_expr1="s#SOLR_INSTALL_DIR=.*#SOLR_INSTALL_DIR=\"$SOLR_EXTRACT_DIR/$SOLR_SERVICE\"#"
|
||||
sed_expr2="s#SOLR_ENV=.*#SOLR_ENV=\"/etc/default/$SOLR_SERVICE.in.sh\"#"
|
||||
sed_expr3="s#RUNAS=.*#RUNAS=\"$SOLR_USER\"#"
|
||||
sed_expr4="s#Provides:.*#Provides: $SOLR_SERVICE#"
|
||||
sed -i -e "$sed_expr1" -e "$sed_expr2" -e "$sed_expr3" -e "$sed_expr4" "/etc/init.d/$SOLR_SERVICE"
|
||||
|
||||
# install/move configuration
|
||||
if [ ! -d /etc/default ]; then
|
||||
mkdir /etc/default
|
||||
chown root: /etc/default
|
||||
chmod 0755 /etc/default
|
||||
fi
|
||||
if [ -f "$SOLR_VAR_DIR/solr.in.sh" ]; then
|
||||
echo -e "\nMoving existing $SOLR_VAR_DIR/solr.in.sh to /etc/default/$SOLR_SERVICE.in.sh ...\n"
|
||||
mv "$SOLR_VAR_DIR/solr.in.sh" "/etc/default/$SOLR_SERVICE.in.sh"
|
||||
elif [ -f "/etc/default/$SOLR_SERVICE.in.sh" ]; then
|
||||
echo -e "\n/etc/default/$SOLR_SERVICE.in.sh already exist. Skipping install ...\n"
|
||||
else
|
||||
echo -e "\nInstalling /etc/default/$SOLR_SERVICE.in.sh ...\n"
|
||||
cp "$SOLR_INSTALL_DIR/bin/solr.in.sh" "/etc/default/$SOLR_SERVICE.in.sh"
|
||||
mv "$SOLR_INSTALL_DIR/bin/solr.in.sh" "$SOLR_INSTALL_DIR/bin/solr.in.sh.orig"
|
||||
mv "$SOLR_INSTALL_DIR/bin/solr.in.cmd" "$SOLR_INSTALL_DIR/bin/solr.in.cmd.orig"
|
||||
echo "SOLR_PID_DIR=\"$SOLR_VAR_DIR\"
|
||||
SOLR_HOME=\"$SOLR_VAR_DIR/data\"
|
||||
LOG4J_PROPS=\"$SOLR_VAR_DIR/log4j2.xml\"
|
||||
SOLR_LOGS_DIR=\"$SOLR_VAR_DIR/logs\"
|
||||
SOLR_PORT=\"$SOLR_PORT\"
|
||||
" >> "/etc/default/$SOLR_SERVICE.in.sh"
|
||||
fi
|
||||
chown root:${SOLR_USER} "/etc/default/$SOLR_SERVICE.in.sh"
|
||||
chmod 0640 "/etc/default/$SOLR_SERVICE.in.sh"
|
||||
|
||||
# install data directories and files
|
||||
mkdir -p "$SOLR_VAR_DIR/data"
|
||||
mkdir -p "$SOLR_VAR_DIR/logs"
|
||||
if [ -f "$SOLR_VAR_DIR/data/solr.xml" ]; then
|
||||
echo -e "\n$SOLR_VAR_DIR/data/solr.xml already exists. Skipping install ...\n"
|
||||
else
|
||||
cp "$SOLR_INSTALL_DIR/server/solr/"{solr.xml,zoo.cfg} "$SOLR_VAR_DIR/data/"
|
||||
fi
|
||||
if [ -f "$SOLR_VAR_DIR/log4j2.xml" ]; then
|
||||
echo -e "\n$SOLR_VAR_DIR/log4j2.xml already exists. Skipping install ...\n"
|
||||
else
|
||||
cp "$SOLR_INSTALL_DIR/server/resources/log4j2.xml" "$SOLR_VAR_DIR/log4j2.xml"
|
||||
fi
|
||||
chown -R "$SOLR_USER:" "$SOLR_VAR_DIR"
|
||||
find "$SOLR_VAR_DIR" -type d -print0 | xargs -0 chmod 0750
|
||||
find "$SOLR_VAR_DIR" -type f -print0 | xargs -0 chmod 0640
|
||||
|
||||
# configure autostart of service
|
||||
if [[ "$distro" == "RedHat" || "$distro" == "CentOS" || "$distro" == "SUSE" ]]; then
|
||||
chkconfig "$SOLR_SERVICE" on
|
||||
else
|
||||
update-rc.d "$SOLR_SERVICE" defaults
|
||||
fi
|
||||
echo "Service $SOLR_SERVICE installed."
|
||||
echo "Customize Solr startup configuration in /etc/default/$SOLR_SERVICE.in.sh"
|
||||
|
||||
# start service
|
||||
if [[ $SOLR_START == "true" ]] ; then
|
||||
service "$SOLR_SERVICE" start
|
||||
sleep 5
|
||||
service "$SOLR_SERVICE" status
|
||||
else
|
||||
echo "Not starting Solr service (option -n given). Start manually with 'service $SOLR_SERVICE start'"
|
||||
fi
|
||||
@@ -0,0 +1,30 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# 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.
|
||||
|
||||
SOLR_PORT=$1
|
||||
SOLR_LOGS_DIR=$2
|
||||
SOLR_PID=`ps auxww | grep start.jar | grep $SOLR_PORT | grep -v grep | awk '{print $2}' | sort -r`
|
||||
if [ -z "$SOLR_PID" ]; then
|
||||
echo "Couldn't find Solr process running on port $SOLR_PORT!"
|
||||
exit
|
||||
fi
|
||||
NOW=$(date +"%F_%H_%M_%S")
|
||||
(
|
||||
echo "Running OOM killer script for process $SOLR_PID for Solr on port $SOLR_PORT"
|
||||
kill -9 $SOLR_PID
|
||||
echo "Killed process $SOLR_PID"
|
||||
) | tee $SOLR_LOGS_DIR/solr_oom_killer-$SOLR_PORT-$NOW.log
|
||||
@@ -0,0 +1,239 @@
|
||||
#!/usr/bin/env bash
|
||||
# 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.
|
||||
|
||||
# ====== Common code copied/adapted from bin/solr (TODO: centralize/share this kind of thing across bin/solr, etc)
|
||||
|
||||
THIS_SCRIPT="$0"
|
||||
|
||||
# Resolve symlinks to this script
|
||||
while [ -h "$THIS_SCRIPT" ] ; do
|
||||
ls=`ls -ld "$THIS_SCRIPT"`
|
||||
# Drop everything prior to ->
|
||||
link=`expr "$ls" : '.*-> \(.*\)$'`
|
||||
if expr "$link" : '/.*' > /dev/null; then
|
||||
THIS_SCRIPT="$link"
|
||||
else
|
||||
THIS_SCRIPT=`dirname "$THIS_SCRIPT"`/"$link"
|
||||
fi
|
||||
done
|
||||
|
||||
SOLR_TIP=`dirname "$THIS_SCRIPT"`/..
|
||||
SOLR_TIP=`cd "$SOLR_TIP"; pwd`
|
||||
|
||||
if [ -n "$SOLR_JAVA_HOME" ]; then
|
||||
JAVA="$SOLR_JAVA_HOME/bin/java"
|
||||
elif [ -n "$JAVA_HOME" ]; then
|
||||
for java in "$JAVA_HOME"/bin/amd64/java "$JAVA_HOME"/bin/java; do
|
||||
if [ -x "$java" ]; then
|
||||
JAVA="$java"
|
||||
break
|
||||
fi
|
||||
done
|
||||
else
|
||||
JAVA=java
|
||||
fi
|
||||
|
||||
# test that Java exists and is executable on this server
|
||||
"$JAVA" -version >/dev/null 2>&1 || { echo >&2 "Java is required to run this tool! Please install Java 8 or greater before running this script."; exit 1; }
|
||||
|
||||
|
||||
# ===== post specific code
|
||||
|
||||
TOOL_JAR=("$SOLR_TIP/dist"/solr-core-*.jar)
|
||||
|
||||
function print_usage() {
|
||||
echo ""
|
||||
echo 'Usage: post -c <collection> [OPTIONS] <files|directories|urls|-d ["...",...]>'
|
||||
echo " or post -help"
|
||||
echo ""
|
||||
echo " collection name defaults to DEFAULT_SOLR_COLLECTION if not specified"
|
||||
echo ""
|
||||
echo "OPTIONS"
|
||||
echo "======="
|
||||
echo " Solr options:"
|
||||
echo " -url <base Solr update URL> (overrides collection, host, and port)"
|
||||
echo " -host <host> (default: localhost)"
|
||||
echo " -p or -port <port> (default: 8983)"
|
||||
echo " -commit yes|no (default: yes)"
|
||||
echo " -u or -user <user:pass> (sets BasicAuth credentials)"
|
||||
# optimize intentionally omitted, but can be used as '-optimize yes' (default: no)
|
||||
echo ""
|
||||
echo " Web crawl options:"
|
||||
echo " -recursive <depth> (default: 1)"
|
||||
echo " -delay <seconds> (default: 10)"
|
||||
echo ""
|
||||
echo " Directory crawl options:"
|
||||
echo " -delay <seconds> (default: 0)"
|
||||
echo ""
|
||||
echo " stdin/args options:"
|
||||
echo " -type <content/type> (default: application/xml)"
|
||||
echo ""
|
||||
echo " Other options:"
|
||||
echo " -filetypes <type>[,<type>,...] (default: xml,json,jsonl,csv,pdf,doc,docx,ppt,pptx,xls,xlsx,odt,odp,ods,ott,otp,ots,rtf,htm,html,txt,log)"
|
||||
echo " -params \"<key>=<value>[&<key>=<value>...]\" (values must be URL-encoded; these pass through to Solr update request)"
|
||||
echo " -out yes|no (default: no; yes outputs Solr response to console)"
|
||||
echo " -format solr (sends application/json content as Solr commands to /update instead of /update/json/docs)"
|
||||
echo ""
|
||||
echo ""
|
||||
echo "Examples:"
|
||||
echo ""
|
||||
echo "* JSON file: $THIS_SCRIPT -c wizbang events.json"
|
||||
echo "* XML files: $THIS_SCRIPT -c records article*.xml"
|
||||
echo "* CSV file: $THIS_SCRIPT -c signals LATEST-signals.csv"
|
||||
echo "* Directory of files: $THIS_SCRIPT -c myfiles ~/Documents"
|
||||
echo "* Web crawl: $THIS_SCRIPT -c gettingstarted http://lucene.apache.org/solr -recursive 1 -delay 1"
|
||||
echo "* Standard input (stdin): echo '{"commit": {}}' | $THIS_SCRIPT -c my_collection -type application/json -out yes -d"
|
||||
echo "* Data as string: $THIS_SCRIPT -c signals -type text/csv -out yes -d $'id,value\n1,0.47'"
|
||||
echo ""
|
||||
} # end print_usage
|
||||
|
||||
if [[ $# -eq 1 && ("$1" == "-help" || "$1" == "-h" || "$1" == "-usage") ]]; then
|
||||
print_usage
|
||||
exit
|
||||
fi
|
||||
|
||||
|
||||
COLLECTION="$DEFAULT_SOLR_COLLECTION"
|
||||
PROPS=('-Dauto=yes')
|
||||
RECURSIVE=""
|
||||
FILES=()
|
||||
URLS=()
|
||||
ARGS=()
|
||||
|
||||
while [ $# -gt 0 ]; do
|
||||
# TODO: natively handle the optional parameters to SPT
|
||||
# but for now they can be specified as bin/post -c collection-name delay=5 http://lucidworks.com
|
||||
|
||||
if [[ -d "$1" ]]; then
|
||||
# Directory
|
||||
# echo "$1: DIRECTORY"
|
||||
RECURSIVE=yes
|
||||
FILES+=("$1")
|
||||
elif [[ -f "$1" ]]; then
|
||||
# File
|
||||
# echo "$1: FILE"
|
||||
FILES+=("$1")
|
||||
elif [[ "$1" == http* ]]; then
|
||||
# URL
|
||||
# echo "$1: URL"
|
||||
URLS+=("$1")
|
||||
else
|
||||
if [[ "$1" == -* ]]; then
|
||||
if [[ "$1" == "-c" ]]; then
|
||||
# Special case, pull out collection name
|
||||
shift
|
||||
COLLECTION="$1"
|
||||
elif [[ "$1" == "-p" ]]; then
|
||||
# -p alias for -port for convenience and compatibility with `bin/solr start`
|
||||
shift
|
||||
PROPS+=("-Dport=$1")
|
||||
elif [[ ("$1" == "-d" || "$1" == "--data" || "$1" == "-") ]]; then
|
||||
if [[ ! -t 0 ]]; then
|
||||
MODE="stdin"
|
||||
else
|
||||
# when no stdin exists and -d specified, the rest of the arguments
|
||||
# are assumed to be strings to post as-is
|
||||
MODE="args"
|
||||
shift
|
||||
if [[ $# -gt 0 ]]; then
|
||||
ARGS=("$@")
|
||||
shift $#
|
||||
else
|
||||
# SPT needs a valid args string, useful for 'bin/post -c foo -d' to force a commit
|
||||
ARGS+=("<add/>")
|
||||
fi
|
||||
fi
|
||||
elif [[ ("$1" == "-u" || "$1" == "-user") ]]; then
|
||||
shift
|
||||
PROPS+=("-Dbasicauth=$1")
|
||||
else
|
||||
if [[ "$1" == -D* ]] ; then
|
||||
PROPS+=("$1")
|
||||
if [[ "${1:2:4}" == "url=" ]]; then
|
||||
SOLR_URL=${1:6}
|
||||
fi
|
||||
else
|
||||
key="${1:1}"
|
||||
shift
|
||||
# echo "$1: PROP"
|
||||
PROPS+=("-D$key=$1")
|
||||
if [[ "$key" == "url" ]]; then
|
||||
SOLR_URL=$1
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
else
|
||||
echo -e "\nUnrecognized argument: $1\n"
|
||||
echo -e "If this was intended to be a data file, it does not exist relative to $PWD\n"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
shift
|
||||
done
|
||||
|
||||
# Check for errors
|
||||
if [[ $COLLECTION == "" && $SOLR_URL == "" ]]; then
|
||||
echo -e "\nCollection or URL must be specified. Use -c <collection name> or set DEFAULT_SOLR_COLLECTION in your environment, or use -url instead.\n"
|
||||
echo -e "See '$THIS_SCRIPT -h' for usage instructions.\n"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Unsupported: bin/post -c foo
|
||||
if [[ ${#FILES[@]} == 0 && ${#URLS[@]} == 0 && $MODE != "stdin" && $MODE != "args" ]]; then
|
||||
echo -e "\nNo files, directories, URLs, -d strings, or stdin were specified.\n"
|
||||
echo -e "See '$THIS_SCRIPT -h' for usage instructions.\n"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# SPT does not support mixing different data mode types, just files, just URLs, just stdin, or just argument strings.
|
||||
# The following are unsupported constructs:
|
||||
# bin/post -c foo existing_file.csv http://example.com
|
||||
# echo '<xml.../>' | bin/post -c foo existing_file.csv
|
||||
# bin/post -c foo existing_file.csv -d 'anything'
|
||||
if [[ (${#FILES[@]} != 0 && ${#URLS[@]} != 0 && $MODE != "stdin" && $MODE != "args")
|
||||
|| ((${#FILES[@]} != 0 || ${#URLS[@]} != 0) && ($MODE == "stdin" || $MODE == "args")) ]]; then
|
||||
echo -e "\nCombining files/directories, URLs, stdin, or args is not supported. Post them separately.\n"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
PARAMS=""
|
||||
|
||||
# TODO: let's simplify this
|
||||
if [[ $MODE != "stdin" && $MODE != "args" ]]; then
|
||||
if [[ $FILES != "" ]]; then
|
||||
MODE="files"
|
||||
PARAMS=("${FILES[@]}")
|
||||
fi
|
||||
|
||||
if [[ $URLS != "" ]]; then
|
||||
MODE="web"
|
||||
PARAMS=("${URLS[@]}")
|
||||
fi
|
||||
else
|
||||
PARAMS=("${ARGS[@]}")
|
||||
fi
|
||||
|
||||
PROPS+=("-Dc=$COLLECTION" "-Ddata=$MODE")
|
||||
if [[ -n "$RECURSIVE" ]]; then
|
||||
PROPS+=('-Drecursive=yes')
|
||||
fi
|
||||
|
||||
echo "$JAVA" -classpath "${TOOL_JAR[0]}" "${PROPS[@]}" org.apache.solr.util.SimplePostTool "${PARAMS[@]}"
|
||||
"$JAVA" -classpath "${TOOL_JAR[0]}" "${PROPS[@]}" org.apache.solr.util.SimplePostTool "${PARAMS[@]}"
|
||||
|
||||
# post smoker:
|
||||
# bin/post -c signals -out yes -type application/json -d '[{"id": 2, "val": 0.47}]'
|
||||
# bin/post -c signals -out yes -params "wt=json" -d '<add><doc><field name="id">1</field></doc></add>'
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1 @@
|
||||
374318
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,157 @@
|
||||
@REM
|
||||
@REM Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
@REM contributor license agreements. See the NOTICE file distributed with
|
||||
@REM this work for additional information regarding copyright ownership.
|
||||
@REM The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
@REM (the "License"); you may not use this file except in compliance with
|
||||
@REM the License. You may obtain a copy of the License at
|
||||
@REM
|
||||
@REM http://www.apache.org/licenses/LICENSE-2.0
|
||||
@REM
|
||||
@REM Unless required by applicable law or agreed to in writing, software
|
||||
@REM distributed under the License is distributed on an "AS IS" BASIS,
|
||||
@REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
@REM See the License for the specific language governing permissions and
|
||||
@REM limitations under the License.
|
||||
|
||||
@echo off
|
||||
|
||||
REM Settings here will override settings in existing env vars or in bin/solr. The default shipped state
|
||||
REM of this file is completely commented.
|
||||
|
||||
REM By default the script will use JAVA_HOME to determine which java
|
||||
REM to use, but you can set a specific path for Solr to use without
|
||||
REM affecting other Java applications on your server/workstation.
|
||||
REM set SOLR_JAVA_HOME=
|
||||
|
||||
REM Increase Java Min/Max Heap as needed to support your indexing / query needs
|
||||
REM set SOLR_JAVA_MEM=-Xms512m -Xmx512m
|
||||
|
||||
REM Configure verbose GC logging:
|
||||
REM For Java 8: if this is set, additional params will be added to specify the log file & rotation
|
||||
REM For Java 9 or higher: GC_LOG_OPTS is currently not supported. If you set it, the startup script will exit with failure.
|
||||
REM set GC_LOG_OPTS=-verbose:gc -XX:+PrintHeapAtGC -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCTimeStamps -XX:+PrintTenuringDistribution -XX:+PrintGCApplicationStoppedTime
|
||||
|
||||
REM Various GC settings have shown to work well for a number of common Solr workloads.
|
||||
REM See solr.cmd GC_TUNE for the default list.
|
||||
REM set GC_TUNE=-XX:NewRatio=3 -XX:SurvivorRatio=4 etc.
|
||||
|
||||
REM Set the ZooKeeper connection string if using an external ZooKeeper ensemble
|
||||
REM e.g. host1:2181,host2:2181/chroot
|
||||
REM Leave empty if not using SolrCloud
|
||||
REM set ZK_HOST=
|
||||
|
||||
REM Set the ZooKeeper client timeout (for SolrCloud mode)
|
||||
REM set ZK_CLIENT_TIMEOUT=15000
|
||||
|
||||
REM By default the start script uses "localhost"; override the hostname here
|
||||
REM for production SolrCloud environments to control the hostname exposed to cluster state
|
||||
REM set SOLR_HOST=192.168.1.1
|
||||
|
||||
REM By default Solr will try to connect to Zookeeper with 30 seconds in timeout; override the timeout if needed
|
||||
REM set SOLR_WAIT_FOR_ZK=30
|
||||
|
||||
REM By default the start script uses UTC; override the timezone if needed
|
||||
REM set SOLR_TIMEZONE=UTC
|
||||
|
||||
REM Set to true to activate the JMX RMI connector to allow remote JMX client applications
|
||||
REM to monitor the JVM hosting Solr; set to "false" to disable that behavior
|
||||
REM (false is recommended in production environments)
|
||||
REM set ENABLE_REMOTE_JMX_OPTS=false
|
||||
|
||||
REM The script will use SOLR_PORT+10000 for the RMI_PORT or you can set it here
|
||||
REM set RMI_PORT=18983
|
||||
|
||||
REM Anything you add to the SOLR_OPTS variable will be included in the java
|
||||
REM start command line as-is, in ADDITION to other options. If you specify the
|
||||
REM -a option on start script, those options will be appended as well. Examples:
|
||||
REM set SOLR_OPTS=%SOLR_OPTS% -Dsolr.autoSoftCommit.maxTime=3000
|
||||
REM set SOLR_OPTS=%SOLR_OPTS% -Dsolr.autoCommit.maxTime=60000
|
||||
REM set SOLR_OPTS=%SOLR_OPTS% -Dsolr.clustering.enabled=true
|
||||
|
||||
REM Path to a directory for Solr to store cores and their data. By default, Solr will use server\solr
|
||||
REM If solr.xml is not stored in ZooKeeper, this directory needs to contain solr.xml
|
||||
REM set SOLR_HOME=
|
||||
|
||||
REM Path to a directory that Solr will use as root for data folders for each core.
|
||||
REM If not set, defaults to <instance_dir>/data. Overridable per core through 'dataDir' core property
|
||||
REM set SOLR_DATA_HOME=
|
||||
|
||||
REM Changes the logging level. Valid values: ALL, TRACE, DEBUG, INFO, WARN, ERROR, FATAL, OFF. Default is INFO
|
||||
REM This is an alternative to changing the rootLogger in log4j2.xml
|
||||
REM set SOLR_LOG_LEVEL=INFO
|
||||
|
||||
REM Location where Solr should write logs to. Absolute or relative to solr start dir
|
||||
REM set SOLR_LOGS_DIR=logs
|
||||
|
||||
REM Enables log rotation before starting Solr. Setting SOLR_LOG_PRESTART_ROTATION=true will let Solr take care of pre
|
||||
REM start rotation of logs. This is false by default as log4j2 handles this for us. If you choose to use another log
|
||||
REM framework that cannot do startup rotation, you may want to enable this to let Solr rotate logs on startup.
|
||||
REM set SOLR_LOG_PRESTART_ROTATION=false
|
||||
|
||||
REM Set the host interface to listen on. Jetty will listen on all interfaces (0.0.0.0) by default.
|
||||
REM This must be an IPv4 ("a.b.c.d") or bracketed IPv6 ("[x::y]") address, not a hostname!
|
||||
REM set SOLR_JETTY_HOST=0.0.0.0
|
||||
|
||||
REM Sets the port Solr binds to, default is 8983
|
||||
REM set SOLR_PORT=8983
|
||||
|
||||
REM Enables HTTPS. It is implictly true if you set SOLR_SSL_KEY_STORE. Use this config
|
||||
REM to enable https module with custom jetty configuration.
|
||||
REM set SOLR_SSL_ENABLED=true
|
||||
REM Uncomment to set SSL-related system properties
|
||||
REM Be sure to update the paths to the correct keystore for your environment
|
||||
REM set SOLR_SSL_KEY_STORE=etc/solr-ssl.keystore.jks
|
||||
REM set SOLR_SSL_KEY_STORE_PASSWORD=secret
|
||||
REM set SOLR_SSL_TRUST_STORE=etc/solr-ssl.keystore.jks
|
||||
REM set SOLR_SSL_TRUST_STORE_PASSWORD=secret
|
||||
REM Require clients to authenticate
|
||||
REM set SOLR_SSL_NEED_CLIENT_AUTH=false
|
||||
REM Enable clients to authenticate (but not require)
|
||||
REM set SOLR_SSL_WANT_CLIENT_AUTH=false
|
||||
REM SSL Certificates contain host/ip "peer name" information that is validated by default. Setting
|
||||
REM this to false can be useful to disable these checks when re-using a certificate on many hosts
|
||||
REM set SOLR_SSL_CHECK_PEER_NAME=true
|
||||
REM Override Key/Trust Store types if necessary
|
||||
REM set SOLR_SSL_KEY_STORE_TYPE=JKS
|
||||
REM set SOLR_SSL_TRUST_STORE_TYPE=JKS
|
||||
|
||||
REM Uncomment if you want to override previously defined SSL values for HTTP client
|
||||
REM otherwise keep them commented and the above values will automatically be set for HTTP clients
|
||||
REM set SOLR_SSL_CLIENT_KEY_STORE=
|
||||
REM set SOLR_SSL_CLIENT_KEY_STORE_PASSWORD=
|
||||
REM set SOLR_SSL_CLIENT_TRUST_STORE=
|
||||
REM set SOLR_SSL_CLIENT_TRUST_STORE_PASSWORD=
|
||||
REM set SOLR_SSL_CLIENT_KEY_STORE_TYPE=
|
||||
REM set SOLR_SSL_CLIENT_TRUST_STORE_TYPE=
|
||||
|
||||
REM Sets path of Hadoop credential provider (hadoop.security.credential.provider.path property) and
|
||||
REM enables usage of credential store.
|
||||
REM Credential provider should store the following keys:
|
||||
REM * solr.jetty.keystore.password
|
||||
REM * solr.jetty.truststore.password
|
||||
REM Set the two below if you want to set specific store passwords for HTTP client
|
||||
REM * javax.net.ssl.keyStorePassword
|
||||
REM * javax.net.ssl.trustStorePassword
|
||||
REM More info: https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/CredentialProviderAPI.html
|
||||
REM set SOLR_HADOOP_CREDENTIAL_PROVIDER_PATH=localjceks://file/home/solr/hadoop-credential-provider.jceks
|
||||
REM set SOLR_OPTS=" -Dsolr.ssl.credential.provider.chain=hadoop"
|
||||
|
||||
REM Settings for authentication
|
||||
REM Please configure only one of SOLR_AUTHENTICATION_CLIENT_BUILDER or SOLR_AUTH_TYPE parameters
|
||||
REM set SOLR_AUTHENTICATION_CLIENT_BUILDER=org.apache.solr.client.solrj.impl.PreemptiveBasicAuthClientBuilderFactory
|
||||
REM set SOLR_AUTH_TYPE=basic
|
||||
REM set SOLR_AUTHENTICATION_OPTS="-Dbasicauth=solr:SolrRocks"
|
||||
|
||||
REM Settings for ZK ACL
|
||||
REM set SOLR_ZK_CREDS_AND_ACLS=-DzkACLProvider=org.apache.solr.common.cloud.VMParamsAllAndReadonlyDigestZkACLProvider ^
|
||||
REM -DzkCredentialsProvider=org.apache.solr.common.cloud.VMParamsSingleSetCredentialsDigestZkCredentialsProvider ^
|
||||
REM -DzkDigestUsername=admin-user -DzkDigestPassword=CHANGEME-ADMIN-PASSWORD ^
|
||||
REM -DzkDigestReadonlyUsername=readonly-user -DzkDigestReadonlyPassword=CHANGEME-READONLY-PASSWORD
|
||||
REM set SOLR_OPTS=%SOLR_OPTS% %SOLR_ZK_CREDS_AND_ACLS%
|
||||
|
||||
REM When running Solr in non-cloud mode and if planning to do distributed search (using the "shards" parameter), the
|
||||
REM list of hosts needs to be whitelisted or Solr will forbid the request. The whitelist can be configured in solr.xml,
|
||||
REM or if you are using the OOTB solr.xml, can be specified using the system property "solr.shardsWhitelist". Alternatively
|
||||
REM host checking can be disabled by using the system property "solr.disable.shardsWhitelist"
|
||||
REM set SOLR_OPTS="%SOLR_OPTS% -Dsolr.shardsWhitelist=http://localhost:8983,http://localhost:8984"
|
||||
@@ -0,0 +1,185 @@
|
||||
# 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.
|
||||
|
||||
# Settings here will override settings in existing env vars or in bin/solr. The default shipped state
|
||||
# of this file is completely commented.
|
||||
|
||||
# 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=""
|
||||
|
||||
# This controls the number of seconds that the solr script will wait for
|
||||
# Solr to stop gracefully or Solr to start. If the graceful stop fails,
|
||||
# the script will forcibly stop Solr. If the start fails, the script will
|
||||
# give up waiting and display the last few lines of the logfile.
|
||||
#SOLR_STOP_WAIT="180"
|
||||
|
||||
# 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...
|
||||
# * If this is unset, various default options will be selected depending on which JVM version is in use
|
||||
# * For Java 8: if this is set, additional params will be added to specify the log file & rotation
|
||||
# * For Java 9 or higher: each included opt param that starts with '-Xlog:gc', but does not include an
|
||||
# output specifier, will have a 'file' output specifier (as well as formatting & rollover options)
|
||||
# appended, using the effective value of the SOLR_LOGS_DIR.
|
||||
#
|
||||
#GC_LOG_OPTS='-Xlog:gc*' # (Java 9+)
|
||||
#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 etc.
|
||||
|
||||
# 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 Solr will try to connect to Zookeeper with 30 seconds in timeout; override the timeout if needed
|
||||
#SOLR_WAIT_FOR_ZK="30"
|
||||
|
||||
# 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
|
||||
|
||||
# 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=
|
||||
|
||||
# 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=
|
||||
|
||||
# Path to a directory that Solr will use as root for data folders for each core.
|
||||
# If not set, defaults to <instance_dir>/data. Overridable per core through 'dataDir' core property
|
||||
#SOLR_DATA_HOME=
|
||||
|
||||
# Solr provides a default Log4J configuration xml 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 log4j2.xml file
|
||||
#LOG4J_PROPS=/var/solr/log4j2.xml
|
||||
|
||||
# Changes the logging level. Valid values: ALL, TRACE, DEBUG, INFO, WARN, ERROR, FATAL, OFF. Default is INFO
|
||||
# This is an alternative to changing the rootLogger in log4j2.xml
|
||||
#SOLR_LOG_LEVEL=INFO
|
||||
|
||||
# Location where Solr should write logs to. Absolute or relative to solr start dir
|
||||
#SOLR_LOGS_DIR=logs
|
||||
|
||||
# Enables log rotation before starting Solr. Setting SOLR_LOG_PRESTART_ROTATION=true will let Solr take care of pre
|
||||
# start rotation of logs. This is false by default as log4j2 handles this for us. If you choose to use another log
|
||||
# framework that cannot do startup rotation, you may want to enable this to let Solr rotate logs on startup.
|
||||
#SOLR_LOG_PRESTART_ROTATION=false
|
||||
|
||||
# Sets the port Solr binds to, default is 8983
|
||||
#SOLR_PORT=8983
|
||||
|
||||
# Enables HTTPS. It is implictly true if you set SOLR_SSL_KEY_STORE. Use this config
|
||||
# to enable https module with custom jetty configuration.
|
||||
#SOLR_SSL_ENABLED=true
|
||||
# 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
|
||||
# Require clients to authenticate
|
||||
#SOLR_SSL_NEED_CLIENT_AUTH=false
|
||||
# Enable clients to authenticate (but not require)
|
||||
#SOLR_SSL_WANT_CLIENT_AUTH=false
|
||||
# SSL Certificates contain host/ip "peer name" information that is validated by default. Setting
|
||||
# this to false can be useful to disable these checks when re-using a certificate on many hosts
|
||||
#SOLR_SSL_CHECK_PEER_NAME=true
|
||||
# Override Key/Trust Store types if necessary
|
||||
#SOLR_SSL_KEY_STORE_TYPE=JKS
|
||||
#SOLR_SSL_TRUST_STORE_TYPE=JKS
|
||||
|
||||
# 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=
|
||||
#SOLR_SSL_CLIENT_KEY_STORE_TYPE=
|
||||
#SOLR_SSL_CLIENT_TRUST_STORE_TYPE=
|
||||
|
||||
# Sets path of Hadoop credential provider (hadoop.security.credential.provider.path property) and
|
||||
# enables usage of credential store.
|
||||
# Credential provider should store the following keys:
|
||||
# * solr.jetty.keystore.password
|
||||
# * solr.jetty.truststore.password
|
||||
# Set the two below if you want to set specific store passwords for HTTP client
|
||||
# * javax.net.ssl.keyStorePassword
|
||||
# * javax.net.ssl.trustStorePassword
|
||||
# More info: https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/CredentialProviderAPI.html
|
||||
#SOLR_HADOOP_CREDENTIAL_PROVIDER_PATH=localjceks://file/home/solr/hadoop-credential-provider.jceks
|
||||
#SOLR_OPTS=" -Dsolr.ssl.credential.provider.chain=hadoop"
|
||||
|
||||
# Settings for authentication
|
||||
# Please configure only one of SOLR_AUTHENTICATION_CLIENT_BUILDER or SOLR_AUTH_TYPE parameters
|
||||
#SOLR_AUTHENTICATION_CLIENT_BUILDER="org.apache.solr.client.solrj.impl.PreemptiveBasicAuthClientBuilderFactory"
|
||||
#SOLR_AUTH_TYPE="basic"
|
||||
#SOLR_AUTHENTICATION_OPTS="-Dbasicauth=solr:SolrRocks"
|
||||
|
||||
# Settings for ZK ACL
|
||||
#SOLR_ZK_CREDS_AND_ACLS="-DzkACLProvider=org.apache.solr.common.cloud.VMParamsAllAndReadonlyDigestZkACLProvider \
|
||||
# -DzkCredentialsProvider=org.apache.solr.common.cloud.VMParamsSingleSetCredentialsDigestZkCredentialsProvider \
|
||||
# -DzkDigestUsername=admin-user -DzkDigestPassword=CHANGEME-ADMIN-PASSWORD \
|
||||
# -DzkDigestReadonlyUsername=readonly-user -DzkDigestReadonlyPassword=CHANGEME-READONLY-PASSWORD"
|
||||
#SOLR_OPTS="$SOLR_OPTS $SOLR_ZK_CREDS_AND_ACLS"
|
||||
|
||||
|
||||
# Settings for common system values that may cause operational imparement when system defaults are used.
|
||||
# Solr can use many processes and many file handles. On modern operating systems the savings by leaving
|
||||
# these settings low is minuscule, while the consequence can be Solr instability. To turn these checks off, set
|
||||
# SOLR_ULIMIT_CHECKS=false either here or as part of your profile.
|
||||
|
||||
# Different limits can be set in solr.in.sh or your profile if you prefer as well.
|
||||
#SOLR_RECOMMENDED_OPEN_FILES=
|
||||
#SOLR_RECOMMENDED_MAX_PROCESSES=
|
||||
SOLR_ULIMIT_CHECKS=false
|
||||
|
||||
# When running Solr in non-cloud mode and if planning to do distributed search (using the "shards" parameter), the
|
||||
# list of hosts needs to be whitelisted or Solr will forbid the request. The whitelist can be configured in solr.xml,
|
||||
# or if you are using the OOTB solr.xml, can be specified using the system property "solr.shardsWhitelist". Alternatively
|
||||
# host checking can be disabled by using the system property "solr.disable.shardsWhitelist"
|
||||
#SOLR_OPTS="$SOLR_OPTS -Dsolr.shardsWhitelist=http://localhost:8983,http://localhost:8984"
|
||||
@@ -0,0 +1,20 @@
|
||||
The analysis-extras plugin provides additional analyzers that rely
|
||||
upon large dependencies/dictionaries.
|
||||
|
||||
It includes integration with ICU for multilingual support,
|
||||
analyzers for Chinese and Polish, and integration with
|
||||
OpenNLP for multilingual tokenization, part-of-speech tagging
|
||||
lemmatization, phrase chunking, and named-entity recognition.
|
||||
|
||||
ICU relies upon lucene-libs/lucene-analyzers-icu-X.Y.jar
|
||||
and lib/icu4j-X.Y.jar
|
||||
|
||||
Smartcn relies upon lucene-libs/lucene-analyzers-smartcn-X.Y.jar
|
||||
|
||||
Stempel relies on lucene-libs/lucene-analyzers-stempel-X.Y.jar
|
||||
|
||||
Morfologik relies on lucene-libs/lucene-analyzers-morfologik-X.Y.jar
|
||||
and lib/morfologik-*.jar
|
||||
|
||||
OpenNLP relies on lucene-libs/lucene-analyzers-opennlp-X.Y.jar
|
||||
and lib/opennlp-*.jar
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
@@ -0,0 +1,4 @@
|
||||
The Clustering contrib plugin for Solr provides a generic mechanism for plugging in third party clustering implementations.
|
||||
It currently provides clustering support for search results using the Carrot2 project.
|
||||
|
||||
See https://lucene.apache.org/solr/guide/result-clustering for how to get started.
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,16 @@
|
||||
Apache Solr - DataImportHandler
|
||||
|
||||
Introduction
|
||||
------------
|
||||
DataImportHandler is a data import tool for Solr which makes importing data from Databases, XML files and
|
||||
HTTP data sources quick and easy.
|
||||
|
||||
Important Note
|
||||
--------------
|
||||
Although Solr strives to be agnostic of the Locale where the server is
|
||||
running, some code paths in DataImportHandler are known to depend on the
|
||||
System default Locale, Timezone, or Charset. It is recommended that when
|
||||
running Solr you set the following system properties:
|
||||
-Duser.language=xx -Duser.country=YY -Duser.timezone=ZZZ
|
||||
|
||||
where xx, YY, and ZZZ are consistent with any database server's configuration.
|
||||
@@ -0,0 +1,16 @@
|
||||
Apache Solr Content Extraction Library (Solr Cell)
|
||||
|
||||
Introduction
|
||||
------------
|
||||
|
||||
Apache Solr Extraction provides a means for extracting and indexing content contained in "rich" documents, such
|
||||
as Microsoft Word, Adobe PDF, etc. (Each name is a trademark of their respective owners) This contrib module
|
||||
uses Apache Tika to extract content and metadata from the files, which can then be indexed. For more information,
|
||||
see http://wiki.apache.org/solr/ExtractingRequestHandler
|
||||
|
||||
Getting Started
|
||||
---------------
|
||||
You will need Solr up and running. Then, simply add the extraction JAR file, plus the Tika dependencies (in the ./lib folder)
|
||||
to your Solr Home lib directory. See http://wiki.apache.org/solr/ExtractingRequestHandler for more details on hooking it in
|
||||
and configuring.
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,22 @@
|
||||
Apache Solr Language Identifier
|
||||
|
||||
|
||||
Introduction
|
||||
------------
|
||||
This module is intended to be used while indexing documents.
|
||||
It is implemented as an UpdateProcessor to be placed in an UpdateChain.
|
||||
Its purpose is to identify language from documents and tag the document with language code.
|
||||
The module can optionally map field names to their language specific counterpart,
|
||||
e.g. if the input is "title" and language is detected as "en", map to "title_en".
|
||||
Language may be detected globally for the document, and/or individually per field.
|
||||
Language detector implementations are pluggable.
|
||||
|
||||
Getting Started
|
||||
---------------
|
||||
Please refer to the module documentation at http://wiki.apache.org/solr/LanguageDetection
|
||||
|
||||
Dependencies
|
||||
------------
|
||||
The Tika detector depends on Tika Core (which is part of extraction contrib)
|
||||
The Langdetect detector depends on LangDetect library
|
||||
The OpenNLP detector depends on OpenNLP tools and requires a previously trained user-supplied model
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,23 @@
|
||||
Welcome to Apache Solr Learning to Rank!
|
||||
========
|
||||
|
||||
Apache Solr Learning to Rank (LTR) provides a way for you to extract features
|
||||
directly inside Solr for use in training a machine learned model. You can then
|
||||
deploy that model to Solr and use it to rerank your top X search results.
|
||||
|
||||
# Getting Started With Solr Learning To Rank
|
||||
|
||||
For information on how to get started with solr ltr please see:
|
||||
* [Solr Reference Guide's section on Learning To Rank](https://lucene.apache.org/solr/guide/learning-to-rank.html)
|
||||
|
||||
# Getting Started With Solr
|
||||
|
||||
For information on how to get started with solr please see:
|
||||
* [solr/README.txt](../../README.txt)
|
||||
* [Solr Tutorial](https://lucene.apache.org/solr/guide/solr-tutorial.html)
|
||||
|
||||
# How To Contribute
|
||||
|
||||
For information on how to contribute see:
|
||||
* http://wiki.apache.org/lucene-java/HowToContribute
|
||||
* http://wiki.apache.org/solr/HowToContribute
|
||||
@@ -0,0 +1,21 @@
|
||||
Welcome to Apache Solr Prometheus Exporter
|
||||
========
|
||||
|
||||
Apache Solr Prometheus Exporter (solr-exporter) provides a way for you to expose metrics for Solr to Prometheus.
|
||||
|
||||
# Getting Started With Solr Prometheus Exporter
|
||||
|
||||
For information on how to get started with solr-exporter please see:
|
||||
* [Solr Reference Guide's section on Monitoring Solr with Prometheus and Grafana](https://lucene.apache.org/solr/guide/monitoring-solr-with-prometheus-and-grafana.html)
|
||||
|
||||
# Getting Started With Solr
|
||||
|
||||
For information on how to get started with solr please see:
|
||||
* [solr/README.txt](../../README.txt)
|
||||
* [Solr Tutorial](https://lucene.apache.org/solr/guide/solr-tutorial.html)
|
||||
|
||||
# How To Contribute
|
||||
|
||||
For information on how to contribute see:
|
||||
* http://wiki.apache.org/lucene-java/HowToContribute
|
||||
* http://wiki.apache.org/solr/HowToContribute
|
||||
@@ -0,0 +1,126 @@
|
||||
#!/bin/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.
|
||||
#
|
||||
|
||||
BASEDIR=`dirname $0`/..
|
||||
BASEDIR=`(cd "$BASEDIR"; pwd)`
|
||||
|
||||
# OS specific support. $var _must_ be set to either true or false.
|
||||
cygwin=false;
|
||||
darwin=false;
|
||||
case "`uname`" in
|
||||
CYGWIN*) cygwin=true ;;
|
||||
Darwin*) darwin=true
|
||||
if [ -z "$JAVA_VERSION" ] ; then
|
||||
JAVA_VERSION="CurrentJDK"
|
||||
else
|
||||
echo "Using Java version: $JAVA_VERSION"
|
||||
fi
|
||||
if [ -z "$JAVA_HOME" ] ; then
|
||||
JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/${JAVA_VERSION}/Home
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
|
||||
if [ -z "$JAVA_HOME" ] ; then
|
||||
if [ -r /etc/gentoo-release ] ; then
|
||||
JAVA_HOME=`java-config --jre-home`
|
||||
fi
|
||||
fi
|
||||
|
||||
# For Cygwin, ensure paths are in UNIX format before anything is touched
|
||||
if $cygwin ; then
|
||||
[ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
|
||||
[ -n "$CLASSPATH" ] && CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
|
||||
fi
|
||||
|
||||
# If a specific java binary isn't specified search for the standard 'java' binary
|
||||
if [ -z "$JAVACMD" ] ; then
|
||||
if [ -n "$JAVA_HOME" ] ; then
|
||||
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
|
||||
# IBM's JDK on AIX uses strange locations for the executables
|
||||
JAVACMD="$JAVA_HOME/jre/sh/java"
|
||||
else
|
||||
JAVACMD="$JAVA_HOME/bin/java"
|
||||
fi
|
||||
else
|
||||
JAVACMD=`which java`
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ! -x "$JAVACMD" ] ; then
|
||||
echo "Error: JAVA_HOME is not defined correctly."
|
||||
echo " We cannot execute $JAVACMD"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -z "$REPO" ]
|
||||
then
|
||||
REPO="$BASEDIR"/lib
|
||||
fi
|
||||
|
||||
CLASSPATH=$CLASSPATH_PREFIX
|
||||
for JAR in $(find "$REPO" -name '*.jar')
|
||||
do
|
||||
CLASSPATH="$CLASSPATH":"$JAR"
|
||||
done
|
||||
for JAR in $(find "$BASEDIR"/../../dist/solrj-lib -name '*.jar')
|
||||
do
|
||||
CLASSPATH="$CLASSPATH":"$JAR"
|
||||
done
|
||||
for JAR in $(find "$BASEDIR"/../../dist -name 'solr-core-*.jar')
|
||||
do
|
||||
CLASSPATH="$CLASSPATH":"$JAR"
|
||||
done
|
||||
for JAR in $(find "$BASEDIR"/../../dist -name 'solr-solrj-*.jar')
|
||||
do
|
||||
CLASSPATH="$CLASSPATH":"$JAR"
|
||||
done
|
||||
for JAR in $(find "$BASEDIR"/../../dist -name 'solr-prometheus-exporter-*.jar')
|
||||
do
|
||||
CLASSPATH="$CLASSPATH":"$JAR"
|
||||
done
|
||||
for JAR in $(find "$BASEDIR"/lucene-libs -name '*.jar')
|
||||
do
|
||||
CLASSPATH="$CLASSPATH":"$JAR"
|
||||
done
|
||||
for JAR in $(find "$BASEDIR"/../../server/solr-webapp/webapp/WEB-INF/lib -name '*.jar')
|
||||
do
|
||||
CLASSPATH="$CLASSPATH":"$JAR"
|
||||
done
|
||||
|
||||
EXTRA_JVM_ARGUMENTS="-Xmx512m -Dlog4j.configurationFile=file:"$BASEDIR"/../../server/resources/log4j2-console.xml"
|
||||
|
||||
# For Cygwin, switch paths to Windows format before running java
|
||||
if $cygwin; then
|
||||
[ -n "$CLASSPATH" ] && CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
|
||||
[ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
|
||||
[ -n "$HOME" ] && HOME=`cygpath --path --windows "$HOME"`
|
||||
[ -n "$BASEDIR" ] && BASEDIR=`cygpath --path --windows "$BASEDIR"`
|
||||
[ -n "$REPO" ] && REPO=`cygpath --path --windows "$REPO"`
|
||||
fi
|
||||
|
||||
exec "$JAVACMD" $JAVA_OPTS \
|
||||
$EXTRA_JVM_ARGUMENTS \
|
||||
-classpath "$CLASSPATH" \
|
||||
-Dapp.name="solr-exporter" \
|
||||
-Dapp.pid="$$" \
|
||||
-Dapp.repo="$REPO" \
|
||||
-Dbasedir="$BASEDIR" \
|
||||
org.apache.solr.prometheus.exporter.SolrExporter \
|
||||
"$@"
|
||||
@@ -0,0 +1,104 @@
|
||||
@REM
|
||||
@REM Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
@REM contributor license agreements. See the NOTICE file distributed with
|
||||
@REM this work for additional information regarding copyright ownership.
|
||||
@REM The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
@REM (the "License"); you may not use this file except in compliance with
|
||||
@REM the License. You may obtain a copy of the License at
|
||||
@REM
|
||||
@REM http://www.apache.org/licenses/LICENSE-2.0
|
||||
@REM
|
||||
@REM Unless required by applicable law or agreed to in writing, software
|
||||
@REM distributed under the License is distributed on an "AS IS" BASIS,
|
||||
@REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
@REM See the License for the specific language governing permissions and
|
||||
@REM limitations under the License.
|
||||
|
||||
@echo off
|
||||
|
||||
set ERROR_CODE=0
|
||||
|
||||
:init
|
||||
@REM Decide how to startup depending on the version of windows
|
||||
|
||||
@REM -- Win98ME
|
||||
if NOT "%OS%"=="Windows_NT" goto Win9xArg
|
||||
|
||||
@REM set local scope for the variables with windows NT shell
|
||||
if "%OS%"=="Windows_NT" @setlocal
|
||||
|
||||
@REM -- 4NT shell
|
||||
if "%eval[2+2]" == "4" goto 4NTArgs
|
||||
|
||||
@REM -- Regular WinNT shell
|
||||
set CMD_LINE_ARGS=%*
|
||||
goto WinNTGetScriptDir
|
||||
|
||||
@REM The 4NT Shell from jp software
|
||||
:4NTArgs
|
||||
set CMD_LINE_ARGS=%$
|
||||
goto WinNTGetScriptDir
|
||||
|
||||
:Win9xArg
|
||||
@REM Slurp the command line arguments. This loop allows for an unlimited number
|
||||
@REM of agruments (up to the command line limit, anyway).
|
||||
set CMD_LINE_ARGS=
|
||||
:Win9xApp
|
||||
if %1a==a goto Win9xGetScriptDir
|
||||
set CMD_LINE_ARGS=%CMD_LINE_ARGS% %1
|
||||
shift
|
||||
goto Win9xApp
|
||||
|
||||
:Win9xGetScriptDir
|
||||
set SAVEDIR=%CD%
|
||||
%0\
|
||||
cd %0\..\..
|
||||
set BASEDIR=%CD%
|
||||
cd %SAVEDIR%
|
||||
set SAVE_DIR=
|
||||
goto repoSetup
|
||||
|
||||
:WinNTGetScriptDir
|
||||
set BASEDIR=%~dp0..
|
||||
|
||||
:repoSetup
|
||||
|
||||
|
||||
if "%JAVACMD%"=="" set JAVACMD=java
|
||||
|
||||
if "%REPO%"=="" set REPO=%BASEDIR%\lib
|
||||
|
||||
set CLASSPATH=%REPO%\*;%BASEDIR%\..\..\dist\solrj-lib\*;%BASEDIR%\..\..\dist\*;%BASEDIR%\lucene-libs\*;%BASEDIR%\..\..\server\solr-webapp\webapp\WEB-INF\lib\*
|
||||
set EXTRA_JVM_ARGUMENTS=-Xmx512m -Dlog4j.configurationFile=file:///%BASEDIR%\..\..\server\resources\log4j2-console.xml
|
||||
goto endInit
|
||||
|
||||
@REM Reaching here means variables are defined and arguments have been captured
|
||||
:endInit
|
||||
|
||||
%JAVACMD% %JAVA_OPTS% %EXTRA_JVM_ARGUMENTS% -classpath "%CLASSPATH_PREFIX%;%CLASSPATH%" -Dapp.name="solr-exporter" -Dapp.repo="%REPO%" -Dbasedir="%BASEDIR%" org.apache.solr.prometheus.exporter.SolrExporter %CMD_LINE_ARGS%
|
||||
if ERRORLEVEL 1 goto error
|
||||
goto end
|
||||
|
||||
:error
|
||||
if "%OS%"=="Windows_NT" @endlocal
|
||||
set ERROR_CODE=1
|
||||
|
||||
:end
|
||||
@REM set local scope for the variables with windows NT shell
|
||||
if "%OS%"=="Windows_NT" goto endNT
|
||||
|
||||
@REM For old DOS remove the set variables from ENV - we assume they were not set
|
||||
@REM before we started - at least we don't leave any baggage around
|
||||
set CMD_LINE_ARGS=
|
||||
goto postExec
|
||||
|
||||
:endNT
|
||||
@endlocal
|
||||
|
||||
:postExec
|
||||
|
||||
if "%FORCE_EXIT_ON_ERROR%" == "on" (
|
||||
if %ERROR_CODE% NEQ 0 exit %ERROR_CODE%
|
||||
)
|
||||
|
||||
exit /B %ERROR_CODE%
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user