You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by ct...@apache.org on 2020/07/15 16:52:39 UTC

svn commit: r1063067 [11/28] - in /websites/production/lucene/content/solr/guide/8_6: ./ meta-docs/

Modified: websites/production/lucene/content/solr/guide/8_6/kerberos-authentication-plugin.html
==============================================================================
--- websites/production/lucene/content/solr/guide/8_6/kerberos-authentication-plugin.html (original)
+++ websites/production/lucene/content/solr/guide/8_6/kerberos-authentication-plugin.html Wed Jul 15 16:52:36 2020
@@ -8,7 +8,7 @@
 <meta name="description" content="">
 <meta name="keywords" content=" ">
 
-<title>Kerberos Authentication Plugin | Apache Solr Reference Guide 8.6-DRAFT</title>
+<title>Kerberos Authentication Plugin | Apache Solr Reference Guide 8.6</title>
 
 <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous">
 <link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
@@ -71,7 +71,7 @@
 
     </script>
 </head>
-<body class="DRAFT" id="kerberos-authentication-plugin">
+<body class="" id="kerberos-authentication-plugin">
 <div class="container-fluid">
   <div class="row">
   <nav id="sidebar" class="col-2 d-none d-md-block">
@@ -79,11 +79,6 @@
 <div class="sidebar-header">
   <div class="sidebarTitle text-center">Apache Solr Reference Guide</div>
   
-  <p class="draft-notice">
-    This is an unofficial DRAFT of the Guide for 8.6.
-    <a href="https://lucene.apache.org/solr/guide/">Official releases are available from the Solr website</a>.
-  </p>
-  
 
   <!--comment out this block if you want to hide search-->
     <!--start search-->
@@ -1701,7 +1696,7 @@
 <section class="sect2"><h3 id="security-json">security.json</h3><p>The Solr authentication model uses a file called <code>security.json</code>. A description of this file and how it is created and maintained is covered in the section <a href="authentication-and-authorization-plugins.html#authentication-and-authorization-plugins">Authentication and Authorization Plugins</a>. If this file is created after an initial startup of Solr, a restart of each node of the system is required.</p></section>
 <section class="sect2"><h3 id="service-principals-and-keytab-files">Service Principals and Keytab Files</h3><p>Each Solr node must have a service principal registered with the Key Distribution Center (KDC). The Kerberos plugin uses SPNego to negotiate authentication.</p>
 <p>Using <code>HTTP/host1@YOUR-DOMAIN.ORG</code>, as an example of a service principal:</p>
-<div class="ulist"><ul><li><code>HTTP</code> indicates the type of requests which this service principal will be used to authenticate. The <code>HTTP/</code> in the service principal is a must for SPNego to work with requests to Solr over HTTP.</li><li><code>host1</code> is the host name of the machine hosting the Solr node.</li><li><code>YOUR-DOMAIN.ORG</code> is the organization wide Kerberos realm.</li></ul></div>
+<div class="ulist"><ul><li><p><code>HTTP</code> indicates the type of requests which this service principal will be used to authenticate. The <code>HTTP/</code> in the service principal is a must for SPNego to work with requests to Solr over HTTP.</p></li><li><p><code>host1</code> is the host name of the machine hosting the Solr node.</p></li><li><p><code>YOUR-DOMAIN.ORG</code> is the organization wide Kerberos realm.</p></li></ul></div>
 <p>Multiple Solr nodes on the same host may have the same service principal, since the host name is common to them all.</p>
 <p>Along with the service principal, each Solr node needs a keytab file which should contain the credentials of the service principal used. A keytab file contains encrypted credentials to support passwordless logins while obtaining Kerberos tickets from the KDC. For each Solr node, the keytab file should be kept in a secure location and not shared with users of the cluster.</p>
 <p>Since a Solr cluster requires internode communication, each node must also be able to make Kerberos enabled requests to other nodes. By default, Solr uses the same service principal and keytab as a 'client principal' for internode communication. You may configure a distinct client principal explicitly, but doing so is not recommended and is not covered in the examples below.</p></section>
@@ -1724,7 +1719,7 @@
 </table>
 </div>
 <p>Configuration of the Kerberos plugin has several parts:</p>
-<div class="ulist"><ul><li>Create service principals and keytab files</li><li>ZooKeeper configuration</li><li>Create or update <code>/security.json</code></li><li>Define <code>jaas-client.conf</code></li><li>Solr startup parameters</li></ul></div>
+<div class="ulist"><ul><li><p>Create service principals and keytab files</p></li><li><p>ZooKeeper configuration</p></li><li><p>Create or update <code>/security.json</code></p></li><li><p>Define <code>jaas-client.conf</code></p></li><li><p>Solr startup parameters</p></li></ul></div>
 <p>We&#8217;ll walk through each of these steps below.</p>
 <div class="admonitionblock important">
 <table>
@@ -1810,7 +1805,7 @@ kadmin.local:  quit</code></pre></code><
 };</code></pre></code></pre></div>
 <p>The first line of this file defines the section name, which will be used with the <code>solr.kerberos.jaas.appname</code> parameter, defined below.</p>
 <p>The main properties we are concerned with are the <code>keyTab</code> and <code>principal</code> properties, but there are others which may be required for your environment. The <a href="https://docs.oracle.com/javase/8/docs/jre/api/security/jaas/spec/com/sun/security/auth/module/Krb5LoginModule.html">javadocs for the Krb5LoginModule</a> (the class that&#8217;s being used and is called in the second line above) provide a good outline of the available properties, but for reference the ones in use in the above example are explained here:</p>
-<div class="ulist"><ul><li><code>useKeyTab</code>: this boolean property defines if we should use a keytab file (true, in this case).</li><li><code>keyTab</code>: the location and name of the keytab file for the principal this section of the JAAS configuration file is for. The path should be enclosed in double-quotes.</li><li><code>storeKey</code>: this boolean property allows the key to be stored in the private credentials of the user.</li><li><code>useTicketCache</code>: this boolean property allows the ticket to be obtained from the ticket cache.</li><li><code>debug</code>: this boolean property will output debug messages for help in troubleshooting.</li><li><code>principal</code>: the name of the service principal to be used.</li></ul></div></section>
+<div class="ulist"><ul><li><p><code>useKeyTab</code>: this boolean property defines if we should use a keytab file (true, in this case).</p></li><li><p><code>keyTab</code>: the location and name of the keytab file for the principal this section of the JAAS configuration file is for. The path should be enclosed in double-quotes.</p></li><li><p><code>storeKey</code>: this boolean property allows the key to be stored in the private credentials of the user.</p></li><li><p><code>useTicketCache</code>: this boolean property allows the ticket to be obtained from the ticket cache.</p></li><li><p><code>debug</code>: this boolean property will output debug messages for help in troubleshooting.</p></li><li><p><code>principal</code>: the name of the service principal to be used.</p></li></ul></div></section>
 <section class="sect2"><h3 id="solr-startup-parameters">Solr Startup Parameters</h3><p>While starting up Solr, the following host-specific parameters need to be passed. These parameters can be passed at the command line with the <code>bin/solr</code> start command (see <a href="solr-control-script-reference.html#solr-control-script-reference">Solr Control Script Reference</a> for details on how to pass system parameters) or defined in <code>bin/solr.in.sh</code> or <code>bin/solr.in.cmd</code> as appropriate for your operating system.</p>
 <div class="dlist"><dl><dt><code>solr.kerberos.name.rules</code></dt><dd>Used to map Kerberos principals to short names. Default value is <code>DEFAULT</code>. Example of a name rule: <code>RULE:[1:$1@$0](.*EXAMPLE.COM)s/@.*//</code>.</dd><dt><code>solr.kerberos.cookie.domain</code></dt><dd>Used to issue cookies and should have the hostname of the Solr node. This parameter is required.</dd><dt><code>solr.kerberos.cookie.portaware</code></dt><dd>When set to <code>true</code>, cookies are differentiated based on host and port, as opposed to standard cookies which are not port aware. This should be set if more than one Solr node is hosted on the same host. The default is <code>false</code>.</dd><dt><code>solr.kerberos.principal</code></dt><dd>The service principal. This parameter is required.</dd><dt><code>solr.kerberos.keytab</code></dt><dd>Keytab file path containing service principal credentials. This parameter is required.</dd><dt><code>solr.kerberos.jaas.appname</code></dt><dd>The
  app name (section name) within the JAAS configuration file which is required for internode communication. Default is <code>Client</code>, which is used for ZooKeeper authentication as well. If different users are used for ZooKeeper and Solr, they will need to have separate sections in the JAAS configuration file.</dd><dt><code>java.security.auth.login.config</code></dt><dd>Path to the JAAS configuration file for configuring a Solr client for internode communication. This parameter is required.</dd></dl></div>
 <p>Here is an example that could be added to <code>bin/solr.in.sh</code>. Make sure to change this example to use the right hostname and the keytab file path.</p>
@@ -1834,7 +1829,7 @@ kadmin.local:  quit</code></pre></code><
 </div></section>
 <section class="sect2"><h3 id="using-delegation-tokens">Using Delegation Tokens</h3><p>The Kerberos plugin can be configured to use delegation tokens, which allow an application to reuse the authentication of an end-user or another application.</p>
 <p>There are a few use cases for Solr where this might be helpful:</p>
-<div class="ulist"><ul><li>Using distributed clients (such as MapReduce) where each client may not have access to the user&#8217;s credentials.</li><li>When load on the Kerberos server is high. Delegation tokens can reduce the load because they do not access the server after the first request.</li><li>If requests or permissions need to be delegated to another user.</li></ul></div>
+<div class="ulist"><ul><li><p>Using distributed clients (such as MapReduce) where each client may not have access to the user&#8217;s credentials.</p></li><li><p>When load on the Kerberos server is high. Delegation tokens can reduce the load because they do not access the server after the first request.</p></li><li><p>If requests or permissions need to be delegated to another user.</p></li></ul></div>
 <p>To enable delegation tokens, several parameters must be defined. These parameters can be passed at the command line with the <code>bin/solr</code> start command (see <a href="solr-control-script-reference.html#solr-control-script-reference">Solr Control Script Reference</a> for details on how to pass system parameters) or defined in <code>bin/solr.in.sh</code> or <code>bin/solr.in.cmd</code> as appropriate for your operating system.</p>
 <div class="dlist"><dl><dt><code>solr.kerberos.delegation.token.enabled</code></dt><dd>This is <code>false</code> by default, set to <code>true</code> to enable delegation tokens. This parameter is required if you want to enable tokens.</dd><dt><code>solr.kerberos.delegation.token.kind</code></dt><dd>The type of delegation tokens. By default this is <code>solr-dt</code>. Likely this does not need to change. No other option is available at this time.</dd><dt><code>solr.kerberos.delegation.token.validity</code></dt><dd>Time, in seconds, for which delegation tokens are valid. The default is 36000 seconds.</dd><dt><code>solr.kerberos.delegation.token.signer.secret.provider</code></dt><dd>Where delegation token information is stored internally. The default is <code>zookeeper</code> which must be the location for delegation tokens to work across Solr servers (when running in SolrCloud mode). No other option is available at this time.</dd><dt><code>solr.kerberos.delegation.token.signer.sec
 ret.provider.zookeper.path</code></dt><dd>The ZooKeeper path where the secret provider information is stored. This is in the form of the path + /security/token. The path can include the chroot or the chroot can be omitted if you are not using it. This example includes the chroot: <code>server1:9983,server2:9983,server3:9983/solr/security/token</code>.</dd><dt><code>solr.kerberos.delegation.token.secret.manager.znode.working.path</code></dt><dd>The ZooKeeper path where token information is stored. This is in the form of the path + /security/zkdtsm. The path can include the chroot or the chroot can be omitted if you are not using it. This example includes the chroot: <code>server1:9983,server2:9983,server3:9983/solr/security/zkdtsm</code>.</dd></dl></div></section>
 <section class="sect2"><h3 id="start-solr">Start Solr</h3><p>Once the configuration is complete, you can start Solr with the <code>bin/solr</code> script, as in the example below, which is for users in SolrCloud mode only. This example assumes you modified <code>bin/solr.in.sh</code> or <code>bin/solr.in.cmd</code>, with the proper values, but if you did not, you would pass the system parameters along with the start command. Note you also need to customize the <code>-z</code> property as appropriate for the location of your ZooKeeper nodes.</p>
@@ -1867,7 +1862,7 @@ If you have defined <code>ZK_HOST</code>
   principal="solrclient@EXAMPLE.COM";
 };</code></pre></code></pre></div>
 <section class="sect2"><h3 id="delegation-tokens-with-solrj">Delegation Tokens with SolrJ</h3><p>Delegation tokens are also supported with SolrJ, in the following ways:</p>
