lucene/solr
Timothy Potter 97763ad3ce
SOLR-15145: Additional fix for SolrJ back-compat (#2366)
2021-02-14 10:19:20 -07:00
..
bin SOLR-15010 Try to use jattach for threaddump if jstack is missing (#2192) 2021-01-11 14:58:11 -05:00
bin-test SOLR-12279: Reject invalid 'blockUnknown' values for 'bin/solr auth' 2018-05-07 07:41:13 -04:00
cloud-dev SOLR-14704 add download option to cloud.sh (#1715) 2020-09-04 09:39:23 -04:00
contrib SOLR-15115: Remove unused methods from TestRerankBase (#2261) 2021-02-01 17:31:58 +00:00
core SOLR-14928: allow cluster state updates to be done in a distributed way and not through Overseer (#2364) 2021-02-13 02:42:18 +01:00
dev-docs SOLR-15022: Add RefGuide documentation for cluster plugins. 2020-12-07 14:03:47 +01:00
docker SOLR-15133: Document how to eliminate Failed to reserve shared memory warning (#2304) 2021-02-04 16:15:43 -05:00
documentation LUCENE-9577: Move Lucene/Solr Documentation assembly to subproject (#1967) 2020-10-09 14:56:44 +02:00
example SOLR-14792: Remove /browse references from example and docs 2020-10-01 10:57:57 -04:00
licenses SOLR-14995 Update Jetty to latest version 2020-11-11 13:27:49 -08:00
packaging SOLR-14067: v4 Create /contrib/scripting module with ScriptingUpdateProcessor (#2257) 2021-01-29 12:27:36 -05:00
server SOLR-14928: allow cluster state updates to be done in a distributed way and not through Overseer (#2364) 2021-02-13 02:42:18 +01:00
solr-ref-guide SOLR-14928: allow cluster state updates to be done in a distributed way and not through Overseer (#2364) 2021-02-13 02:42:18 +01:00
solrj SOLR-15145: Additional fix for SolrJ back-compat (#2366) 2021-02-14 10:19:20 -07:00
test-framework SOLR-14928: allow cluster state updates to be done in a distributed way and not through Overseer (#2364) 2021-02-13 02:42:18 +01:00
webapp SOLR-15011: /admin/logging now distributes setLevel to all nodes (#2230) 2021-02-02 21:41:23 -05:00
.gitattributes SOLR-14186: Enforce CRLF in Windows files with .gitattributes (#1163) 2020-01-16 08:30:39 -05:00
.gitignore .gitignore clean up (#1993) 2020-10-24 11:09:55 -04:00
CHANGES.txt SOLR-14928: allow cluster state updates to be done in a distributed way and not through Overseer (#2364) 2021-02-13 02:42:18 +01:00
LICENSE.txt
NOTICE.txt Update copyright year(s) in lucene/NOTICE.txt and solr/NOTICE.txt files. 2021-01-04 09:19:05 +00:00
README.md LUCENE-9475: Enhance the Gradle build as necessary after removing Ant support, some minor text changes to solr/README.md and help.gradle 2020-09-06 17:16:08 -04:00
build.gradle LUCENE-9215: replace checkJavaDocs.py with doclet (#1802) 2020-09-02 08:29:17 -04:00

README.md

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 https://lucene.apache.org/solr

Getting Started

All the following commands are entered from the "solr" directory which should be just below the install directory

To start Solr for the first time after installation, simply enter:

  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, enter:

  bin/solr start -cloud

To see all available options for starting Solr, please enter:

  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 entering:

  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, enter:

  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, enter:

  bin/solr -e <EXAMPLE> where <EXAMPLE> is one of:

    cloud        : SolrCloud example
    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 SolrCloud example, enter:

  bin/solr -e cloud

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...

For more information about the "Solr Home" and Solr specific configuration

For a Solr tutorial

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

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 various examples.

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 11 JDK (Java Development Kit) or later from https://jdk.java.net/ 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 11 or later.

  2. 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:

    https://lucene.apache.org/solr/community.html#version-control

  3. Navigate to the root of your source tree folder and issue the ./gradlew tasks command to see the available options for building, testing, and packaging Solr.

    ./gradlew assemble will create a Solr executable. cd to "./solr/packaging/build/solr-9.0.0-SNAPSHOT" and run the bin/solr script to start Solr.

    NOTE: gradlew is the "Gradle Wrapper" and will automatically download and start using the correct version of Gradle.

    NOTE: ./gradlew help will print a list of high-level tasks. There are also a number of plain-text files in /help.

    NOTE: This CWiki page describes getting/building/testing Solr in more detail: https://cwiki.apache.org/confluence/display/solr/HowToContribute

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.