This is an automated email from the ASF dual-hosted git repository.
epugh pushed a commit to branch branch_9_0
in repository https://gitbox.apache.org/repos/asf/solr.git
The following commit(s) were added to refs/heads/branch_9_0 by this push:
new cb7062d34f1 SOLR-16228: Audit how we refer to Solr Modules (#889)
cb7062d34f1 is described below
commit cb7062d34f11a7a4e6ecafc3f21465d919db9975
Author: Eric Pugh <[email protected]>
AuthorDate: Fri Jun 3 10:53:45 2022 -0400
SOLR-16228: Audit how we refer to Solr Modules (#889)
* Consistent use of the word Module to mean a Solr Module
* Use the same language around enabling a Solr Module
* Consolidate the details on installing a module to a link to the
solr-modules page where possible.
* Make sure every Solr Module has the name of that module IN the Ref Guide
for users.
* Solr Module is in Upper Case, because it's a proper noun. Solr Modules
are a defined thing, not merely modules of Solr.
* Apply suggestions from code review
Co-authored-by: Jan Høydahl <[email protected]>
* Tweak in phrasing
* document how the direct loading of jars isn't technically enabling a
module.
* Apply suggestions from code review
Co-authored-by: Houston Putman <[email protected]>
* back out change as we use both patterns and should solve it once.
* user centric language.
* follow the pattern.
* Make the <lib> option more clear
* Update
solr/solr-ref-guide/modules/configuration-guide/pages/solr-modules.adoc
Co-authored-by: David Smiley <[email protected]>
* Update
solr/solr-ref-guide/modules/configuration-guide/pages/solr-modules.adoc
Co-authored-by: David Smiley <[email protected]>
* Update
solr/solr-ref-guide/modules/configuration-guide/pages/solr-plugins.adoc
Co-authored-by: David Smiley <[email protected]>
Co-authored-by: [email protected] <>
Co-authored-by: Jan Høydahl <[email protected]>
Co-authored-by: Houston Putman <[email protected]>
Co-authored-by: David Smiley <[email protected]>
---
dev-docs/plugins-modules-packages.adoc | 4 +--
gradle/validation/jar-checks.gradle | 2 +-
.../solr/configsets/_default/conf/solrconfig.xml | 2 +-
.../conf/solrconfig.xml | 6 ++--
.../pages/configuring-solr-xml.adoc | 4 +--
.../modules/configuration-guide/pages/libs.adoc | 7 ++--
.../pages/script-update-processor.adoc | 9 +++--
.../configuration-guide/pages/solr-modules.adoc | 19 ++++++-----
.../configuration-guide/pages/solr-plugins.adoc | 8 ++---
.../deployment-guide/pages/backup-restore.adoc | 12 +++----
.../pages/distributed-tracing.adoc | 10 ++++--
.../deployment-guide/pages/installing-solr.adoc | 3 +-
.../pages/jwt-authentication-plugin.adoc | 3 +-
.../deployment-guide/pages/solr-on-hdfs.adoc | 11 ++++---
.../indexing-guide/pages/indexing-with-tika.adoc | 13 ++++++--
.../pages/indexing-with-update-handlers.adoc | 7 ++--
.../indexing-guide/pages/language-analysis.adoc | 38 +++++++++++-----------
.../indexing-guide/pages/language-detection.adoc | 4 +++
.../modules/query-guide/pages/analytics.adoc | 10 +++---
.../query-guide/pages/dense-vector-search.adoc | 6 ++--
.../modules/query-guide/pages/json-facet-api.adoc | 4 +--
.../query-guide/pages/learning-to-rank.adoc | 8 +++--
.../query-guide/pages/result-clustering.adoc | 15 +++------
.../modules/query-guide/pages/sql-query.adoc | 9 +++--
.../pages/major-changes-in-solr-7.adoc | 2 +-
.../pages/major-changes-in-solr-9.adoc | 9 ++---
.../solr/client/solrj/io/stream/JDBCStream.java | 2 +-
27 files changed, 124 insertions(+), 103 deletions(-)
diff --git a/dev-docs/plugins-modules-packages.adoc
b/dev-docs/plugins-modules-packages.adoc
index 7dc064d622d..1a63ee7d689 100644
--- a/dev-docs/plugins-modules-packages.adoc
+++ b/dev-docs/plugins-modules-packages.adoc
@@ -13,7 +13,7 @@ See ref guide page
https://solr.apache.org/guide/solr-plugins.html[Solr Plugins]
=== Module
-Solr modules are addon Solr plugins that are not part of solr-core, but
officially maintained
+Solr Modules are addon Solr plugins that are not part of solr-core, but
officially maintained
by the Solr project. They provide well-defined features such as the
"extracting" module which lets
users index rich text documents with Apache Tika. Modules were earlier known
as "contribs".
@@ -136,4 +136,4 @@ compatible with any 9.x version of Solr. It is dangerous to
assume compatibility
using e.g. `9.1`, which will be compatible with all bugfix 9.1 releases.
For details about how the package management internals work, please see
-https://solr.apache.org/guide/8_11/package-manager-internals.html[Package
Manager Internals] chapter of the reference guide.
\ No newline at end of file
+https://solr.apache.org/guide/8_11/package-manager-internals.html[Package
Manager Internals] chapter of the reference guide.
diff --git a/gradle/validation/jar-checks.gradle
b/gradle/validation/jar-checks.gradle
index 85afb91f56b..55b8089aea4 100644
--- a/gradle/validation/jar-checks.gradle
+++ b/gradle/validation/jar-checks.gradle
@@ -127,7 +127,7 @@ subprojects {
while (!queue.isEmpty()) {
def dep = queue.removeFirst()
- // Skip any artifacts from other Solr modules (they will be resolved
there).
+ // Skip any artifacts from other Solr Modules (they will be resolved
there).
if (dep.moduleGroup == "org.apache.solr") {
continue
}
diff --git a/solr/server/solr/configsets/_default/conf/solrconfig.xml
b/solr/server/solr/configsets/_default/conf/solrconfig.xml
index 528b65a7486..4cfc69b6d4c 100644
--- a/solr/server/solr/configsets/_default/conf/solrconfig.xml
+++ b/solr/server/solr/configsets/_default/conf/solrconfig.xml
@@ -69,7 +69,7 @@
If a 'dir' option (with or without a regex) is used and nothing
is found that matches, a warning will be logged.
- The example below can be used to load a solr module along
+ The example below can be used to load a Solr Module along
with their external dependencies.
-->
<!-- <lib dir="${solr.install.dir:../../../..}/modules/ltr/lib"
regex=".*\.jar" /> -->
diff --git
a/solr/server/solr/configsets/sample_techproducts_configs/conf/solrconfig.xml
b/solr/server/solr/configsets/sample_techproducts_configs/conf/solrconfig.xml
index 6abbd0ee149..8c64d9a89e0 100644
---
a/solr/server/solr/configsets/sample_techproducts_configs/conf/solrconfig.xml
+++
b/solr/server/solr/configsets/sample_techproducts_configs/conf/solrconfig.xml
@@ -69,8 +69,10 @@
If a 'dir' option (with or without a regex) is used and nothing
is found that matches, a warning will be logged.
- The examples below can be used to load some solr modules along
- with their external dependencies.
+ The examples below can be used to load some Solr Modules along
+ with their external dependencies as an alternative to using a
+ startup parameter to define the modules to load globally. For more info
+ see
https://solr.apache.org/guide/solr/latest/configuration-guide/solr-modules.html.
-->
<lib dir="${solr.install.dir:../../../..}/modules/extraction/lib"
regex=".*\.jar" />
diff --git
a/solr/solr-ref-guide/modules/configuration-guide/pages/configuring-solr-xml.adoc
b/solr/solr-ref-guide/modules/configuration-guide/pages/configuring-solr-xml.adoc
index 9744a7956ae..9de8707fe80 100644
---
a/solr/solr-ref-guide/modules/configuration-guide/pages/configuring-solr-xml.adoc
+++
b/solr/solr-ref-guide/modules/configuration-guide/pages/configuring-solr-xml.adoc
@@ -183,9 +183,9 @@ Note that specifying `sharedLib` will not remove
`$SOLR_HOME/lib` from Solr's cl
|Optional |Default: none
|===
+
-Takes a list of bundled xref:solr-modules.adoc[solr modules] to add to Solr's
class path
+Takes a list of bundled xref:solr-modules.adoc[] to enable
on startup. This way of adding modules will add them to the shared class
loader, making them
-available for every collection in Solr, unlike `<lib>` tag in `solrconfig.xml`
which is only
+available to every collection in Solr, unlike `<lib>` tag in `solrconfig.xml`
which is only
for that one collection. Example value: `extracting,ltr`. See the
xref:solr-modules.adoc[Solr Modules] chapter for more details.
diff --git a/solr/solr-ref-guide/modules/configuration-guide/pages/libs.adoc
b/solr/solr-ref-guide/modules/configuration-guide/pages/libs.adoc
index db651e2403d..151665fe077 100644
--- a/solr/solr-ref-guide/modules/configuration-guide/pages/libs.adoc
+++ b/solr/solr-ref-guide/modules/configuration-guide/pages/libs.adoc
@@ -29,15 +29,14 @@ If there is overlap or inter-dependencies between
libraries, then pay attention
There are several special places you can place Solr plugin `.jar` files:
* `<solr_home>/lib/`: The `.jar` files placed here are available to all Solr
cores running on the node, and to node level plugins referenced in `solr.xml`
-- so basically everything.
-This directory is not present by default so create it.
+This directory is not present by default so you will need to create it.
See xref:deployment-guide:taking-solr-to-production.adoc[].
* `<core_instance>/lib/`: In a user-managed cluster or a single-node
installation, you may want to add plugins just for a specific Solr core.
-Create this adjacent to the `conf/` directory; it's not present by default.
+Create this adjacent to the `<core_instance>/conf/` directory; it's not
present by default.
* `<solr_install>/server/solr-webapp/webapp/WEB-INF/lib/`: The `.jar` files
for Solr itself and it's dependencies live here.
-Certain plugins or add-ons to plugins require placement here.
-They will document themselves to say so.
+Certain plugins or add-ons to plugins require placement here, and they will
have explicit documentation for this need.
* `<solr_install>/server/lib/ext`: The `.jar` files used for the Solr server
as well as Solr Core/SolrJ.
diff --git
a/solr/solr-ref-guide/modules/configuration-guide/pages/script-update-processor.adoc
b/solr/solr-ref-guide/modules/configuration-guide/pages/script-update-processor.adoc
index ea17b04ec7d..3afe081b952 100644
---
a/solr/solr-ref-guide/modules/configuration-guide/pages/script-update-processor.adoc
+++
b/solr/solr-ref-guide/modules/configuration-guide/pages/script-update-processor.adoc
@@ -28,10 +28,13 @@ The script can be written in any scripting language
supported by your JVM (such
WARNING: Being able to run a script of your choice as part of the indexing
pipeline is a really powerful tool, that I sometimes call the _Get out of jail
free_ card because you can solve some problems this way that you can't in any
other way.
However, you are introducing some potential security vulnerabilities.
-== Installing the ScriptingUpdateProcessor and Scripting Engines
-This is provided via a xref:configuration-guide:solr-modules.adoc[Solr Module]
that needs to be added to the classpath before use
-by adding it to the list of modules via `solr.modules=scripting`.
+== Module
+
+This is provided via the `scripting`
xref:configuration-guide:solr-modules.adoc[Solr Module] that needs to be
enabled before use.
+
+
+== Enababling the ScriptingUpdateProcessor and Scripting Engines
Java 11 and previous versions come with a JavaScript engine called Nashorn,
but Java 12 will require you to add your own JavaScript engine.
Other supported scripting engines like JRuby, Jython, Groovy, all require you
to add JAR files to Solr.
diff --git
a/solr/solr-ref-guide/modules/configuration-guide/pages/solr-modules.adoc
b/solr/solr-ref-guide/modules/configuration-guide/pages/solr-modules.adoc
index 29229aec166..8e203abd0e2 100644
--- a/solr/solr-ref-guide/modules/configuration-guide/pages/solr-modules.adoc
+++ b/solr/solr-ref-guide/modules/configuration-guide/pages/solr-modules.adoc
@@ -17,32 +17,35 @@
// specific language governing permissions and limitations
// under the License.
-Solr modules are addon Solr plugins that are not part of solr-core, but
officially maintained
+Solr Modules are addon Solr plugins that are not part of solr-core, but
officially maintained
by the Solr project. They provide well-defined features such as the
"extracting" module which lets
users index rich text documents with Apache Tika. A single module can contain
multiple Plugins.
Modules were earlier known as "contribs".
-Each module produces a separate `.jar` file in the build, and additional
dependencies required by
-each module are also packaged with the module. This helps keep the main core
of Solr small and lean.
+Each module produces a separate `.jar` file in the build, packaged in the
module's `lib/` directory.
+All additional dependencies required by the module, and not provided by Solr
core, are also packaged there.
+This helps keep the main core of Solr small and lean.
== Installing a module
The easiest way to enable a module is to list the modules you intend to use
either in the
system property `solr.modules` or in the environment variable `SOLR_MODULES`
(e.g. in `solr.in.sh`
-or `solr.in.cmd`). You can also add a `<str name="modules">` tag to
+or `solr.in.cmd`). You can also add a `<str name="modules">` tag to your
xref:configuration-guide:configuring-solr-xml.adoc[solr.xml]. The expected
value is a comma separated list
-of module names, e.g. `SOLR_MODULES=extracting,ltr`. This way of adding
modules will add
-them to the shared class loader, making them available for every collection in
Solr.
+of module names, e.g. `SOLR_MODULES=extracting,ltr`. This will make the
functionality of configured Modules
+available to every collection in Solr.
-You can also specify the modules when using the Solr CLI to start Solr:
+You can also specify the modules to include when using the Solr CLI to start
Solr:
[source,bash]
----
bin/solr start -e techproducts -Dsolr.modules=scripting
----
-If you only wish to enable a module for a single collection, you may add
`<lib>` tags to `solrconfig.xml`
+NOTE: If you only wish to enable a module for certain collections, you may add
`<lib>` tags to `solrconfig.xml` in applicable configset(s).
as explained in xref:configuration-guide:libs.adoc[Lib Directories].
+Collection-level plugins will work if the module is enabled either per
collection (`<lib>`) or for the whole Solr node.
+Node-level plugins such as those specified in `solr.xml` will not work when
using the `<lib>` option in `solrconfig.xml` because configsets configure
collections, not the node. They must be enabled for the entire Solr node, as
described above.
Some modules may have been made available as packages for the
xref:configuration-guide:package-manager.adoc[Package Manager],
check by listing available packages.
diff --git
a/solr/solr-ref-guide/modules/configuration-guide/pages/solr-plugins.adoc
b/solr/solr-ref-guide/modules/configuration-guide/pages/solr-plugins.adoc
index 37f23688707..5293a071667 100644
--- a/solr/solr-ref-guide/modules/configuration-guide/pages/solr-plugins.adoc
+++ b/solr/solr-ref-guide/modules/configuration-guide/pages/solr-plugins.adoc
@@ -46,11 +46,11 @@ Examples of these are
xref:deployment-guide:authentication-and-authorization-plu
== Installing Plugins ==
-Most plugins are built-in to Solr core and there is nothing to install.
-The subject here is how to make the bundled modules and other plugins
available to Solr.
-Plugins are packaged into a Java jar file and may have other dependent jar
files to function.
+Many plugins are built-in to Solr core and there is nothing to install.
+However some plugins require installation step(s).
+Plugins are packaged into a Java jar file and may have other dependent jar
files required to function.
-The next sections describe some options:
+The next sections describe some installation options:
****
// This tags the below list so it can be used in the parent page section list
diff --git
a/solr/solr-ref-guide/modules/deployment-guide/pages/backup-restore.adoc
b/solr/solr-ref-guide/modules/deployment-guide/pages/backup-restore.adoc
index 18a55273f75..88e67fbe9ad 100644
--- a/solr/solr-ref-guide/modules/deployment-guide/pages/backup-restore.adoc
+++ b/solr/solr-ref-guide/modules/deployment-guide/pages/backup-restore.adoc
@@ -404,8 +404,8 @@ An example configuration using this property can be found
below.
=== HdfsBackupRepository
Stores and retrieves backup files from HDFS directories.
-This is provided in the `hdfs` xref:configuration-guide:solr-modules.adoc[Solr
Module].
-This plugin must first be
xref:configuration-guide:solr-plugins.adoc#installing-plugins[installed] before
using.
+
+This is provided via the `hdfs`
xref:configuration-guide:solr-modules.adoc[Solr Module] that needs to be
enabled before use.
HdfsBackupRepository accepts the following configuration options:
@@ -464,8 +464,8 @@ An example configuration using these properties can be
found below:
=== GCSBackupRepository
Stores and retrieves backup files in a Google Cloud Storage ("GCS") bucket.
-This is provided in the `gcs-repository`
xref:configuration-guide:solr-modules.adoc[Solr Module].
-This plugin must first be
xref:configuration-guide:solr-plugins.adoc#installing-plugins[installed] before
using.
+
+This is provided via the `gcs-repository`
xref:configuration-guide:solr-modules.adoc[Solr Module] that needs to be
enabled before use.
GCSBackupRepository accepts the following options for overall configuration:
@@ -664,8 +664,8 @@ An example configuration using the overall and GCS-client
properties can be seen
=== S3BackupRepository
Stores and retrieves backup files in an Amazon S3 bucket.
-This is provided in the `s3-repository`
xref:configuration-guide:solr-modules.adoc[Solr Module].
-This plugin must first be
xref:configuration-guide:solr-plugins.adoc#installing-plugins[installed] before
using.
+
+This is provided via the `s3-repository`
xref:configuration-guide:solr-modules.adoc[Solr Module] that needs to be
enabled before use.
This plugin uses the
https://docs.aws.amazon.com/sdk-for-java/v2/developer-guide/credentials.html[default
AWS credentials provider chain], so ensure that your credentials are set
appropriately (e.g., via env var, or in `~/.aws/credentials`, etc.).
diff --git
a/solr/solr-ref-guide/modules/deployment-guide/pages/distributed-tracing.adoc
b/solr/solr-ref-guide/modules/deployment-guide/pages/distributed-tracing.adoc
index d2fad635111..5b2c48ac2de 100644
---
a/solr/solr-ref-guide/modules/deployment-guide/pages/distributed-tracing.adoc
+++
b/solr/solr-ref-guide/modules/deployment-guide/pages/distributed-tracing.adoc
@@ -16,9 +16,9 @@
// specific language governing permissions and limitations
// under the License.
-Solr includes a general tracing framework based on OpenTracing that can be
used to trace lifecycle of a request for performance monitoring.
+Solr includes a general tracing framework based on OpenTracing that can be
used to trace the lifecycle of a request for performance monitoring.
-Tracing data can be configured to send to arbitrary backend like Jaeger,
Zipkin, Datadog, etc.
+Tracing data can be configured to send to arbitrary backends like Jaeger,
Zipkin, Datadog, etc.
At the moment, only Jaeger is supported out of the box.
A sampled distributed tracing query request on Jaeger looks like this:
@@ -26,6 +26,10 @@ A sampled distributed tracing query request on Jaeger looks
like this:
.Tracing of a Solr query
image::distributed-tracing/query-request-tracing.png[]
+== Module
+
+This is provided via the `jaegertracer-configurator`
xref:configuration-guide:solr-modules.adoc[Solr Module] that needs to be
enabled before use.
+
== Configuring Tracer
`TracerConfigurator` is a class used to provide an instance of
`io.opentracing.Tracer` based on configuration in `solr.xml`.
@@ -51,7 +55,7 @@
https://docs.datadoghq.com/tracing/setup/java/[datadog-java-agent] uses Javaagen
The `modules/jagertracer-configurator` provides a default implementation for
setting up Jaeger Tracer.
Add the solr-jaegertracer JAR file and the other JARs provided with this
module to your Solr installation, ideally to each node.
-GSON is a dependency that is only used by Jaeger's "remote" sampler,
+https://github.com/google/gson[GSON] is a dependency that is only used by
Jaeger's "remote" sampler,
which is the default. Solr doesn't distribute it, so you'll need to add GSON
yourself or configure a different sampler.
Then Jaeger tracer is configured in `solr.xml` like this:
diff --git
a/solr/solr-ref-guide/modules/deployment-guide/pages/installing-solr.adoc
b/solr/solr-ref-guide/modules/deployment-guide/pages/installing-solr.adoc
index 26e7a29c8f5..baed37c773c 100644
--- a/solr/solr-ref-guide/modules/deployment-guide/pages/installing-solr.adoc
+++ b/solr/solr-ref-guide/modules/deployment-guide/pages/installing-solr.adoc
@@ -92,7 +92,8 @@ This script is used on *nix systems to install Solr as a
service.
It is described in more detail in the section
xref:taking-solr-to-production.adoc[].
modules/::
-Solr's `modules` directory includes 1st-party add-on plugins for specialized
features of Solr.
+Solr's `modules` directory includes 1st-party add-ons for specialized features
that enhance Solr.
+See the section xref:configuration-guide:solr-modules.adoc[] for more
information.
prometheus-exporter/::
A standalone application, included under `bin/`, that montiors Solr instances
and produces Prometheus metrics.
diff --git
a/solr/solr-ref-guide/modules/deployment-guide/pages/jwt-authentication-plugin.adoc
b/solr/solr-ref-guide/modules/deployment-guide/pages/jwt-authentication-plugin.adoc
index 80d345ac4cd..4bef9c62e55 100644
---
a/solr/solr-ref-guide/modules/deployment-guide/pages/jwt-authentication-plugin.adoc
+++
b/solr/solr-ref-guide/modules/deployment-guide/pages/jwt-authentication-plugin.adoc
@@ -23,8 +23,7 @@ The typical use case is to integrate Solr with an
https://en.wikipedia.org/wiki/
== Module
-This is provided via a xref:configuration-guide:solr-modules.adoc[Solr Module]
that needs to be added to the classpath before use. Since this is a node-level
-plugin it must go in `sharedLib`, see
xref:configuration-guide:configuring-solr-xml.adoc[] for details.
+This is provided via the `jwt-auth`
xref:configuration-guide:solr-modules.adoc[Solr Module] that needs to be
enabled before use.
== Enable JWT Authentication
diff --git
a/solr/solr-ref-guide/modules/deployment-guide/pages/solr-on-hdfs.adoc
b/solr/solr-ref-guide/modules/deployment-guide/pages/solr-on-hdfs.adoc
index c02b89e1cf9..0242439e2af 100644
--- a/solr/solr-ref-guide/modules/deployment-guide/pages/solr-on-hdfs.adoc
+++ b/solr/solr-ref-guide/modules/deployment-guide/pages/solr-on-hdfs.adoc
@@ -17,11 +17,8 @@
// under the License.
-The Solr HDFS module has support for writing and reading its index and
transaction log files to the HDFS distributed filesystem.
-This plugin must first be
xref:configuration-guide:solr-plugins.adoc#installing-plugins[installed] before
using.
-This module needs to be installed as lib, it is planned to evolve to a Solr
package in a later release.
-
-This does not use Hadoop MapReduce to process Solr data, rather it only uses
the HDFS filesystem for index and transaction log file storage.
+The Solr HDFS Module has support for writing and reading Solr's index and
transaction log files to the HDFS distributed filesystem.
+It does not use Hadoop MapReduce to process Solr data.
To use HDFS rather than a local filesystem, you must be using Hadoop 2.x and
you will need to instruct Solr to use the `HdfsDirectoryFactory`.
There are also several additional parameters to define.
@@ -33,6 +30,10 @@ These would need to be passed every time you start Solr with
`bin/solr`.
* Define the properties in `solrconfig.xml`.
These configuration changes would need to be repeated for every collection, so
is a good option if you only want some of your collections stored in HDFS.
+== Module
+
+This is provided via the `hdfs`
xref:configuration-guide:solr-modules.adoc[Solr Module] that needs to be
enabled before use.
+
== Starting Solr on HDFS
=== User-Managed Cluters and Single-Node Installations
diff --git
a/solr/solr-ref-guide/modules/indexing-guide/pages/indexing-with-tika.adoc
b/solr/solr-ref-guide/modules/indexing-guide/pages/indexing-with-tika.adoc
index 6d8afde498a..4ba4f52f26f 100644
--- a/solr/solr-ref-guide/modules/indexing-guide/pages/indexing-with-tika.adoc
+++ b/solr/solr-ref-guide/modules/indexing-guide/pages/indexing-with-tika.adoc
@@ -49,8 +49,14 @@ By default it maps to the same name but several parameters
control how this is d
* When Solr Cell finishes creating the internal `SolrInputDocument`, the rest
of the indexing stack takes over.
The next step after any update handler is the
xref:configuration-guide:update-request-processors.adoc[Update Request
Processor] chain.
-Solr Cell is a module, which means it's not automatically included with Solr
but must be configured.
-The example configsets have Solr Cell configured, but if you are not using
those, you will want to pay attention to the section <<solrconfig.xml
Configuration>> below.
+
+== Module
+
+This is provided via the `extraction`
xref:configuration-guide:solr-modules.adoc[Solr Module] that needs to be
enabled before use.
+
+The "techproducts" example included with Solr is pre-configured to have Solr
Cell configured.
+If you are not using the example, you will want to pay attention to the
section <<solrconfig.xml Configuration>> below.
+
=== Solr Cell Performance Implications
@@ -415,7 +421,8 @@ Also see the section <<Defining XPath Expressions>> for an
example.
If you have started Solr with one of the supplied
xref:configuration-guide:config-sets.adoc[example configsets], you may already
have the `ExtractingRequestHandler` configured by default.
-If it is not already configured, you will need to configure `solrconfig.xml`
to find the `ExtractingRequestHandler` and its dependencies:
+First, you must enable the xref:#module[Module].
+If `solrconfig.xml` is not already configured, you will need to modify it to
find the `ExtractingRequestHandler` and its dependencies:
[source,xml]
----
diff --git
a/solr/solr-ref-guide/modules/indexing-guide/pages/indexing-with-update-handlers.adoc
b/solr/solr-ref-guide/modules/indexing-guide/pages/indexing-with-update-handlers.adoc
index 10c06d7da04..c74e9d266ba 100644
---
a/solr/solr-ref-guide/modules/indexing-guide/pages/indexing-with-update-handlers.adoc
+++
b/solr/solr-ref-guide/modules/indexing-guide/pages/indexing-with-update-handlers.adoc
@@ -18,7 +18,7 @@
// under the License.
Update handlers are request handlers designed to add, delete and update
documents to the index.
-In addition to having plugins for importing rich documents
xref:indexing-with-tika.adoc[], Solr natively supports indexing structured
documents in XML, CSV, and JSON.
+In addition to having plugins for importing rich documents (see
xref:indexing-with-tika.adoc[]), Solr natively supports indexing structured
documents in XML, CSV, and JSON.
The recommended way to configure and use request handlers is with path based
names that map to paths in the request URL.
However, request handlers can also be specified with the `qt` (query type)
parameter if the
xref:configuration-guide:requestdispatcher.adoc[`requestDispatcher`] is
appropriately configured.
@@ -275,14 +275,13 @@ The status field will be non-zero in case of failure.
The xref:configuration-guide:script-update-processor.adoc[Scripting module]
provides a separate XSLT Update Request Handler that allows you to index any
arbitrary XML by using the `<tr>` parameter to apply an
https://en.wikipedia.org/wiki/XSLT[XSL transformation].
You must have an XSLT stylesheet in the `conf/xslt` directory of your
xref:configuration-guide:config-sets.adoc[configset] that can transform the
incoming data to the expected `<add><doc/></add>` format, and use the `tr`
parameter to specify the name of that stylesheet.
-Learn more about adding the `modules/scripting/lib/*` files into Solr's
xref:configuration-guide:libs.adoc#lib-directories[Lib Directories].
+You will need to enable the
xref:configuration-guide:script-update-processor.adoc#module[scripting Module]
before using this feature.
=== tr Parameter
-The XSLT Update Request Handler accepts one parameter: the `tr` parameter,
which identifies the XML transformation to use.
+The XSLT Update Request Handler accepts the `tr` parameter, which identifies
the XML transformation to use.
The transformation must be found in the Solr `conf/xslt` directory.
-
=== XSLT Configuration
The example below, from the `sample_techproducts_configs`
xref:configuration-guide:config-sets.adoc[configset] in the Solr distribution,
shows how the XSLT Update Request Handler is configured.
diff --git
a/solr/solr-ref-guide/modules/indexing-guide/pages/language-analysis.adoc
b/solr/solr-ref-guide/modules/indexing-guide/pages/language-analysis.adoc
index 1b990dabaa9..9609126aebe 100644
--- a/solr/solr-ref-guide/modules/indexing-guide/pages/language-analysis.adoc
+++ b/solr/solr-ref-guide/modules/indexing-guide/pages/language-analysis.adoc
@@ -268,8 +268,8 @@ Unicode Collation in Solr is fast, because all the work is
done at index time.
Rather than specifying an analyzer within `<fieldtype ...
class="solr.TextField">`, the `solr.CollationField` and
`solr.ICUCollationField` field type classes provide this functionality.
`solr.ICUCollationField`, which is backed by http://site.icu-project.org[the
ICU4J library], provides more flexible configuration, has more locales, is
significantly faster, and requires less memory and less index space, since its
keys are smaller than those produced by the JDK implementation that backs
`solr.CollationField`.
-To use `solr.ICUCollationField`, you must add additional .jars to Solr's
classpath (as described in the section
xref:configuration-guide:solr-plugins.adoc#installing-plugins[Installing
Plugins]).
-See `solr/modules/analysis-extras/README.md` for instructions on which jars
you need to add.
+To use `solr.ICUCollationField`, you must enable the
xref:#analysis-extras-module[analysis-extras Module].
+
`solr.ICUCollationField` and `solr.CollationField` fields can be created in
two ways:
@@ -692,7 +692,7 @@ On the other hand, it can reduce precision because
language-specific character d
== OpenNLP Integration
-The `lucene/analysis/opennlp` module provides OpenNLP integration via several
analysis components: a tokenizer, a part-of-speech tagging filter, a phrase
chunking filter, and a lemmatization filter.
+The Lucene module `lucene/analysis/opennlp` provides OpenNLP integration via
several analysis components: a tokenizer, a part-of-speech tagging filter, a
phrase chunking filter, and a lemmatization filter.
In addition to these analysis components, Solr also provides an update request
processor to extract named entities.
See also
xref:configuration-guide:update-request-processors.adoc#update-processor-factories-that-can-be-loaded-as-plugins[Update
Processor Factories That Can Be Loaded as Plugins].
@@ -700,8 +700,8 @@ NOTE: The <<OpenNLP Tokenizer>> must be used with all other
OpenNLP analysis com
First, the OpenNLP Tokenizer detects and marks the sentence boundaries
required by all the OpenNLP filters.
Second, since the pre-trained OpenNLP models used by these filters were
trained using the corresponding language-specific
sentence-detection/tokenization models, the same tokenization using the same
models must be used at runtime for optimal performance.
-To use the OpenNLP components, you must add additional .jars to Solr's
classpath (as described in the section
xref:configuration-guide:solr-plugins.adoc#installing-plugins[Installing
Plugins]).
-See `solr/modules/analysis-extras/README.md` for instructions on which jars
you need to add.
+To use the OpenNLP components, you must enable the
xref:#analysis-extras-module[analysis-extras Module].
+
=== OpenNLP Tokenizer
@@ -1327,8 +1327,7 @@ The stemmer language, `Catalan` in this case.
The default configuration of the xref:tokenizers.adoc#icu-tokenizer[ICU
Tokenizer] is suitable for Traditional Chinese text.
It follows the Word Break rules from the Unicode Text Segmentation algorithm
for non-Chinese text, and uses a dictionary to segment Chinese words.
-To use this tokenizer, you must add additional .jars to Solr's classpath (as
described in the section
xref:configuration-guide:solr-plugins.adoc#installing-plugins[Installing
Plugins]).
-See the `solr/modules/analysis-extras/README.md` for information on which jars
you need to add.
+To use this tokenizer, you must enable the
xref:#analysis-extras-module[analysis-extras Module].
The xref:tokenizers.adoc#standard-tokenizer[Standard Tokenizer] can also be
used to tokenize Traditional Chinese text.
Following the Word Break rules from the Unicode Text Segmentation algorithm,
it produces one token per Chinese character.
@@ -1441,13 +1440,11 @@ See the example under <<Traditional Chinese>>.
For Simplified Chinese, Solr provides support for Chinese sentence and word
segmentation with the <<HMM Chinese Tokenizer>>.
This component includes a large dictionary and segments Chinese text into
words with the Hidden Markov Model.
-To use this tokenizer, you must add additional .jars to Solr's classpath (as
described in the section
xref:configuration-guide:solr-plugins.adoc#installing-plugins[Installing
Plugins]).
-See the `solr/modules/analysis-extras/README.md` for information on which jars
you need to add.
+To use this tokenizer, you must enable the
xref:#analysis-extras-module[analysis-extras Module].
The default configuration of the xref:tokenizers.adoc#icu-tokenizer[ICU
Tokenizer] is also suitable for Simplified Chinese text.
It follows the Word Break rules from the Unicode Text Segmentation algorithm
for non-Chinese text, and uses a dictionary to segment Chinese words.
-To use this tokenizer, you must add additional .jars to Solr's classpath (as
described in the section
xref:configuration-guide:solr-plugins.adoc#installing-plugins[Installing
Plugins]).
-See the `solr/modules/analysis-extras/README.md` for information on which jars
you need to add.
+To use this tokenizer, you must enable the
xref:#analysis-extras-module[analysis-extras Module].
Also useful for Chinese analysis:
@@ -1504,8 +1501,7 @@ Also useful for Chinese analysis:
For Simplified Chinese, Solr provides support for Chinese sentence and word
segmentation with the `solr.HMMChineseTokenizerFactory` in the
`analysis-extras` module.
This component includes a large dictionary and segments Chinese text into
words with the Hidden Markov Model.
-To use this tokenizer, you must add additional .jars to Solr's classpath (as
described in the section
<xref:configuration-guide:solr-plugins.adoc#installing-plugins[Installing
Plugins]).
-See `solr/modules/analysis-extras/README.md` for instructions on which jars
you need to add.
+To use this tokenizer, you must enable the
xref:#analysis-extras-module[analysis-extras Module].
*Factory class:* `solr.HMMChineseTokenizerFactory`
@@ -2551,8 +2547,7 @@ This filter replaces term text with the Reading
Attribute, the Hangul transcript
=== Hebrew, Lao, Myanmar, Khmer
Lucene provides support, in addition to UAX#29 word break rules, for Hebrew's
use of the double and single quote characters, and for segmenting Lao, Myanmar,
and Khmer into syllables with the `solr.ICUTokenizerFactory` in the
`analysis-extras` module.
-To use this tokenizer, you must add additional .jars to Solr's classpath (as
described in the section
xref:configuration-guide:solr-plugins.adoc#installing-plugins[Installing
Plugins]).
-See `solr/modules/analysis-extras/README.md` for instructions on which jars
you need to add.
+To use this tokenizer, you must enable the
xref:#analysis-extras-module[analysis-extras Module].
See xref:tokenizers.adoc#icu-tokenizer[ICUTokenizer] for more information.
@@ -2826,8 +2821,7 @@ Solr includes support for normalizing Persian, and Lucene
includes an example st
Solr provides support for Polish stemming with the
`solr.StempelPolishStemFilterFactory`, and `solr.MorphologikFilterFactory` for
lemmatization, in the `analysis-extras` module.
The `solr.StempelPolishStemFilterFactory` component includes an algorithmic
stemmer with tables for Polish.
-To use either of these filters, you must add additional .jars to Solr's
classpath (as described in the section
xref:configuration-guide:solr-plugins.adoc#installing-plugins[Installing
Plugins]).
-See `solr/modules/analysis-extras/README.md` for instructions on which jars
you need to add.
+To use this tokenizer, you must enable the
xref:#analysis-extras-module[analysis-extras Module].
*Factory class:* `solr.StempelPolishStemFilterFactory` and
`solr.MorfologikFilterFactory`
@@ -3374,8 +3368,7 @@ Solr includes support for stemming Turkish with the
`solr.SnowballPorterFilterFa
=== Ukrainian
Solr provides support for Ukrainian lemmatization with the
`solr.MorphologikFilterFactory`, in the `analysis-extras` module.
-To use this filter, you must add additional .jars to Solr's classpath (as
described in the section
xref:configuration-guide:solr-plugins.adoc#installing-plugins[Installing
Plugins]).
-See `solr/modules/analysis-extras/README.md` for instructions on which jars
you need to add.
+To use this filter, you must enable the
xref:#analysis-extras-module[analysis-extras Module].
Lucene also includes an example Ukrainian stopword list, in the
`lucene-analyzers-morfologik` jar.
@@ -3429,3 +3422,10 @@ The Morfologik `dictionary` parameter value is a
constant specifying which dicti
The dictionary resource must be named `path/to/_language_.dict` and have an
associated `.info` metadata file.
See http://morfologik.blogspot.com/[the Morfologik project] for details.
If the dictionary attribute is not provided, the Polish dictionary is loaded
and used by default.
+
+
+== Analysis Extras Module
+
+Many of the language features listed above are supported by the
`analysis-extras` xref:configuration-guide:solr-modules.adoc[Solr Module] that
needs to be enabled before use.
+
+Additional details on the specific jar files required can be found in the
https://github.com/apache/solr/blob/main/solr/modules/analysis-extras/README.md[Module's
README].
diff --git
a/solr/solr-ref-guide/modules/indexing-guide/pages/language-detection.adoc
b/solr/solr-ref-guide/modules/indexing-guide/pages/language-detection.adoc
index f1e8819b143..bf777c0345a 100644
--- a/solr/solr-ref-guide/modules/indexing-guide/pages/language-detection.adoc
+++ b/solr/solr-ref-guide/modules/indexing-guide/pages/language-detection.adoc
@@ -31,6 +31,10 @@ For specific information on each of these language
identification implementation
For more information about language analysis in Solr, see
xref:language-analysis.adoc[].
+== Module
+
+This is provided via the `langid`
xref:configuration-guide:solr-modules.adoc[Solr Module] that needs to be
enabled before use.
+
== Configuring Language Detection
You can configure the `langid` UpdateRequestProcessor in `solrconfig.xml`.
diff --git a/solr/solr-ref-guide/modules/query-guide/pages/analytics.adoc
b/solr/solr-ref-guide/modules/query-guide/pages/analytics.adoc
index 131c031f185..c2f0fedf646 100644
--- a/solr/solr-ref-guide/modules/query-guide/pages/analytics.adoc
+++ b/solr/solr-ref-guide/modules/query-guide/pages/analytics.adoc
@@ -23,19 +23,17 @@ The Analytics Component allows users to calculate complex
statistical aggregatio
The component enables interacting with data in a variety of ways, both through
a diverse set of analytics functions as well as powerful faceting functionality.
The standard facets are supported within the analytics component with
additions that leverage its analytical capabilities.
-== Analytics Configuration
+== Module
+
+This is provided via the `analytics`
xref:configuration-guide:solr-modules.adoc[Solr Module] that needs to be
enabled before use.
-The Analytics component is in a module, therefore it will need to be enabled
in the `solrconfig.xml` for each collection where you would like to use it.
+== Analytics Configuration
Since the Analytics framework is a _search component_, it must be declared as
such and added to the search handler.
For distributed analytics requests over cloud collections, the component uses
the `AnalyticsHandler` strictly for inter-shard communication.
The Analytics Handler should not be used by users to submit analytics requests.
-To use the Analytics Component, the first step is to install this module's
plugins into Solr -- see the
xref:configuration-guide:solr-plugins.adoc#installing-plugins[Installing
Plugins] section on how to do this.
-Note: Method with `<lib/>` directive doesn't work.
-Instead, copy
`${solr.install.dir}/modules/analytics/lib/solr-analytics-{solr-full-version}.jar`
to `${solr.install.dir}/server/solr-webapp/webapp/WEB-INF/lib/`, as described
in the xref:configuration-guide:libs.adoc[lib directories documentation].
-
Next you need to register the request handler and search component.
Add the following lines to `solrconfig.xml`, near the defintions for other
request handlers:
diff --git
a/solr/solr-ref-guide/modules/query-guide/pages/dense-vector-search.adoc
b/solr/solr-ref-guide/modules/query-guide/pages/dense-vector-search.adoc
index c50f4abf1d5..a0e44268eab 100644
--- a/solr/solr-ref-guide/modules/query-guide/pages/dense-vector-search.adoc
+++ b/solr/solr-ref-guide/modules/query-guide/pages/dense-vector-search.adoc
@@ -16,7 +16,7 @@
// specific language governing permissions and limitations
// under the License.
-The Apache Solr *Dense Vector Search* module adds support for indexing and
searching dense numerical vectors.
+Solr's *Dense Vector Search* adds support for indexing and searching dense
numerical vectors.
https://en.wikipedia.org/wiki/Deep_learning[Deep learning] can be used to
produce a vector representation of both the query and the documents in a corpus
of information.
@@ -57,7 +57,7 @@ The dense vector field gives the possibility of indexing and
searching dense vec
For example:
-`[1.0, 2.5, 3.7, 4.1]`
+`[1.0, 2.5, 3.7, 4.1]`
Here's how `DenseVectorField` should be configured in the schema:
@@ -96,7 +96,7 @@ this similarity is intended as an optimized way to perform
cosine similarity. In
* `cosine`: https://en.wikipedia.org/wiki/Cosine_similarity[Cosine similarity]
-[NOTE]
+[NOTE]
the preferred way to perform cosine similarity is to normalize all vectors to
unit length, and instead use DOT_PRODUCT. You should only use this function if
you need to preserve the original vectors and cannot normalize them in advance.
To use the following advanced parameters that customise the codec format
diff --git a/solr/solr-ref-guide/modules/query-guide/pages/json-facet-api.adoc
b/solr/solr-ref-guide/modules/query-guide/pages/json-facet-api.adoc
index 7ab160fc871..a6e81b9eb49 100644
--- a/solr/solr-ref-guide/modules/query-guide/pages/json-facet-api.adoc
+++ b/solr/solr-ref-guide/modules/query-guide/pages/json-facet-api.adoc
@@ -17,9 +17,9 @@
// specific language governing permissions and limitations
// under the License.
-== Facet & Analytics Module
+== JSON Faceting & Analytics
-The JSON Faceting module exposes similar functionality to Solr's traditional
faceting module but with a stronger emphasis on usability.
+JSON Faceting exposes similar functionality to Solr's traditional faceting but
with a stronger emphasis on usability.
It has several benefits over traditional faceting:
* easier programmatic construction of complex or nested facets
diff --git
a/solr/solr-ref-guide/modules/query-guide/pages/learning-to-rank.adoc
b/solr/solr-ref-guide/modules/query-guide/pages/learning-to-rank.adoc
index 874d4e1e56d..8f4b6c31716 100644
--- a/solr/solr-ref-guide/modules/query-guide/pages/learning-to-rank.adoc
+++ b/solr/solr-ref-guide/modules/query-guide/pages/learning-to-rank.adoc
@@ -111,11 +111,15 @@ In the form of JSON files your trained model or models
(e.g., different models f
|(custom) |(custom class extending
{solr-javadocs}/modules/ltr/org/apache/solr/ltr/model/LTRScoringModel.html[LTRScoringModel])
|(not applicable)
|===
+== Module
+
+This is provided via the `ltr` xref:configuration-guide:solr-modules.adoc[Solr
Module] that needs to be enabled before use.
+
== Quick Start with LTR
-The `"techproducts"` example included with Solr is pre-configured with the
plugins required for learning-to-rank, but they are disabled by default.
+The `"techproducts"` example included with Solr is pre-configured to load the
plugins required for learning-to-rank from the `ltr`
xref:configuration-guide:solr-modules.adoc[Solr Module], but they are disabled
by default.
-To enable the plugins, please specify the `solr.ltr.enabled` JVM System
Property when running the example:
+To enable the plugins, please specify the `solr.ltr.enabled` JVM System
Property when running the `techproducts` example:
[source,bash]
----
diff --git
a/solr/solr-ref-guide/modules/query-guide/pages/result-clustering.adoc
b/solr/solr-ref-guide/modules/query-guide/pages/result-clustering.adoc
index 75b6551cb81..1b4aaf88edd 100644
--- a/solr/solr-ref-guide/modules/query-guide/pages/result-clustering.adoc
+++ b/solr/solr-ref-guide/modules/query-guide/pages/result-clustering.adoc
@@ -36,6 +36,10 @@ The query issued to the system was _Apache Solr_.
It seems clear that faceting could not yield a similar set of groups, although
the goals of both techniques are similar -- to let the user explore the set of
search results and either rephrase the query or narrow the focus to a subset of
current documents.
Clustering is also similar to xref:result-grouping.adoc[] in that it can help
to look deeper into search results, beyond the top few hits.
+== Module
+
+This is provided via the `clustering`
xref:configuration-guide:solr-modules.adoc[Solr Module] that needs to be
enabled before use.
+
== Configuration Quick Starter
The clustering extension works as a search component.
@@ -211,17 +215,6 @@ Sometimes cluster labels may not make much sense (this
depends on many factors -
Also, some documents may be left out and not be clustered at all; these will
be assigned to the synthetic _Other Topics_ group, marked with the
`other-topics` property set to `true` (see the XML dump above for an example).
The score of the other topics group is zero.
-== Installation
-
-The clustering module extension requires all JARs under
`modules/clustering/lib`.
-
-You can include the required modules JARs in `solrconfig.xml` as shown below
(by default paths are relative to the Solr core so they may need adjustments to
your configuration, or an explicit specification of the `$solr.install.dir`):
-
-[source,xml]
-----
-<lib dir="${solr.install.dir:../../..}/modules/clustering/lib/"
regex=".*\.jar" />
-----
-
== Configuration
=== Component Configuration
diff --git a/solr/solr-ref-guide/modules/query-guide/pages/sql-query.adoc
b/solr/solr-ref-guide/modules/query-guide/pages/sql-query.adoc
index d5fe9db75e8..c956c589abb 100644
--- a/solr/solr-ref-guide/modules/query-guide/pages/sql-query.adoc
+++ b/solr/solr-ref-guide/modules/query-guide/pages/sql-query.adoc
@@ -21,11 +21,14 @@
// specific language governing permissions and limitations
// under the License.
-The Solr SQL module brings the power of SQL querying to Solr. The SQL module
needs to be xref:configuration-guide:solr-modules.adoc[installed] to use.
-
-The SQL interface seamlessly combines SQL with Solr's full-text search
capabilities.
+The Solr SQL Module brings the power of SQL querying to Solr by seamlessly
combining
+SQL with Solr's full-text search capabilities.
Both MapReduce style and JSON Facet API aggregations are supported, which
means that SQL querying can be used to support both *high query volume* and
*high cardinality* use cases.
+== Module
+
+This is provided via the `sql` xref:configuration-guide:solr-modules.adoc[Solr
Module] that needs to be enabled before use.
+
== SQL Architecture
The SQL interface allows sending a SQL query to Solr and getting documents
streamed back in response.
diff --git
a/solr/solr-ref-guide/modules/upgrade-notes/pages/major-changes-in-solr-7.adoc
b/solr/solr-ref-guide/modules/upgrade-notes/pages/major-changes-in-solr-7.adoc
index ca942e1e388..cd76c37bfb9 100644
---
a/solr/solr-ref-guide/modules/upgrade-notes/pages/major-changes-in-solr-7.adoc
+++
b/solr/solr-ref-guide/modules/upgrade-notes/pages/major-changes-in-solr-7.adoc
@@ -230,7 +230,7 @@ Mentions of deprecations are likely superseded by removal
in Solr 7, as noted in
Note again that this is not a complete list of all changes that may impact
your installation, so a thorough review of CHANGES.txt is highly recommended if
upgrading from any version earlier than 6.6.
-* The Solr modules `map-reduce`, `morphlines-core` and `morphlines-cell` have
been removed.
+* The Solr contribs `map-reduce`, `morphlines-core` and `morphlines-cell` have
been removed.
* JSON Facet API now uses hyper-log-log for numBuckets cardinality calculation
and calculates cardinality before filtering buckets by any `mincount` greater
than 1.
* If you use historical dates, specifically on or before the year 1582, you
should reindex for better date handling.
* If you use the JSON Facet API (json.facet) with `method=stream`, you must
now set `sort='index asc'` to get the streaming behavior; otherwise it won't
stream.
diff --git
a/solr/solr-ref-guide/modules/upgrade-notes/pages/major-changes-in-solr-9.adoc
b/solr/solr-ref-guide/modules/upgrade-notes/pages/major-changes-in-solr-9.adoc
index 976e6602703..d4802d3763a 100644
---
a/solr/solr-ref-guide/modules/upgrade-notes/pages/major-changes-in-solr-9.adoc
+++
b/solr/solr-ref-guide/modules/upgrade-notes/pages/major-changes-in-solr-9.adoc
@@ -107,8 +107,9 @@ This may require some more disk space for logs than was the
case in version 8.x.
changed package name to `org.apache.solr.security.jwt`, but can still be
loaded as shortform `class="solr.JWTAuthPlugin"`.
* Dependency updates - A lot of dependency updates removes several security
issues from dependencies, and thus make Solr more secure.
* The allow-list defining allowed URLs for the `shards` parameter is not in
the `shardHandler` configuration anymore. It is defined by the `allowUrls`
top-level property of the `solr.xml` file. For more information, see
xref:configuration-guide:configuring-solr-xml.adoc#allow-urls[Format of
solr.allowUrls] documentation.
-* To improve security, `StatelessScriptUpdateProcessorFactory` has been
renamed as `ScriptUpdateProcessorFactory` and moved to `modules/scripting`
package instead of shipping as part of Solr core.
-* To improve security, `XSLTResponseWriter` has been moved to
`modules/scripting` package instead of shipping as part of Solr core.
+* To improve security, `StatelessScriptUpdateProcessorFactory` has been
renamed as `ScriptUpdateProcessorFactory` and moved to the
xref:configuration-guide:script-update-processor.adoc#module[`scripting`
Module] instead of shipping as part of Solr core. This module needs to be
enabled explicitly.
+* To improve security, `XSLTResponseWriter` has been moved to the
xref:configuration-guide:script-update-processor.adoc#module[`scripting`
Module] instead of shipping as part of Solr core. This module needs to be
enabled explicitly.
+
=== Stability and Scalability
* xref:deployment-guide:rate-limiters.adoc[Rate limiting] provides a way to
throttle update and search requests based on usage metrics.
@@ -133,7 +134,7 @@ There are no longer ".distrib." named metrics; all metrics
are assumed to be suc
Switch back to synchronous logging if this is unacceptable, see comments in
the log4j2 configuration files (log4j2.xml by default).
* Log4J configuration & Solr MDC values -
link:http://www.slf4j.org/apidocs/org/slf4j/MDC.html[MDC] values that Solr sets
for use by Logging calls (such as the collection name, shard name, replica
name, etc...) have been modified to now be "bare" values, without the special
single character prefixes that were included in past version. The default
`log4j2.xml` configuration file for Solr has been modified to prepend these
same prefixes to MDC values when included in Log messages as part o [...]
* xref:deployment-guide:configuring-logging.adoc#request-logging[Jetty Request
log] is now enabled by default, i.e. logging every request.
-* The prometheus-exporter is no longer packaged as a Solr module. It can be
found under `solr/prometheus-exporter/`.
+* The prometheus-exporter is no longer packaged as a Solr Module. It can be
found under `solr/prometheus-exporter/`.
* Solr modules (formerly known as contribs) can now easily be enabled by an
environment variable (e.g. in `solr.in.sh` or `solr.in.cmd`) or as a system
property (e.g. in `SOLR_OPTS`). Example: `SOLR_MODULES=extraction,ltr`.
=== Deprecations and Removals
@@ -158,7 +159,7 @@ Other relevant placement strategies should be used instead,
such as autoscaling
* Features lifted out as separate modules are: HDFS, Hadoop-Auth, SQL,
Scripting, and JWT-Auth.
* The "dist" folder in the release has been removed. Please update your
`<lib>` entries in your `solrconfig.xml` to use the new location.
** The `solr-core` and `solr-solrj` jars can be found under
`server/solr-webapp/webapp/WEB-INF/lib/`.
-** The Solr module jars and their dependencies can be found in
`modules/<module-name>/lib`, packaged individually for each module.
+** The Solr Module jars and their dependencies can be found in
`modules/<module-name>/lib`, packaged individually for each module.
** The `solrj-deps` (SolrJ Dependencies) are no longer separated out from the
other Server jars.
** Please refer to the SolrJ Maven artifact to see the exact dependencies you
need to include from `server/solr-webapp/webapp/WEB-INF/lib/` and
`server/lib/ext/` if you are loading in SolrJ manually.
If you plan on using SolrJ as a JDBC driver, please refer to the
xref:query-guide:sql-query.adoc#generic-clients[JDBC documentation]
diff --git
a/solr/solrj/src/java/org/apache/solr/client/solrj/io/stream/JDBCStream.java
b/solr/solrj/src/java/org/apache/solr/client/solrj/io/stream/JDBCStream.java
index 9f78e945f43..8bba1047938 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/io/stream/JDBCStream.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/io/stream/JDBCStream.java
@@ -284,7 +284,7 @@ public class JDBCStream extends TupleStream implements
Expressible {
// Unfortunately it is impossible to use a custom ClassLoader with
DriverManager, so we would
// need to remove our use of this class in order to support JDBC drivers
loaded in via solr's
// additional library methods. This comment is relevant for JDBC drivers
loaded in via custom
- // plugins and even Solr modules.
+ // plugins and even Solr Modules.
try {
if (null != driverClassName) {
Class.forName(driverClassName);