-<div class="ulist"><ul><li><code>DelegationTokenRequest</code> and <code>DelegationTokenResponse</code> can be used to get, cancel, and renew delegation tokens.</li><li><code>HttpSolrClient.Builder</code> includes a <code>withKerberosDelegationToken</code> function for creating an HttpSolrClient that uses a delegation token to authenticate.</li></ul></div>
+<div class="ulist"><ul><li><p><code>DelegationTokenRequest</code> and <code>DelegationTokenResponse</code> can be used to get, cancel, and renew delegation tokens.</p></li><li><p><code>HttpSolrClient.Builder</code> includes a <code>withKerberosDelegationToken</code> function for creating an HttpSolrClient that uses a delegation token to authenticate.</p></li></ul></div>
 <p>Sample code to get a delegation token:</p>
 <div class="listingblock"><pre class="rouge highlight"><code class="language-java" data-lang="java"><pre class="highlight"><code><span style="color: #000000;font-weight: bold">private</span> <span style="background-color: #f8f8f8">String</span> <span style="color: #990000;font-weight: bold">getDelegationToken</span><span style="color: #000000;font-weight: bold">(</span><span style="color: #000000;font-weight: bold">final</span> <span style="background-color: #f8f8f8">String</span> <span style="background-color: #f8f8f8">renewer</span><span style="color: #000000;font-weight: bold">,</span> <span style="color: #000000;font-weight: bold">final</span> <span style="background-color: #f8f8f8">String</span> <span style="background-color: #f8f8f8">user</span><span style="color: #000000;font-weight: bold">,</span> <span style="background-color: #f8f8f8">HttpSolrClient</span> <span style="background-color: #f8f8f8">solrClient</span><span style="color: #000000;font-weight: bold">)</span> <span
  style="color: #000000;font-weight: bold">throws</span> <span style="background-color: #f8f8f8">Exception</span> <span style="color: #000000;font-weight: bold">{</span>
     <span style="background-color: #f8f8f8">DelegationTokenRequest</span><span style="color: #000000;font-weight: bold">.</span><span style="color: #008080">Get</span> <span style="background-color: #f8f8f8">get</span> <span style="color: #000000;font-weight: bold">=</span> <span style="color: #000000;font-weight: bold">new</span> <span style="background-color: #f8f8f8">DelegationTokenRequest</span><span style="color: #000000;font-weight: bold">.</span><span style="color: #008080">Get</span><span style="color: #000000;font-weight: bold">(</span><span style="background-color: #f8f8f8">renewer</span><span style="color: #000000;font-weight: bold">)</span> <span style="color: #000000;font-weight: bold">{</span>
@@ -1934,7 +1929,7 @@ If you have defined <code>ZK_HOST</code>
             <div class="row">
                 <div class="col-lg-12 footer">
                &copy;2020 Apache Software Foundation. All rights reserved. <br />
- Site Version: 8.6-DRAFT <br />Site last generated: 2020-07-08 <br />
+ Site Version: 8.6 <br />Site last generated: 2020-07-15 <br />
 <p><img src="images/solr-sunOnly-small.png" alt="Apache Solr"/></p>
                 </div>
             </div>

Modified: websites/production/lucene/content/solr/guide/8_6/language-analysis.html
==============================================================================
--- websites/production/lucene/content/solr/guide/8_6/language-analysis.html (original)
+++ websites/production/lucene/content/solr/guide/8_6/language-analysis.html Wed Jul 15 16:52:36 2020
@@ -8,7 +8,7 @@
 <meta name="description" content="">
 <meta name="keywords" content=" ">
 
-<title>Language Analysis | Apache Solr Reference Guide 8.6-DRAFT</title>
+<title>Language Analysis | Apache Solr Reference Guide 8.6</title>
 
 <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous">
 <link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
@@ -71,7 +71,7 @@
 
     </script>
 </head>
-<body class="DRAFT" id="language-analysis">
+<body class="" id="language-analysis">
 <div class="container-fluid">
   <div class="row">
   <nav id="sidebar" class="col-2 d-none d-md-block">
@@ -79,11 +79,6 @@
 <div class="sidebar-header">
   <div class="sidebarTitle text-center">Apache Solr Reference Guide</div>
   
-  <p class="draft-notice">
-    This is an unofficial DRAFT of the Guide for 8.6.
-    <a href="https://lucene.apache.org/solr/guide/">Official releases are available from the Solr website</a>.
-  </p>
-  
 
   <!--comment out this block if you want to hide search-->
     <!--start search-->
@@ -1797,7 +1792,7 @@ dogs	cat</code></pre></code></pre></div>
 <p>Rather than specifying an analyzer within <code>&lt;fieldtype &#8230;&#8203; class="solr.TextField"&gt;</code>, the <code>solr.CollationField</code> and <code>solr.ICUCollationField</code> field type classes provide this functionality. <code>solr.ICUCollationField</code>, which is backed by <a href="http://site.icu-project.org">the ICU4J library</a>, 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 <code>solr.CollationField</code>.</p>
 <p>To use <code>solr.ICUCollationField</code>, you must add additional .jars to Solr&#8217;s classpath (as described in the section <a href="solr-plugins.html#installing-plugins">Solr Plugins</a>).  See <code>solr/contrib/analysis-extras/README.txt</code> for instructions on which jars you need to add.</p>
 <p><code>solr.ICUCollationField</code> and <code>solr.CollationField</code> fields can be created in two ways:</p>
-<div class="ulist"><ul><li>Based upon a system collator associated with a Locale.</li><li>Based upon a tailored <code>RuleBasedCollator</code> ruleset.</li></ul></div>
+<div class="ulist"><ul><li><p>Based upon a system collator associated with a Locale.</p></li><li><p>Based upon a tailored <code>RuleBasedCollator</code> ruleset.</p></li></ul></div>
 <p><strong>Arguments for <code>solr.ICUCollationField</code>, specified as attributes within the <code>&lt;fieldtype&gt;</code> element:</strong></p>
 <p>Using a System collator:</p>
 <div class="dlist"><dl><dt><code>locale</code></dt><dd>(required) <a href="http://www.rfc-editor.org/rfc/rfc3066.txt">RFC 3066</a> locale ID. See <a href="http://demo.icu-project.org/icu-bin/locexp">the ICU locale explorer</a> for a list of supported locales.</dd><dt><code>strength</code></dt><dd>Valid values are <code>primary</code>, <code>secondary</code>, <code>tertiary</code>, <code>quaternary</code>, or <code>identical</code>. See <a href="http://userguide.icu-project.org/collation/concepts#TOC-Comparison-Levels">Comparison Levels in ICU Collation Concepts</a> for more information.</dd><dt><code>decomposition</code></dt><dd>Valid values are <code>no</code> or <code>canonical</code>. See <a href="http://userguide.icu-project.org/collation/concepts#TOC-Normalization">Normalization in ICU Collation Concepts</a> for more information.</dd></dl></div>
@@ -2051,7 +2046,7 @@ Lucene currently does not index token ty
   <span style="color: #000080">&lt;filter</span> <span style="color: #008080">class=</span><span style="color: #d14">"solr.TypeTokenFilterFactory"</span> <span style="color: #008080">types=</span><span style="color: #d14">"stop.pos.txt"</span><span style="color: #000080">/&gt;</span>
 <span style="color: #000080">&lt;/analyzer&gt;</span></code></pre></code></pre></div></section></section>
 <section class="sect1"><h2 id="language-specific-factories">Language-Specific Factories</h2><p>These factories are each designed to work with specific languages. The languages covered here are:</p>
-<div class="ulist"><ul><li><a href="#arabic">Arabic</a></li><li><a href="#bengali">Bengali</a></li><li><a href="#brazilian-portuguese">Brazilian Portuguese</a></li><li><a href="#bulgarian">Bulgarian</a></li><li><a href="#catalan">Catalan</a></li><li><a href="#traditional-chinese">Traditional Chinese</a></li><li><a href="#simplified-chinese">Simplified Chinese</a></li><li><a href="#czech">Czech</a></li><li><a href="#danish">Danish</a></li><li><a href="#dutch">Dutch</a></li><li><a href="#estonian">Estonian</a></li><li><a href="#finnish">Finnish</a></li><li><a href="#french">French</a></li><li><a href="#galician">Galician</a></li><li><a href="#german">German</a></li><li><a href="#greek">Greek</a></li><li><a href="#hebrew-lao-myanmar-khmer">Hebrew, Lao, Myanmar, Khmer</a></li><li><a href="#hindi">Hindi</a></li><li><a href="#indonesian">Indonesian</a></li><li><a href="#italian">Italian</a></li><li><a href="#irish">Irish</a></li><li><a href="#japanese">Japanese</a></li><li><a href="#latvi
 an">Latvian</a></li><li><a href="#norwegian">Norwegian</a></li><li><a href="#persian">Persian</a></li><li><a href="#polish">Polish</a></li><li><a href="#portuguese">Portuguese</a></li><li><a href="#romanian">Romanian</a></li><li><a href="#russian">Russian</a></li><li><a href="#scandinavian">Scandinavian</a></li><li><a href="#serbian">Serbian</a></li><li><a href="#spanish">Spanish</a></li><li><a href="#swedish">Swedish</a></li><li><a href="#thai">Thai</a></li><li><a href="#turkish">Turkish</a></li><li><a href="#ukrainian">Ukrainian</a></li></ul></div>
+<div class="ulist"><ul><li><p><a href="#arabic">Arabic</a></p></li><li><p><a href="#bengali">Bengali</a></p></li><li><p><a href="#brazilian-portuguese">Brazilian Portuguese</a></p></li><li><p><a href="#bulgarian">Bulgarian</a></p></li><li><p><a href="#catalan">Catalan</a></p></li><li><p><a href="#traditional-chinese">Traditional Chinese</a></p></li><li><p><a href="#simplified-chinese">Simplified Chinese</a></p></li><li><p><a href="#czech">Czech</a></p></li><li><p><a href="#danish">Danish</a></p></li><li><p><a href="#dutch">Dutch</a></p></li><li><p><a href="#estonian">Estonian</a></p></li><li><p><a href="#finnish">Finnish</a></p></li><li><p><a href="#french">French</a></p></li><li><p><a href="#galician">Galician</a></p></li><li><p><a href="#german">German</a></p></li><li><p><a href="#greek">Greek</a></p></li><li><p><a href="#hebrew-lao-myanmar-khmer">Hebrew, Lao, Myanmar, Khmer</a></p></li><li><p><a href="#hindi">Hindi</a></p></li><li><p><a href="#indonesian">Indonesian</a></p></li><
 li><p><a href="#italian">Italian</a></p></li><li><p><a href="#irish">Irish</a></p></li><li><p><a href="#japanese">Japanese</a></p></li><li><p><a href="#latvian">Latvian</a></p></li><li><p><a href="#norwegian">Norwegian</a></p></li><li><p><a href="#persian">Persian</a></p></li><li><p><a href="#polish">Polish</a></p></li><li><p><a href="#portuguese">Portuguese</a></p></li><li><p><a href="#romanian">Romanian</a></p></li><li><p><a href="#russian">Russian</a></p></li><li><p><a href="#scandinavian">Scandinavian</a></p></li><li><p><a href="#serbian">Serbian</a></p></li><li><p><a href="#spanish">Spanish</a></p></li><li><p><a href="#swedish">Swedish</a></p></li><li><p><a href="#thai">Thai</a></p></li><li><p><a href="#turkish">Turkish</a></p></li><li><p><a href="#ukrainian">Ukrainian</a></p></li></ul></div>
 <section class="sect2"><h3 id="arabic">Arabic</h3><p>Solr provides support for the <a href="http://www.mtholyoke.edu/~lballest/Pubs/arab_stem05.pdf">Light-10</a> (PDF) stemming algorithm, and Lucene includes an example stopword list.</p>
 <p>This algorithm defines both character normalization and stemming, so these are split into two filters to provide more flexibility.</p>
 <p><strong>Factory classes:</strong> <code>solr.ArabicStemFilterFactory</code>, <code>solr.ArabicNormalizationFilterFactory</code></p>
@@ -2359,9 +2354,9 @@ Lucene currently does not index token ty
 <p><strong>Tokenizer to Filter:</strong> "siopadóireacht", "síceapatacha", "b&#8217;fhearr", "m&#8217;athair"</p>
 <p><strong>Out:</strong> "siopadóir", "síceapaite", "fearr", "athair"</p></section>
 <section class="sect2"><h3 id="japanese">Japanese</h3><p>Solr includes support for analyzing Japanese, via the Lucene Kuromoji morphological analyzer, which includes several analysis components - more details on each below:</p>
-<div class="ulist"><ul><li><a href="#japanese-iteration-mark-charfilter"><code>JapaneseIterationMarkCharFilter</code></a> normalizes Japanese horizontal iteration marks (odoriji) to their expanded form.</li><li><a href="#japanese-tokenizer"><code>JapaneseTokenizer</code></a> tokenizes Japanese using morphological analysis, and annotates each term with part-of-speech, base form (a.k.a. lemma), reading and pronunciation.</li><li><a href="#japanese-base-form-filter"><code>JapaneseBaseFormFilter</code></a> replaces original terms with their base forms (a.k.a. lemmas).</li><li><a href="#japanese-part-of-speech-stop-filter"><code>JapanesePartOfSpeechStopFilter</code></a> removes terms that have one of the configured parts-of-speech.</li><li><a href="#japanese-katakana-stem-filter"><code>JapaneseKatakanaStemFilter</code></a> normalizes common katakana spelling variations ending in a long sound character (U+30FC) by removing the long sound character.</li></ul></div>
+<div class="ulist"><ul><li><p><a href="#japanese-iteration-mark-charfilter"><code>JapaneseIterationMarkCharFilter</code></a> normalizes Japanese horizontal iteration marks (odoriji) to their expanded form.</p></li><li><p><a href="#japanese-tokenizer"><code>JapaneseTokenizer</code></a> tokenizes Japanese using morphological analysis, and annotates each term with part-of-speech, base form (a.k.a. lemma), reading and pronunciation.</p></li><li><p><a href="#japanese-base-form-filter"><code>JapaneseBaseFormFilter</code></a> replaces original terms with their base forms (a.k.a. lemmas).</p></li><li><p><a href="#japanese-part-of-speech-stop-filter"><code>JapanesePartOfSpeechStopFilter</code></a> removes terms that have one of the configured parts-of-speech.</p></li><li><p><a href="#japanese-katakana-stem-filter"><code>JapaneseKatakanaStemFilter</code></a> normalizes common katakana spelling variations ending in a long sound character (U+30FC) by removing the long sound character.</p></li><
 /ul></div>
 <p>Also useful for Japanese analysis, from lucene-analyzers-common:</p>
-<div class="ulist"><ul><li><a href="#cjk-width-filter"><code>CJKWidthFilter</code></a> folds fullwidth ASCII variants into the equivalent Basic Latin forms, and folds halfwidth Katakana variants into their equivalent fullwidth forms.</li></ul></div>
+<div class="ulist"><ul><li><p><a href="#cjk-width-filter"><code>CJKWidthFilter</code></a> folds fullwidth ASCII variants into the equivalent Basic Latin forms, and folds halfwidth Katakana variants into their equivalent fullwidth forms.</p></li></ul></div>
 <section class="sect3"><h4 id="japanese-iteration-mark-charfilter">Japanese Iteration Mark CharFilter</h4><p>Normalizes horizontal Japanese iteration marks (odoriji) to their expanded form. Vertical iteration marks are not supported.</p>
 <p><strong>Factory class:</strong> <code>JapaneseIterationMarkCharFilterFactory</code></p>
 <p><strong>Arguments:</strong></p>
@@ -2370,7 +2365,7 @@ Lucene currently does not index token ty
 <p><code>JapaneseTokenizer</code> has a <code>search</code> mode (the default) that does segmentation useful for search: a heuristic is used to segment compound terms into their constituent parts while also keeping the original compound terms as synonyms.</p>
 <p><strong>Factory class:</strong> <code>solr.JapaneseTokenizerFactory</code></p>
 <p><strong>Arguments:</strong></p>
-<div class="dlist"><dl><dt><code>mode</code></dt><dd>Use <code>search</code> mode to get a noun-decompounding effect useful for search. <code>search</code> mode improves segmentation for search at the expense of part-of-speech accuracy. Valid values for <code>mode</code> are:<ul><li><code>normal</code>: default segmentation</li><li><code>search</code>: segmentation useful for search (extra compound splitting)</li><li><p><code>extended</code>: search mode plus unigramming of unknown words (experimental)</p><p>For some applications it might be good to use <code>search</code> mode for indexing and <code>normal</code> mode for queries to increase precision and prevent parts of compounds from being matched and highlighted.</p></li></ul></dd><dt><code>userDictionary</code></dt><dd>filename for a user dictionary, which allows overriding the statistical model with your own entries for segmentation, part-of-speech tags and readings without a need to specify weights. See <code>lang/userdict_j
 a.txt</code> for a sample user dictionary file.</dd><dt><code>userDictionaryEncoding</code></dt><dd>user dictionary encoding (default is UTF-8)</dd><dt><code>discardPunctuation</code></dt><dd>set to <code>false</code> to keep punctuation, <code>true</code> to discard (the default)</dd><dt><code>discardCompoundToken</code></dt><dd>set to <code>false</code> to keep original compound tokens with the <code>search</code> mode, <code>true</code> to discard.</dd></dl></div></section>
+<div class="dlist"><dl><dt><code>mode</code></dt><dd>Use <code>search</code> mode to get a noun-decompounding effect useful for search. <code>search</code> mode improves segmentation for search at the expense of part-of-speech accuracy. Valid values for <code>mode</code> are:<ul><li><p><code>normal</code>: default segmentation</p></li><li><p><code>search</code>: segmentation useful for search (extra compound splitting)</p></li><li><p><p><code>extended</code>: search mode plus unigramming of unknown words (experimental)</p><p>For some applications it might be good to use <code>search</code> mode for indexing and <code>normal</code> mode for queries to increase precision and prevent parts of compounds from being matched and highlighted.</p></p></li></ul></dd><dt><code>userDictionary</code></dt><dd>filename for a user dictionary, which allows overriding the statistical model with your own entries for segmentation, part-of-speech tags and readings without a need to specify weights. See 
 <code>lang/userdict_ja.txt</code> for a sample user dictionary file.</dd><dt><code>userDictionaryEncoding</code></dt><dd>user dictionary encoding (default is UTF-8)</dd><dt><code>discardPunctuation</code></dt><dd>set to <code>false</code> to keep punctuation, <code>true</code> to discard (the default)</dd><dt><code>discardCompoundToken</code></dt><dd>set to <code>false</code> to keep original compound tokens with the <code>search</code> mode, <code>true</code> to discard.</dd></dl></div></section>
 <section class="sect3"><h4 id="japanese-base-form-filter">Japanese Base Form Filter</h4><p>Replaces original terms' text with the corresponding base form (lemma). (<code>JapaneseTokenizer</code> annotates each term with its base form.)</p>
 <p><strong>Factory class:</strong> <code>JapaneseBaseFormFilterFactory</code></p>
 <p>(no arguments)</p></section>
@@ -2424,7 +2419,7 @@ Lucene currently does not index token ty
 <div class="tableblock"><table class="frame-all grid-all spread" style="width: 100%;"><colgroup><col style="width: 25%;"><col style="width: 25%;"><col style="width: 25%;"><col style="width: 25%;"></colgroup><thead><tr><th class="halign-center valign-top" colspan="2"><strong>One pass</strong></th><th class="halign-center valign-top" colspan="2"><strong>Two passes</strong></th></tr><tbody><tr><td class="halign-left valign-top"><strong>Before</strong></td><td class="halign-left valign-top"><strong>After</strong></td><td class="halign-left valign-top"><strong>Before</strong></td><td class="halign-left valign-top"><strong>After</strong></td></tr><tr><td class="halign-left valign-top">forlegen</td><td class="halign-left valign-top">forleg</td><td class="halign-left valign-top">forlegen</td><td class="halign-left valign-top">forleg</td></tr><tr><td class="halign-left valign-top">forlegenhet</td><td class="halign-left valign-top">forlegen</td><td class="halign-left valign-top">forlegenhet</
 td><td class="halign-left valign-top">forleg</td></tr><tr><td class="halign-left valign-top">forlegenheten</td><td class="halign-left valign-top">forlegen</td><td class="halign-left valign-top">forlegenheten</td><td class="halign-left valign-top">forleg</td></tr><tr><td class="halign-left valign-top">forlegenhetens</td><td class="halign-left valign-top">forlegen</td><td class="halign-left valign-top">forlegenhetens</td><td class="halign-left valign-top">forleg</td></tr><tr><td class="halign-left valign-top">firkantet</td><td class="halign-left valign-top">firkant</td><td class="halign-left valign-top">firkantet</td><td class="halign-left valign-top">firkant</td></tr><tr><td class="halign-left valign-top">firkantethet</td><td class="halign-left valign-top">firkantet</td><td class="halign-left valign-top">firkantethet</td><td class="halign-left valign-top">firkant</td></tr><tr><td class="halign-left valign-top">firkantetheten</td><td class="halign-left valign-top">firkantet</td><td cl
 ass="halign-left valign-top">firkantetheten</td><td class="halign-left valign-top">firkant</td></tr></table></div>
 <p><strong>Factory class:</strong> <code>solr.NorwegianLightStemFilterFactory</code></p>
 <p><strong>Arguments:</strong></p>
-<div class="dlist"><dl><dt><code>variant</code></dt><dd>Choose the Norwegian language variant to use. Valid values are:<ul><li><code>nb:</code> Bokmål (default)</li><li><code>nn:</code> Nynorsk</li><li><code>no:</code> both</li></ul></dd></dl></div>
+<div class="dlist"><dl><dt><code>variant</code></dt><dd>Choose the Norwegian language variant to use. Valid values are:<ul><li><p><code>nb:</code> Bokmål (default)</p></li><li><p><code>nn:</code> Nynorsk</p></li><li><p><code>no:</code> both</p></li></ul></dd></dl></div>
 <p><strong>Example:</strong></p>
 <div class="listingblock"><pre class="rouge highlight"><code class="language-xml" data-lang="xml"><pre class="highlight"><code><span style="color: #000080">&lt;fieldType</span> <span style="color: #008080">name=</span><span style="color: #d14">"text_no"</span> <span style="color: #008080">class=</span><span style="color: #d14">"solr.TextField"</span> <span style="color: #008080">positionIncrementGap=</span><span style="color: #d14">"100"</span><span style="color: #000080">&gt;</span>
   <span style="color: #000080">&lt;analyzer&gt;</span>
@@ -2440,7 +2435,7 @@ Lucene currently does not index token ty
 <section class="sect3"><h4 id="norwegian-minimal-stemmer">Norwegian Minimal Stemmer</h4><p>The <code>NorwegianMinimalStemFilterFactory</code> stems plural forms of Norwegian nouns only.</p>
 <p><strong>Factory class:</strong> <code>solr.NorwegianMinimalStemFilterFactory</code></p>
 <p><strong>Arguments:</strong></p>
-<div class="dlist"><dl><dt><code>variant</code></dt><dd>Choose the Norwegian language variant to use. Valid values are:<ul><li><code>nb:</code> Bokmål (default)</li><li><code>nn:</code> Nynorsk</li><li><code>no:</code> both</li></ul></dd></dl></div>
+<div class="dlist"><dl><dt><code>variant</code></dt><dd>Choose the Norwegian language variant to use. Valid values are:<ul><li><p><code>nb:</code> Bokmål (default)</p></li><li><p><code>nn:</code> Nynorsk</p></li><li><p><code>no:</code> both</p></li></ul></dd></dl></div>
 <p><strong>Example:</strong></p>
 <div class="listingblock"><pre class="rouge highlight"><code class="language-xml" data-lang="xml"><pre class="highlight"><code><span style="color: #000080">&lt;fieldType</span> <span style="color: #008080">name=</span><span style="color: #d14">"text_no"</span> <span style="color: #008080">class=</span><span style="color: #d14">"solr.TextField"</span> <span style="color: #008080">positionIncrementGap=</span><span style="color: #d14">"100"</span><span style="color: #000080">&gt;</span>
   <span style="color: #000080">&lt;analyzer&gt;</span>
@@ -2558,7 +2553,7 @@ Lucene currently does not index token ty
 <p>For user tips &amp; advice on using this filter, see <a href="https://cwiki.apache.org/confluence/display/solr/SerbianLanguageSupport">Serbian Language Support</a> in the Solr Wiki.</p>
 <p><strong>Factory class:</strong> <code>solr.SerbianNormalizationFilterFactory</code></p>
 <p><strong>Arguments:</strong></p>
-<div class="dlist"><dl><dt><code>haircut</code></dt><dd>Select the extend of normalization. Valid values are:<ul><li><code>bald</code>: (Default behavior) Cyrillic characters are first converted to Latin; then, Latin characters have their diacritics removed, with the exception of <a href="https://en.wikipedia.org/wiki/D_with_stroke">LATIN SMALL LETTER D WITH STROKE</a> (U+0111) which is converted to &#8220;<code>dj</code>&#8221;</li><li><code>regular</code>: Only Cyrillic to Latin normalization will be applied, preserving the Latin diatrics</li></ul></dd></dl></div>
+<div class="dlist"><dl><dt><code>haircut</code></dt><dd>Select the extend of normalization. Valid values are:<ul><li><p><code>bald</code>: (Default behavior) Cyrillic characters are first converted to Latin; then, Latin characters have their diacritics removed, with the exception of <a href="https://en.wikipedia.org/wiki/D_with_stroke">LATIN SMALL LETTER D WITH STROKE</a> (U+0111) which is converted to &#8220;<code>dj</code>&#8221;</p></li><li><p><code>regular</code>: Only Cyrillic to Latin normalization will be applied, preserving the Latin diatrics</p></li></ul></dd></dl></div>
 <p><strong>Example:</strong></p>
 <div class="listingblock"><pre class="rouge highlight"><code class="language-xml" data-lang="xml"><pre class="highlight"><code><span style="color: #000080">&lt;analyzer&gt;</span>
   <span style="color: #000080">&lt;tokenizer</span> <span style="color: #008080">class=</span><span style="color: #d14">"solr.StandardTokenizerFactory"</span><span style="color: #000080">/&gt;</span>
@@ -2660,7 +2655,7 @@ Lucene currently does not index token ty
             <div class="row">
                 <div class="col-lg-12 footer">
                &copy;2020 Apache Software Foundation. All rights reserved. <br />
- Site Version: 8.6-DRAFT <br />Site last generated: 2020-07-08 <br />
+ Site Version: 8.6 <br />Site last generated: 2020-07-15 <br />
 <p><img src="images/solr-sunOnly-small.png" alt="Apache Solr"/></p>
                 </div>
             </div>

Modified: websites/production/lucene/content/solr/guide/8_6/learning-to-rank.html
==============================================================================
--- websites/production/lucene/content/solr/guide/8_6/learning-to-rank.html (original)
+++ websites/production/lucene/content/solr/guide/8_6/learning-to-rank.html Wed Jul 15 16:52:36 2020
@@ -8,7 +8,7 @@
 <meta name="description" content="">
 <meta name="keywords" content=" ">
 
-<title>Learning To Rank | Apache Solr Reference Guide 8.6-DRAFT</title>
+<title>Learning To Rank | Apache Solr Reference Guide 8.6</title>
 
 <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous">
 <link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
@@ -71,7 +71,7 @@
 
     </script>
 </head>
-<body class="DRAFT" id="learning-to-rank">
+<body class="" id="learning-to-rank">
 <div class="container-fluid">
   <div class="row">
   <nav id="sidebar" class="col-2 d-none d-md-block">
@@ -79,11 +79,6 @@
 <div class="sidebar-header">
   <div class="sidebarTitle text-center">Apache Solr Reference Guide</div>
   
-  <p class="draft-notice">
-    This is an unofficial DRAFT of the Guide for 8.6.
-    <a href="https://lucene.apache.org/solr/guide/">Official releases are available from the Solr website</a>.
-  </p>
-  
 
   <!--comment out this block if you want to hide search-->
     <!--start search-->
@@ -1695,7 +1690,7 @@
 <section class="sect1"><h2 id="learning-to-rank-concepts">Learning to Rank Concepts</h2><section class="sect2"><h3 id="re-ranking">Re-Ranking</h3><p>Re-Ranking allows you to run a simple query for matching documents and then re-rank the top N documents using the scores from a different, more complex query. This page describes the use of <strong>LTR</strong> complex queries, information on other rank queries included in the Solr distribution can be found on the <a href="query-re-ranking.html#query-re-ranking">Query Re-Ranking</a> page.</p></section>
 <section class="sect2"><h3 id="learning-to-rank-models">Learning To Rank Models</h3><p>In information retrieval systems, <a href="https://en.wikipedia.org/wiki/Learning_to_rank">Learning to Rank</a> is used to re-rank the top N retrieved documents using trained machine learning models. The hope is that such sophisticated models can make more nuanced ranking decisions than standard ranking functions like <a href="https://en.wikipedia.org/wiki/Tf%E2%80%93idf">TF-IDF</a> or <a href="https://en.wikipedia.org/wiki/Okapi_BM25">BM25</a>.</p>
 <section class="sect3"><h4 id="ranking-model">Ranking Model</h4><p>A ranking model computes the scores used to rerank documents. Irrespective of any particular algorithm or implementation, a ranking model&#8217;s computation can use three types of inputs:</p>
-<div class="ulist"><ul><li>parameters that represent the scoring algorithm</li><li>features that represent the document being scored</li><li>features that represent the query for which the document is being scored</li></ul></div></section>
+<div class="ulist"><ul><li><p>parameters that represent the scoring algorithm</p></li><li><p>features that represent the document being scored</p></li><li><p>features that represent the query for which the document is being scored</p></li></ul></div></section>
 <section class="sect3"><h4 id="feature">Feature</h4><p>A feature is a value, a number, that represents some quantity or quality of the document being scored or of the query for which documents are being scored. For example documents often have a 'recency' quality and 'number of past purchases' might be a quantity that is passed to Solr as part of the search query.</p></section>
 <section class="sect3"><h4 id="normalizer">Normalizer</h4><p>Some ranking models expect features on a particular scale. A normalizer can be used to translate arbitrary feature values into normalized values e.g., on a 0..1 or 0..100 scale.</p></section></section>
 <section class="sect2"><h3 id="training-models">Training Models</h3><section class="sect3"><h4 id="feature-engineering">Feature Engineering</h4><p>The LTR contrib module includes several feature classes as well as support for custom features. Each feature class&#8217;s javadocs contain an example to illustrate use of that class. The process of <a href="https://en.wikipedia.org/wiki/Feature_engineering">feature engineering</a> itself is then entirely up to your domain expertise and creativity.</p>
@@ -1869,14 +1864,14 @@
 <section class="sect2"><h3 id="training-example">Training Example</h3><p>Example training data and a demo <code>train_and_upload_demo_model.py</code> script can be found in the <code>solr/contrib/ltr/example</code> folder in the <a href="https://gitbox.apache.org/repos/asf?p=lucene-solr.git;a=tree;f=solr/contrib/ltr/example">Apache lucene-solr Git repository</a> (mirrored on <a href="https://github.com/apache/lucene-solr/tree/releases/lucene-solr/8.6.0/solr/contrib/ltr/example">github.com</a>). This example folder is not shipped in the Solr binary release.</p></section></section>
 <section class="sect1"><h2 id="installation-of-ltr">Installation of LTR</h2><p>The ltr contrib module requires the <code>dist/solr-ltr-*.jar</code> JARs.</p></section>
 <section class="sect1"><h2 id="ltr-configuration">LTR Configuration</h2><p>Learning-To-Rank is a contrib module and therefore its plugins must be configured in <code>solrconfig.xml</code>.</p>
-<section class="sect2"><h3 id="minimum-requirements">Minimum Requirements</h3><div class="ulist"><ul><li><p>Include the required contrib JARs. Note that by default paths are relative to the Solr core so they may need adjustments to your configuration, or an explicit specification of the <code>$solr.install.dir</code>.</p><div class="listingblock"><pre class="rouge highlight"><code class="language-xml" data-lang="xml"><pre class="highlight"><code><span style="color: #000080">&lt;lib</span> <span style="color: #008080">dir=</span><span style="color: #d14">"${solr.install.dir:../../../..}/dist/"</span> <span style="color: #008080">regex=</span><span style="color: #d14">"solr-ltr-\d.*\.jar"</span> <span style="color: #000080">/&gt;</span></code></pre></code></pre></div></li><li><p>Declaration of the <code>ltr</code> query parser.</p><div class="listingblock"><pre class="rouge highlight"><code class="language-xml" data-lang="xml"><pre class="highlight"><code><span style="color: #000080">
 &lt;queryParser</span> <span style="color: #008080">name=</span><span style="color: #d14">"ltr"</span> <span style="color: #008080">class=</span><span style="color: #d14">"org.apache.solr.ltr.search.LTRQParserPlugin"</span><span style="color: #000080">/&gt;</span></code></pre></code></pre></div></li><li><p>Configuration of the feature values cache.</p><div class="listingblock"><pre class="rouge highlight"><code class="language-xml" data-lang="xml"><pre class="highlight"><code><span style="color: #000080">&lt;cache</span> <span style="color: #008080">name=</span><span style="color: #d14">"QUERY_DOC_FV"</span>
+<section class="sect2"><h3 id="minimum-requirements">Minimum Requirements</h3><div class="ulist"><ul><li><p><p>Include the required contrib JARs. Note that by default paths are relative to the Solr core so they may need adjustments to your configuration, or an explicit specification of the <code>$solr.install.dir</code>.</p><div class="listingblock"><pre class="rouge highlight"><code class="language-xml" data-lang="xml"><pre class="highlight"><code><span style="color: #000080">&lt;lib</span> <span style="color: #008080">dir=</span><span style="color: #d14">"${solr.install.dir:../../../..}/dist/"</span> <span style="color: #008080">regex=</span><span style="color: #d14">"solr-ltr-\d.*\.jar"</span> <span style="color: #000080">/&gt;</span></code></pre></code></pre></div></p></li><li><p><p>Declaration of the <code>ltr</code> query parser.</p><div class="listingblock"><pre class="rouge highlight"><code class="language-xml" data-lang="xml"><pre class="highlight"><code><span style="color:
  #000080">&lt;queryParser</span> <span style="color: #008080">name=</span><span style="color: #d14">"ltr"</span> <span style="color: #008080">class=</span><span style="color: #d14">"org.apache.solr.ltr.search.LTRQParserPlugin"</span><span style="color: #000080">/&gt;</span></code></pre></code></pre></div></p></li><li><p><p>Configuration of the feature values cache.</p><div class="listingblock"><pre class="rouge highlight"><code class="language-xml" data-lang="xml"><pre class="highlight"><code><span style="color: #000080">&lt;cache</span> <span style="color: #008080">name=</span><span style="color: #d14">"QUERY_DOC_FV"</span>
        <span style="color: #008080">class=</span><span style="color: #d14">"solr.search.LRUCache"</span>
        <span style="color: #008080">size=</span><span style="color: #d14">"4096"</span>
        <span style="color: #008080">initialSize=</span><span style="color: #d14">"2048"</span>
        <span style="color: #008080">autowarmCount=</span><span style="color: #d14">"4096"</span>
-       <span style="color: #008080">regenerator=</span><span style="color: #d14">"solr.search.NoOpRegenerator"</span> <span style="color: #000080">/&gt;</span></code></pre></code></pre></div></li><li><p>Declaration of the <code>[features]</code> transformer.</p><div class="listingblock"><pre class="rouge highlight"><code class="language-xml" data-lang="xml"><pre class="highlight"><code><span style="color: #000080">&lt;transformer</span> <span style="color: #008080">name=</span><span style="color: #d14">"features"</span> <span style="color: #008080">class=</span><span style="color: #d14">"org.apache.solr.ltr.response.transform.LTRFeatureLoggerTransformerFactory"</span><span style="color: #000080">&gt;</span>
+       <span style="color: #008080">regenerator=</span><span style="color: #d14">"solr.search.NoOpRegenerator"</span> <span style="color: #000080">/&gt;</span></code></pre></code></pre></div></p></li><li><p><p>Declaration of the <code>[features]</code> transformer.</p><div class="listingblock"><pre class="rouge highlight"><code class="language-xml" data-lang="xml"><pre class="highlight"><code><span style="color: #000080">&lt;transformer</span> <span style="color: #008080">name=</span><span style="color: #d14">"features"</span> <span style="color: #008080">class=</span><span style="color: #d14">"org.apache.solr.ltr.response.transform.LTRFeatureLoggerTransformerFactory"</span><span style="color: #000080">&gt;</span>
   <span style="color: #000080">&lt;str</span> <span style="color: #008080">name=</span><span style="color: #d14">"fvCacheName"</span><span style="color: #000080">&gt;</span>QUERY_DOC_FV<span style="color: #000080">&lt;/str&gt;</span>
-<span style="color: #000080">&lt;/transformer&gt;</span></code></pre></code></pre></div></li></ul></div></section>
+<span style="color: #000080">&lt;/transformer&gt;</span></code></pre></code></pre></div></p></li></ul></div></section>
 <section class="sect2"><h3 id="advanced-options">Advanced Options</h3><section class="sect3"><h4 id="ltrthreadmodule">LTRThreadModule</h4><p>A thread module can be configured for the query parser and/or the transformer to parallelize the creation of feature weights. For details, please refer to the <a href="https://lucene.apache.org/solr/8_6_0//solr-ltr/org/apache/solr/ltr/LTRThreadModule.html">LTRThreadModule</a> javadocs.</p></section>
 <section class="sect3"><h4 id="feature-vector-customization">Feature Vector Customization</h4><p>The features transformer returns dense CSV values such as <code>featureA=0.1,featureB=0.2,featureC=0.3,featureD=0.0</code>.</p>
 <p>For sparse CSV output such as <code>featureA:0.1 featureB:0.2 featureC:0.3</code> you can customize the <a href="https://lucene.apache.org/solr/8_6_0//solr-ltr/org/apache/solr/ltr/response/transform/LTRFeatureLoggerTransformerFactory.html">feature logger transformer</a> declaration in <code>solrconfig.xml</code> as follows:</p>
@@ -1886,14 +1881,14 @@
   <span style="color: #000080">&lt;str</span> <span style="color: #008080">name=</span><span style="color: #d14">"csvKeyValueDelimiter"</span><span style="color: #000080">&gt;</span>:<span style="color: #000080">&lt;/str&gt;</span>
   <span style="color: #000080">&lt;str</span> <span style="color: #008080">name=</span><span style="color: #d14">"csvFeatureSeparator"</span><span style="color: #000080">&gt;</span> <span style="color: #000080">&lt;/str&gt;</span>
 <span style="color: #000080">&lt;/transformer&gt;</span></code></pre></code></pre></div></section>
-<section class="sect3"><h4 id="implementation-and-contributions">Implementation and Contributions</h4><div class="dlist"><dl><dt>How does Solr Learning-To-Rank work under the hood?</dt><dd>Please refer to the <code>ltr</code> <a href="https://lucene.apache.org/solr/8_6_0//solr-ltr/org/apache/solr/ltr/package-summary.html">javadocs</a> for an implementation overview.</dd><dt>How could I write additional models and/or features?</dt><dd>Contributions for further models, features and normalizers are welcome. Related links:<ul><li><a href="https://lucene.apache.org/solr/8_6_0//solr-ltr/org/apache/solr/ltr/model/LTRScoringModel.html">LTRScoringModel javadocs</a></li><li><a href="https://lucene.apache.org/solr/8_6_0//solr-ltr/org/apache/solr/ltr/feature/Feature.html">Feature javadocs</a></li><li><a href="https://lucene.apache.org/solr/8_6_0//solr-ltr/org/apache/solr/ltr/norm/Normalizer.html">Normalizer javadocs</a></li><li><a class="bare" href="https://cwiki.apache.org/confluence/display/s
 olr/HowToContribute">https://cwiki.apache.org/confluence/display/solr/HowToContribute</a></li><li><a class="bare" href="https://cwiki.apache.org/confluence/display/LUCENE/HowToContribute">https://cwiki.apache.org/confluence/display/LUCENE/HowToContribute</a></li></ul></dd></dl></div></section></section></section>
+<section class="sect3"><h4 id="implementation-and-contributions">Implementation and Contributions</h4><div class="dlist"><dl><dt>How does Solr Learning-To-Rank work under the hood?</dt><dd>Please refer to the <code>ltr</code> <a href="https://lucene.apache.org/solr/8_6_0//solr-ltr/org/apache/solr/ltr/package-summary.html">javadocs</a> for an implementation overview.</dd><dt>How could I write additional models and/or features?</dt><dd>Contributions for further models, features and normalizers are welcome. Related links:<ul><li><p><a href="https://lucene.apache.org/solr/8_6_0//solr-ltr/org/apache/solr/ltr/model/LTRScoringModel.html">LTRScoringModel javadocs</a></p></li><li><p><a href="https://lucene.apache.org/solr/8_6_0//solr-ltr/org/apache/solr/ltr/feature/Feature.html">Feature javadocs</a></p></li><li><p><a href="https://lucene.apache.org/solr/8_6_0//solr-ltr/org/apache/solr/ltr/norm/Normalizer.html">Normalizer javadocs</a></p></li><li><p><a class="bare" href="https://cwiki.apache.
 org/confluence/display/solr/HowToContribute">https://cwiki.apache.org/confluence/display/solr/HowToContribute</a></p></li><li><p><a class="bare" href="https://cwiki.apache.org/confluence/display/LUCENE/HowToContribute">https://cwiki.apache.org/confluence/display/LUCENE/HowToContribute</a></p></li></ul></dd></dl></div></section></section></section>
 <section class="sect1"><h2 id="ltr-lifecycle">LTR Lifecycle</h2><section class="sect2"><h3 id="feature-stores">Feature Stores</h3><p>It is recommended that you organise all your features into stores which are akin to namespaces:</p>
-<div class="ulist"><ul><li>Features within a store must be named uniquely.</li><li>Across stores identical or similar features can share the same name.</li><li>If no store name is specified then the default <code>_DEFAULT_</code> feature store will be used.</li></ul></div>
+<div class="ulist"><ul><li><p>Features within a store must be named uniquely.</p></li><li><p>Across stores identical or similar features can share the same name.</p></li><li><p>If no store name is specified then the default <code>_DEFAULT_</code> feature store will be used.</p></li></ul></div>
 <p>To discover the names of all your feature stores:</p>
 <div class="listingblock"><pre class="rouge highlight"><code class="language-text" data-lang="text"><pre class="highlight"><code>http://localhost:8983/solr/techproducts/schema/feature-store</code></pre></code></pre></div>
 <p>To inspect the content of the <code>commonFeatureStore</code> feature store:</p>
 <div class="listingblock"><pre class="rouge highlight"><code class="language-text" data-lang="text"><pre class="highlight"><code>http://localhost:8983/solr/techproducts/schema/feature-store/commonFeatureStore</code></pre></code></pre></div></section>
-<section class="sect2"><h3 id="models">Models</h3><div class="ulist"><ul><li>A model uses features from exactly one feature store.</li><li>If no store is specified then the default <code>_DEFAULT_</code> feature store will be used.</li><li>A model need not use all the features defined in a feature store.</li><li>Multiple models can use the same feature store.</li></ul></div>
+<section class="sect2"><h3 id="models">Models</h3><div class="ulist"><ul><li><p>A model uses features from exactly one feature store.</p></li><li><p>If no store is specified then the default <code>_DEFAULT_</code> feature store will be used.</p></li><li><p>A model need not use all the features defined in a feature store.</p></li><li><p>Multiple models can use the same feature store.</p></li></ul></div>
 <p>To extract features for <code>currentFeatureStore</code> 's features:</p>
 <div class="listingblock"><pre class="rouge highlight"><code class="language-text" data-lang="text"><pre class="highlight"><code>http://localhost:8983/solr/techproducts/query?q=test&amp;fl=id,score,[features store=currentFeatureStore]</code></pre></code></pre></div>
 <p>To extract features for <code>nextFeatureStore</code> features whilst reranking with <code>currentModel</code> based on <code>currentFeatureStore</code>:</p>
@@ -1967,7 +1962,7 @@ No <code>"features"</code> are configure
 </div>
 <p>As an alternative to the above-described <code>DefaultWrapperModel</code>, it is possible to <a href="setting-up-an-external-zookeeper-ensemble.html#increasing-the-file-size-limit">increase ZooKeeper&#8217;s file size limit</a>.</p></section></section>
 <section class="sect2"><h3 id="applying-changes">Applying Changes</h3><p>The feature store and the model store are both <a href="managed-resources.html#managed-resources">Managed Resources</a>. Changes made to managed resources are not applied to the active Solr components until the Solr collection (or Solr core in single server mode) is reloaded.</p></section>
-<section class="sect2"><h3 id="ltr-examples">LTR Examples</h3><section class="sect3"><h4 id="one-feature-store-multiple-ranking-models">One Feature Store, Multiple Ranking Models</h4><div class="ulist"><ul><li><code>leftModel</code> and <code>rightModel</code> both use features from <code>commonFeatureStore</code> and the only different between the two models is the weights attached to each feature.</li><li>Conventions used:<ul><li><code>commonFeatureStore.json</code> file contains features for the <code>commonFeatureStore</code> feature store</li><li><code>leftModel.json</code> file contains model named <code>leftModel</code></li><li><code>rightModel.json</code> file contains model named <code>rightModel</code></li><li>The model&#8217;s features and weights are sorted alphabetically by name, this makes it easy to see what the commonalities and differences between the two models are.</li><li>The stores features are sorted alphabetically by name, this makes it easy to lookup features
  used in the models</li></ul></li></ul></div>
+<section class="sect2"><h3 id="ltr-examples">LTR Examples</h3><section class="sect3"><h4 id="one-feature-store-multiple-ranking-models">One Feature Store, Multiple Ranking Models</h4><div class="ulist"><ul><li><p><code>leftModel</code> and <code>rightModel</code> both use features from <code>commonFeatureStore</code> and the only different between the two models is the weights attached to each feature.</p></li><li><p>Conventions used:<ul><li><p><code>commonFeatureStore.json</code> file contains features for the <code>commonFeatureStore</code> feature store</p></li><li><p><code>leftModel.json</code> file contains model named <code>leftModel</code></p></li><li><p><code>rightModel.json</code> file contains model named <code>rightModel</code></p></li><li><p>The model&#8217;s features and weights are sorted alphabetically by name, this makes it easy to see what the commonalities and differences between the two models are.</p></li><li><p>The stores features are sorted alphabetically by na
 me, this makes it easy to lookup features used in the models</p></li></ul></p></li></ul></div>
 <figure class="listingblock"><figcaption>Example: /path/commonFeatureStore.json</figcaption>
 <pre class="rouge highlight"><code class="language-json" data-lang="json"><pre class="highlight"><code><span style="background-color: #f8f8f8">[</span><span style="color: #bbbbbb">
   </span><span style="background-color: #f8f8f8">{</span><span style="color: #bbbbbb">
@@ -2029,7 +2024,7 @@ No <code>"features"</code> are configure
     </span><span style="background-color: #f8f8f8">}</span><span style="color: #bbbbbb">
   </span><span style="background-color: #f8f8f8">}</span><span style="color: #bbbbbb">
 </span><span style="background-color: #f8f8f8">}</span></code></pre></code></pre></figure></section>
-<section class="sect3"><h4 id="model-evolution">Model Evolution</h4><div class="ulist"><ul><li><code>linearModel201701</code> uses features from <code>featureStore201701</code></li><li><code>treesModel201702</code> uses features from <code>featureStore201702</code></li><li><code>linearModel201701</code> and <code>treesModel201702</code> and their feature stores can co-exist whilst both are needed.</li><li>When <code>linearModel201701</code> has been deleted then <code>featureStore201701</code> can also be deleted.</li><li>Conventions used:<ul><li><code>&lt;store&gt;.json</code> file contains features for the <code>&lt;store&gt;</code> feature store</li><li><code>&lt;model&gt;.json</code> file contains model name <code>&lt;model&gt;</code></li><li>a 'generation' id (e.g., <code>YYYYMM</code> year-month) is part of the feature store and model names</li><li>The model&#8217;s features and weights are sorted alphabetically by name, this makes it easy to see what the commonalities and dif
 ferences between the two models are.</li><li>The stores features are sorted alphabetically by name, this makes it easy to see what the commonalities and differences between the two feature stores are.</li></ul></li></ul></div>
+<section class="sect3"><h4 id="model-evolution">Model Evolution</h4><div class="ulist"><ul><li><p><code>linearModel201701</code> uses features from <code>featureStore201701</code></p></li><li><p><code>treesModel201702</code> uses features from <code>featureStore201702</code></p></li><li><p><code>linearModel201701</code> and <code>treesModel201702</code> and their feature stores can co-exist whilst both are needed.</p></li><li><p>When <code>linearModel201701</code> has been deleted then <code>featureStore201701</code> can also be deleted.</p></li><li><p>Conventions used:<ul><li><p><code>&lt;store&gt;.json</code> file contains features for the <code>&lt;store&gt;</code> feature store</p></li><li><p><code>&lt;model&gt;.json</code> file contains model name <code>&lt;model&gt;</code></p></li><li><p>a 'generation' id (e.g., <code>YYYYMM</code> year-month) is part of the feature store and model names</p></li><li><p>The model&#8217;s features and weights are sorted alphabetically by name, t
 his makes it easy to see what the commonalities and differences between the two models are.</p></li><li><p>The stores features are sorted alphabetically by name, this makes it easy to see what the commonalities and differences between the two feature stores are.</p></li></ul></p></li></ul></div>
 <figure class="listingblock"><figcaption>Example: /path/featureStore201701.json</figcaption>
 <pre class="rouge highlight"><code class="language-json" data-lang="json"><pre class="highlight"><code><span style="background-color: #f8f8f8">[</span><span style="color: #bbbbbb">
   </span><span style="background-color: #f8f8f8">{</span><span style="color: #bbbbbb">
@@ -2124,7 +2119,7 @@ No <code>"features"</code> are configure
     </span><span style="background-color: #f8f8f8">]</span><span style="color: #bbbbbb">
   </span><span style="background-color: #f8f8f8">}</span><span style="color: #bbbbbb">
 </span><span style="background-color: #f8f8f8">}</span></code></pre></code></pre></figure></section></section></section>
-<section class="sect1"><h2 id="additional-ltr-resources">Additional LTR Resources</h2><div class="ulist"><ul><li>"Learning to Rank in Solr" presentation at Lucene/Solr Revolution 2015 in Austin:<ul><li>Slides: <a class="bare" href="http://www.slideshare.net/lucidworks/learning-to-rank-in-solr-presented-by-michael-nilsson-diego-ceccarelli-bloomberg-lp">http://www.slideshare.net/lucidworks/learning-to-rank-in-solr-presented-by-michael-nilsson-diego-ceccarelli-bloomberg-lp</a></li><li>Video: <a class="bare" href="https://www.youtube.com/watch?v=M7BKwJoh96s">https://www.youtube.com/watch?v=M7BKwJoh96s</a></li></ul></li></ul></div></section>
+<section class="sect1"><h2 id="additional-ltr-resources">Additional LTR Resources</h2><div class="ulist"><ul><li><p>"Learning to Rank in Solr" presentation at Lucene/Solr Revolution 2015 in Austin:<ul><li><p>Slides: <a class="bare" href="http://www.slideshare.net/lucidworks/learning-to-rank-in-solr-presented-by-michael-nilsson-diego-ceccarelli-bloomberg-lp">http://www.slideshare.net/lucidworks/learning-to-rank-in-solr-presented-by-michael-nilsson-diego-ceccarelli-bloomberg-lp</a></p></li><li><p>Video: <a class="bare" href="https://www.youtube.com/watch?v=M7BKwJoh96s">https://www.youtube.com/watch?v=M7BKwJoh96s</a></p></li></ul></p></li></ul></div></section>
   </section>
 
 
@@ -2154,7 +2149,7 @@ No <code>"features"</code> are configure
             <div class="row">
                 <div class="col-lg-12 footer">
                &copy;2020 Apache Software Foundation. All rights reserved. <br />
- Site Version: 8.6-DRAFT <br />Site last generated: 2020-07-08 <br />
+ Site Version: 8.6 <br />Site last generated: 2020-07-15 <br />
 <p><img src="images/solr-sunOnly-small.png" alt="Apache Solr"/></p>
                 </div>
             </div>

Modified: websites/production/lucene/content/solr/guide/8_6/legacy-scaling-and-distribution.html
==============================================================================
--- websites/production/lucene/content/solr/guide/8_6/legacy-scaling-and-distribution.html (original)
+++ websites/production/lucene/content/solr/guide/8_6/legacy-scaling-and-distribution.html Wed Jul 15 16:52:36 2020
@@ -8,7 +8,7 @@
 <meta name="description" content="">
 <meta name="keywords" content=" ">
 
-<title>Legacy Scaling and Distribution | Apache Solr Reference Guide 8.6-DRAFT</title>
+<title>Legacy Scaling and Distribution | Apache Solr Reference Guide 8.6</title>
 
 <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous">
 <link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
@@ -71,7 +71,7 @@
 
     </script>
 </head>
-<body class="DRAFT" id="legacy-scaling-and-distribution">
+<body class="" id="legacy-scaling-and-distribution">
 <div class="container-fluid">
   <div class="row">
   <nav id="sidebar" class="col-2 d-none d-md-block">
@@ -79,11 +79,6 @@
 <div class="sidebar-header">
   <div class="sidebarTitle text-center">Apache Solr Reference Guide</div>
   
-  <p class="draft-notice">
-    This is an unofficial DRAFT of the Guide for 8.6.
-    <a href="https://lucene.apache.org/solr/guide/">Official releases are available from the Solr website</a>.
-  </p>
-  
 
   <!--comment out this block if you want to hide search-->
     <!--start search-->
@@ -1692,7 +1687,7 @@
             <div class="row">
                 <div class="col-lg-12 footer">
                &copy;2020 Apache Software Foundation. All rights reserved. <br />
- Site Version: 8.6-DRAFT <br />Site last generated: 2020-07-08 <br />
+ Site Version: 8.6 <br />Site last generated: 2020-07-15 <br />
 <p><img src="images/solr-sunOnly-small.png" alt="Apache Solr"/></p>
                 </div>
             </div>

Modified: websites/production/lucene/content/solr/guide/8_6/libs.html
==============================================================================
--- websites/production/lucene/content/solr/guide/8_6/libs.html (original)
+++ websites/production/lucene/content/solr/guide/8_6/libs.html Wed Jul 15 16:52:36 2020
@@ -8,7 +8,7 @@
 <meta name="description" content="">
 <meta name="keywords" content=" ">
 
-<title>Lib Directories and Directives | Apache Solr Reference Guide 8.6-DRAFT</title>
+<title>Lib Directories and Directives | Apache Solr Reference Guide 8.6</title>
 
 <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous">
 <link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
@@ -71,7 +71,7 @@
 
     </script>
 </head>
-<body class="DRAFT" id="libs">
+<body class="" id="libs">
 <div class="container-fluid">
   <div class="row">
   <nav id="sidebar" class="col-2 d-none d-md-block">
@@ -79,11 +79,6 @@
 <div class="sidebar-header">
   <div class="sidebarTitle text-center">Apache Solr Reference Guide</div>
   
-  <p class="draft-notice">
-    This is an unofficial DRAFT of the Guide for 8.6.
-    <a href="https://lucene.apache.org/solr/guide/">Official releases are available from the Solr website</a>.
-  </p>
-  
 
   <!--comment out this block if you want to hide search-->
     <!--start search-->
@@ -1664,12 +1659,12 @@
 Essentially you can put them in some special places or explicitly tell Solr about them from your config.</p>
 <p>If there is overlap or inter-dependencies between libraries, then pay attention to the order.  You can think of it like a stack that is searched top-down.  At the top are the lib directives in reverse order, then Solr core&#8217;s lib, then Solr home&#8217;s lib, then Solr itself.</p></section>
 <section class="sect1"><h2 id="lib-directories">Lib Directories</h2><p>There are several special places you can place Solr plugin <code>.jar</code> files:</p>
-<div class="ulist"><ul><li><code>&lt;solr_home&gt;/lib/</code>: The <code>.jar</code> files placed here are available to all Solr cores running on the node, and to node level plugins referenced in <code>solr.xml</code>&#8201;&#8212;&#8201;so basically everything.
+<div class="ulist"><ul><li><p><code>&lt;solr_home&gt;/lib/</code>: The <code>.jar</code> files placed here are available to all Solr cores running on the node, and to node level plugins referenced in <code>solr.xml</code>&#8201;&#8212;&#8201;so basically everything.
 This directory is not present by default so create it.
-See <a href="taking-solr-to-production.html#solr-home-directory">Solr home directory</a>.</li><li><code>&lt;core_instance&gt;/lib/</code>: In standalone Solr, you may want to add plugins just for a specific Solr core.
-Create this adjacent to the <code>conf/</code> directory; it&#8217;s not present by default.</li><li><code>&lt;solr_install&gt;/server/solr-webapp/webapp/WEB-INF/lib/</code>: The <code>.jar</code> files for Solr itself and it&#8217;s dependencies live here.
+See <a href="taking-solr-to-production.html#solr-home-directory">Solr home directory</a>.</p></li><li><p><code>&lt;core_instance&gt;/lib/</code>: In standalone Solr, you may want to add plugins just for a specific Solr core.
+Create this adjacent to the <code>conf/</code> directory; it&#8217;s not present by default.</p></li><li><p><code>&lt;solr_install&gt;/server/solr-webapp/webapp/WEB-INF/lib/</code>: The <code>.jar</code> files for Solr itself and it&#8217;s dependencies live here.
 Certain plugins or add-ons to plugins require placement here.
-They will document themselves to say so.</li></ul></div>
+They will document themselves to say so.</p></li></ul></div>
 <p>Solr incorporates Jetty for providing HTTP server functionality.
 Jetty has some directories that contain <code>.jar</code> files for itself and its own plugins / modules or JVM level plugins (e.g., loggers).
 Solr plugins won&#8217;t work in these locations.</p></section>
@@ -1679,7 +1674,7 @@ When a directive matches a <code>.jar</c
 Resources can be placed in a <code>.jar</code> too but that&#8217;s unusual.
 It&#8217;s erroneous to refer to any other type of file.</p>
 <p>A <code>&lt;lib/&gt;</code> directive must have one (not both) of these two attributes:</p>
-<div class="ulist"><ul><li><code>path</code>: used to refer to a single directory (for resources) or file (for a plugin <code>.jar</code>)</li><li><code>dir</code>: used to refer to <em>all</em> direct descendants of the specified directory.  Optionally supply a <code>regex</code> attribute to filter these to those matching the regular expression.</li></ul></div>
+<div class="ulist"><ul><li><p><code>path</code>: used to refer to a single directory (for resources) or file (for a plugin <code>.jar</code>)</p></li><li><p><code>dir</code>: used to refer to <em>all</em> direct descendants of the specified directory.  Optionally supply a <code>regex</code> attribute to filter these to those matching the regular expression.</p></li></ul></div>
 <p>All directories are resolved as relative to the Solr core&#8217;s <code>instanceDir</code>.</p>
 <p>These examples show how to load contrib modules into Solr:</p>
 <div class="listingblock"><pre class="rouge highlight"><code class="language-xml" data-lang="xml"><pre class="highlight"><code>  <span style="color: #000080">&lt;lib</span> <span style="color: #008080">dir=</span><span style="color: #d14">"${solr.install.dir:../../../..}/contrib/extraction/lib"</span> <span style="color: #008080">regex=</span><span style="color: #d14">".*\.jar"</span> <span style="color: #000080">/&gt;</span>
@@ -1723,7 +1718,7 @@ It&#8217;s erroneous to refer to any oth
             <div class="row">
                 <div class="col-lg-12 footer">
                &copy;2020 Apache Software Foundation. All rights reserved. <br />
- Site Version: 8.6-DRAFT <br />Site last generated: 2020-07-08 <br />
+ Site Version: 8.6 <br />Site last generated: 2020-07-15 <br />
 <p><img src="images/solr-sunOnly-small.png" alt="Apache Solr"/></p>
                 </div>
             </div>

Modified: websites/production/lucene/content/solr/guide/8_6/local-parameters-in-queries.html
==============================================================================
--- websites/production/lucene/content/solr/guide/8_6/local-parameters-in-queries.html (original)
+++ websites/production/lucene/content/solr/guide/8_6/local-parameters-in-queries.html Wed Jul 15 16:52:36 2020
@@ -8,7 +8,7 @@
 <meta name="description" content="">
 <meta name="keywords" content=" ">
 
-<title>Local Parameters in Queries | Apache Solr Reference Guide 8.6-DRAFT</title>
+<title>Local Parameters in Queries | Apache Solr Reference Guide 8.6</title>
 
 <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous">
 <link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
@@ -71,7 +71,7 @@
 
     </script>
 </head>
-<body class="DRAFT" id="local-parameters-in-queries">
+<body class="" id="local-parameters-in-queries">
 <div class="container-fluid">
   <div class="row">
   <nav id="sidebar" class="col-2 d-none d-md-block">
@@ -79,11 +79,6 @@
 <div class="sidebar-header">
   <div class="sidebarTitle text-center">Apache Solr Reference Guide</div>
   
-  <p class="draft-notice">
-    This is an unofficial DRAFT of the Guide for 8.6.
-    <a href="https://lucene.apache.org/solr/guide/">Official releases are available from the Solr website</a>.
-  </p>
-  
 
   <!--comment out this block if you want to hide search-->
     <!--start search-->
@@ -1669,7 +1664,7 @@
 <p><code>q={!q.op=AND df=title}solr rocks</code></p>
 <p>These local parameters would change the query to require a match on both "solr" and "rocks" while searching the "title" field by default.</p></section>
 <section class="sect1"><h2 id="basic-syntax-of-local-parameters">Basic Syntax of Local Parameters</h2><p>To specify a local parameter, insert the following before the argument to be modified:</p>
-<div class="ulist"><ul><li>Begin with <code>{!</code></li><li>Insert any number of key=value pairs separated by white space</li><li>End with <code>}</code> and immediately follow with the query argument</li></ul></div>
+<div class="ulist"><ul><li><p>Begin with <code>{!</code></p></li><li><p>Insert any number of key=value pairs separated by white space</p></li><li><p>End with <code>}</code> and immediately follow with the query argument</p></li></ul></div>
 <p>You may specify only one local parameters prefix per argument. Values in the key-value pairs may be quoted via single or double quotes, and backslash escaping works within quoted strings.</p></section>
 <section class="sect1"><h2 id="query-type-short-form">Query Type Short Form</h2><p>If a local parameter value appears without a name, it is given the implicit name of "type". This allows short-form representation for the type of query parser to use when parsing a query string. Thus</p>
 <p><code>q={!dismax qf=myfield}solr rocks</code></p>
@@ -1716,7 +1711,7 @@
             <div class="row">
                 <div class="col-lg-12 footer">
                &copy;2020 Apache Software Foundation. All rights reserved. <br />
- Site Version: 8.6-DRAFT <br />Site last generated: 2020-07-08 <br />
+ Site Version: 8.6 <br />Site last generated: 2020-07-15 <br />
 <p><img src="images/solr-sunOnly-small.png" alt="Apache Solr"/></p>
                 </div>
             </div>

Modified: websites/production/lucene/content/solr/guide/8_6/logging.html
==============================================================================
--- websites/production/lucene/content/solr/guide/8_6/logging.html (original)
+++ websites/production/lucene/content/solr/guide/8_6/logging.html Wed Jul 15 16:52:36 2020
@@ -8,7 +8,7 @@
 <meta name="description" content="">
 <meta name="keywords" content=" ">
 
-<title>Logging | Apache Solr Reference Guide 8.6-DRAFT</title>
+<title>Logging | Apache Solr Reference Guide 8.6</title>
 
 <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous">
 <link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
@@ -71,7 +71,7 @@
 
     </script>
 </head>
-<body class="DRAFT" id="logging">
+<body class="" id="logging">
 <div class="container-fluid">
   <div class="row">
   <nav id="sidebar" class="col-2 d-none d-md-block">
@@ -79,11 +79,6 @@
 <div class="sidebar-header">
   <div class="sidebarTitle text-center">Apache Solr Reference Guide</div>
   
-  <p class="draft-notice">
-    This is an unofficial DRAFT of the Guide for 8.6.
-    <a href="https://lucene.apache.org/solr/guide/">Official releases are available from the Solr website</a>.
-  </p>
-  
 
   <!--comment out this block if you want to hide search-->
     <!--start search-->
@@ -1696,7 +1691,7 @@
             <div class="row">
                 <div class="col-lg-12 footer">
                &copy;2020 Apache Software Foundation. All rights reserved. <br />
- Site Version: 8.6-DRAFT <br />Site last generated: 2020-07-08 <br />
+ Site Version: 8.6 <br />Site last generated: 2020-07-15 <br />
 <p><img src="images/solr-sunOnly-small.png" alt="Apache Solr"/></p>
                 </div>
             </div>

Modified: websites/production/lucene/content/solr/guide/8_6/machine-learning.html
==============================================================================
--- websites/production/lucene/content/solr/guide/8_6/machine-learning.html (original)
+++ websites/production/lucene/content/solr/guide/8_6/machine-learning.html Wed Jul 15 16:52:36 2020
@@ -8,7 +8,7 @@
 <meta name="description" content="">
 <meta name="keywords" content=" ">
 
-<title>Machine Learning | Apache Solr Reference Guide 8.6-DRAFT</title>
+<title>Machine Learning | Apache Solr Reference Guide 8.6</title>
 
 <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous">
 <link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
@@ -71,7 +71,7 @@
 
     </script>
 </head>
-<body class="DRAFT" id="machine-learning">
+<body class="" id="machine-learning">
 <div class="container-fluid">
   <div class="row">
   <nav id="sidebar" class="col-2 d-none d-md-block">
@@ -79,11 +79,6 @@
 <div class="sidebar-header">
   <div class="sidebarTitle text-center">Apache Solr Reference Guide</div>
   
-  <p class="draft-notice">
-    This is an unofficial DRAFT of the Guide for 8.6.
-    <a href="https://lucene.apache.org/solr/guide/">Official releases are available from the Solr website</a>.
-  </p>
-  
 
   <!--comment out this block if you want to hide search-->
     <!--start search-->
@@ -1794,7 +1789,7 @@ with vector direction rather than magnit
 </span><span style="background-color: #f8f8f8">}</span></code></pre></code></pre></div></section></section>
 <section class="sect1"><h2 id="distance-and-distance-measures">Distance and Distance Measures</h2><p>The <code>distance</code> function computes the distance for two numeric arrays or a distance matrix for the columns of a matrix.</p>
 <p>There are five distance measure functions that return a function that performs the actual distance calculation:</p>
-<div class="ulist"><ul><li><code>euclidean</code> (default)</li><li><code>manhattan</code></li><li><code>canberra</code></li><li><code>earthMovers</code></li><li><code>haversineMeters</code> (Geospatial distance measure)</li></ul></div>
+<div class="ulist"><ul><li><p><code>euclidean</code> (default)</p></li><li><p><code>manhattan</code></p></li><li><p><code>canberra</code></p></li><li><p><code>earthMovers</code></p></li><li><p><code>haversineMeters</code> (Geospatial distance measure)</p></li></ul></div>
 <p>The distance measure functions can be used with all machine learning functions
 that support distance measures.</p>
 <p>Below is an example for computing Euclidean distance for two numeric arrays:</p>
@@ -2148,7 +2143,7 @@ k-nearest neighbors of a search vector.
 returns a matrix of the k-nearest neighbors.</p>
 <p>The <code>knn</code> function supports changing of the distance measure by providing one of these
 distance measure functions as the fourth parameter:</p>
-<div class="ulist"><ul><li><code>euclidean</code> (Default)</li><li><code>manhattan</code></li><li><code>canberra</code></li><li><code>earthMovers</code></li></ul></div>
+<div class="ulist"><ul><li><p><code>euclidean</code> (Default)</p></li><li><p><code>manhattan</code></p></li><li><p><code>canberra</code></p></li><li><p><code>earthMovers</code></p></li></ul></div>
 <p>The example below builds on the clustering examples to demonstrate the <code>knn</code> function.</p>
 <div class="listingblock"><pre class="rouge highlight"><code class="language-text" data-lang="text"><pre class="highlight"><code>let(a=select(random(collection3, q="body:oil", rows="500", fl="id, body"),
                     id,
@@ -2348,7 +2343,7 @@ function to the <code>knnRegress</code>
             <div class="row">
                 <div class="col-lg-12 footer">
                &copy;2020 Apache Software Foundation. All rights reserved. <br />
- Site Version: 8.6-DRAFT <br />Site last generated: 2020-07-08 <br />
+ Site Version: 8.6 <br />Site last generated: 2020-07-15 <br />
 <p><img src="images/solr-sunOnly-small.png" alt="Apache Solr"/></p>
                 </div>
             </div>