Skip to content

Commit 4321b24

Browse files
committed
Merge remote-tracking branch 'origin/master' into snapshot-lifecycle-management
2 parents 1f5811b + d96e71d commit 4321b24

File tree

72 files changed

+672
-256
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

72 files changed

+672
-256
lines changed

build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ plugins {
3232
id 'com.gradle.build-scan' version '2.0.2'
3333
id 'base'
3434
}
35-
if (properties.get("org.elasticsearch.acceptScanTOS", "false") == "true") {
35+
if (Boolean.valueOf(project.findProperty('org.elasticsearch.acceptScanTOS') ?: "false")) {
3636
buildScan {
3737
termsOfServiceUrl = 'https://gradle.com/terms-of-service'
3838
termsOfServiceAgree = 'yes'

buildSrc/build.gradle

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -232,6 +232,11 @@ if (project != rootProject) {
232232
if (isLuceneSnapshot) {
233233
systemProperty 'test.lucene-snapshot-revision', isLuceneSnapshot[0][1]
234234
}
235+
String defaultParallel = System.getProperty('tests.jvms', project.rootProject.ext.defaultParallel)
236+
if (defaultParallel == "auto") {
237+
defaultParallel = Math.max(Runtime.getRuntime().availableProcessors(), 4)
238+
}
239+
maxParallelForks defaultParallel as Integer
235240
}
236241
check.dependsOn(integTest)
237242

buildSrc/src/main/java/org/elasticsearch/gradle/testfixtures/TestFixturesPlugin.java

Lines changed: 23 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,8 @@ public void apply(Project project) {
7171
pullFixture.setEnabled(false);
7272
return;
7373
}
74+
preProcessFixture.onlyIf(spec -> buildFixture.getEnabled());
75+
postProcessFixture.onlyIf(spec -> buildFixture.getEnabled());
7476

7577
project.apply(spec -> spec.plugin(BasePlugin.class));
7678
project.apply(spec -> spec.plugin(DockerComposePlugin.class));
@@ -94,21 +96,26 @@ public void apply(Project project) {
9496
(name, port) -> postProcessFixture.getExtensions()
9597
.getByType(ExtraPropertiesExtension.class).set(name, port)
9698
);
99+
extension.fixtures.add(project);
97100
}
98101

99-
extension.fixtures.all(fixtureProject -> project.evaluationDependsOn(fixtureProject.getPath()));
102+
extension.fixtures
103+
.matching(fixtureProject -> fixtureProject.equals(project) == false)
104+
.all(fixtureProject -> project.evaluationDependsOn(fixtureProject.getPath()));
105+
106+
conditionTaskByType(tasks, extension, getTaskClass("com.carrotsearch.gradle.junit4.RandomizedTestingTask"));
107+
conditionTaskByType(tasks, extension, getTaskClass("org.elasticsearch.gradle.test.RestIntegTestTask"));
108+
conditionTaskByType(tasks, extension, TestingConventionsTasks.class);
109+
conditionTaskByType(tasks, extension, ComposeUp.class);
110+
100111
if (dockerComposeSupported(project) == false) {
101112
project.getLogger().warn(
102113
"Tests for {} require docker-compose at /usr/local/bin/docker-compose or /usr/bin/docker-compose " +
103114
"but none could be found so these will be skipped", project.getPath()
104115
);
105-
disableTaskByType(tasks, getTaskClass("com.carrotsearch.gradle.junit4.RandomizedTestingTask"));
106-
disableTaskByType(tasks, getTaskClass("org.elasticsearch.gradle.test.RestIntegTestTask"));
107-
// conventions are not honored when the tasks are disabled
108-
disableTaskByType(tasks, TestingConventionsTasks.class);
109-
disableTaskByType(tasks, ComposeUp.class);
110116
return;
111117
}
118+
112119
tasks.withType(getTaskClass("com.carrotsearch.gradle.junit4.RandomizedTestingTask"), task ->
113120
extension.fixtures.all(fixtureProject -> {
114121
fixtureProject.getTasks().matching(it -> it.getName().equals("buildFixture")).all(buildFixture ->
@@ -128,6 +135,16 @@ public void apply(Project project) {
128135

129136
}
130137

138+
private void conditionTaskByType(TaskContainer tasks, TestFixtureExtension extension, Class<? extends DefaultTask> taskClass) {
139+
tasks.withType(
140+
taskClass,
141+
task -> task.onlyIf(spec ->
142+
extension.fixtures.stream()
143+
.anyMatch(fixtureProject -> fixtureProject.getTasks().getByName("buildFixture").getEnabled() == false) == false
144+
)
145+
);
146+
}
147+
131148
private void configureServiceInfoForTask(Task task, Project fixtureProject, BiConsumer<String, Integer> consumer) {
132149
// Configure ports for the tests as system properties.
133150
// We only know these at execution time so we need to do it in doFirst

distribution/archives/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,10 +54,10 @@ CopySpec archiveFiles(CopySpec modulesFiles, String distributionType, String pla
5454
into('config') {
5555
dirMode 0750
5656
fileMode 0660
57-
with configFiles(distributionType, oss)
57+
with configFiles(distributionType, oss, jdk)
5858
}
5959
into('bin') {
60-
with binFiles(distributionType, oss)
60+
with binFiles(distributionType, oss, jdk)
6161
}
6262
if (jdk) {
6363
into('jdk') {

distribution/build.gradle

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -321,13 +321,13 @@ configure(subprojects.findAll { ['archives', 'packages'].contains(it.name) }) {
321321
from project(':distribution').buildTransportModules
322322
}
323323

324-
configFiles = { distributionType, oss ->
324+
configFiles = { distributionType, oss, jdk ->
325325
copySpec {
326326
with copySpec {
327327
// main config files, processed with distribution specific substitutions
328328
from '../src/config'
329329
exclude 'log4j2.properties' // this is handled separately below
330-
MavenFilteringHack.filter(it, expansionsForDistribution(distributionType, oss))
330+
MavenFilteringHack.filter(it, expansionsForDistribution(distributionType, oss, jdk))
331331
}
332332
if (oss) {
333333
from project(':distribution').buildOssLog4jConfig
@@ -339,23 +339,23 @@ configure(subprojects.findAll { ['archives', 'packages'].contains(it.name) }) {
339339
}
340340
}
341341

342-
binFiles = { distributionType, oss ->
342+
binFiles = { distributionType, oss, jdk ->
343343
copySpec {
344344
// non-windows files, for all distributions
345345
with copySpec {
346346
from '../src/bin'
347347
exclude '*.exe'
348348
exclude '*.bat'
349349
eachFile { it.setMode(0755) }
350-
MavenFilteringHack.filter(it, expansionsForDistribution(distributionType, oss))
350+
MavenFilteringHack.filter(it, expansionsForDistribution(distributionType, oss, jdk))
351351
}
352352
// windows files, only for zip
353353
if (distributionType == 'zip') {
354354
with copySpec {
355355
from '../src/bin'
356356
include '*.bat'
357357
filter(FixCrLfFilter, eol: FixCrLfFilter.CrLf.newInstance('crlf'))
358-
MavenFilteringHack.filter(it, expansionsForDistribution(distributionType, oss))
358+
MavenFilteringHack.filter(it, expansionsForDistribution(distributionType, oss, jdk))
359359
}
360360
with copySpec {
361361
from '../src/bin'
@@ -452,7 +452,7 @@ task run(type: RunTask) {
452452
* </dl>
453453
*/
454454
subprojects {
455-
ext.expansionsForDistribution = { distributionType, oss ->
455+
ext.expansionsForDistribution = { distributionType, oss, jdk ->
456456
final String defaultHeapSize = "1g"
457457
final String packagingPathData = "path.data: /var/lib/elasticsearch"
458458
final String pathLogs = "/var/log/elasticsearch"
@@ -545,6 +545,10 @@ subprojects {
545545
'zip': 'zip'
546546
],
547547

548+
'es.bundled_jdk': [
549+
'def': jdk ? 'true' : 'false'
550+
],
551+
548552
'license.name': [
549553
'deb': oss ? 'ASL-2.0' : 'Elastic-License'
550554
],

distribution/packages/build.gradle

Lines changed: 18 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -61,23 +61,23 @@ buildscript {
6161
}
6262
}
6363

64-
void addProcessFilesTask(String type, boolean oss) {
65-
String packagingFiles = "build/packaging/${ oss ? 'oss-' : ''}${type}"
64+
void addProcessFilesTask(String type, boolean oss, boolean jdk) {
65+
String packagingFiles = "build/packaging/${oss ? 'oss-' : ''}${jdk ? '' : 'no-jdk-'}${type}"
6666

67-
String taskName = "process${oss ? 'Oss' : ''}${type.capitalize()}Files"
67+
String taskName = "process${oss ? 'Oss' : ''}${jdk ? '' : 'NoJdk'}${type.capitalize()}Files"
6868
task(taskName, type: Copy) {
6969
into packagingFiles
7070

7171
with copySpec {
7272
from 'src/common'
7373
from "src/${type}"
74-
MavenFilteringHack.filter(it, expansionsForDistribution(type, oss))
74+
MavenFilteringHack.filter(it, expansionsForDistribution(type, oss, jdk))
7575
}
7676

7777
into('etc/elasticsearch') {
78-
with configFiles(type, oss)
78+
with configFiles(type, oss, jdk)
7979
}
80-
MavenFilteringHack.filter(it, expansionsForDistribution(type, oss))
80+
MavenFilteringHack.filter(it, expansionsForDistribution(type, oss, jdk))
8181

8282
doLast {
8383
// create empty dirs, we set the permissions when configuring the packages
@@ -91,17 +91,21 @@ void addProcessFilesTask(String type, boolean oss) {
9191
}
9292
}
9393
}
94-
addProcessFilesTask('deb', true)
95-
addProcessFilesTask('deb', false)
96-
addProcessFilesTask('rpm', true)
97-
addProcessFilesTask('rpm', false)
94+
addProcessFilesTask('deb', true, true)
95+
addProcessFilesTask('deb', true, false)
96+
addProcessFilesTask('deb', false, true)
97+
addProcessFilesTask('deb', false, false)
98+
addProcessFilesTask('rpm', true, true)
99+
addProcessFilesTask('rpm', true, false)
100+
addProcessFilesTask('rpm', false, true)
101+
addProcessFilesTask('rpm', false, false)
98102

99103
// Common configuration that is package dependent. This can't go in ospackage
100104
// since we have different templated files that need to be consumed, but the structure
101105
// is the same
102106
Closure commonPackageConfig(String type, boolean oss, boolean jdk) {
103107
return {
104-
dependsOn "process${oss ? 'Oss' : ''}${type.capitalize()}Files"
108+
dependsOn "process${oss ? 'Oss' : ''}${jdk ? '' : 'NoJdk'}${type.capitalize()}Files"
105109
packageName "elasticsearch${oss ? '-oss' : ''}"
106110
arch (type == 'deb' ? 'amd64' : 'X86_64')
107111
// Follow elasticsearch's file naming convention
@@ -110,7 +114,7 @@ Closure commonPackageConfig(String type, boolean oss, boolean jdk) {
110114

111115
String prefix = "${oss ? 'oss-' : ''}${jdk ? '' : 'no-jdk-'}${type}"
112116
destinationDir = file("${prefix}/build/distributions")
113-
String packagingFiles = "build/packaging/${oss ? 'oss-' : ''}${type}"
117+
String packagingFiles = "build/packaging/${oss ? 'oss-' : ''}${jdk ? '' : 'no-jdk-'}${type}"
114118

115119
String scripts = "${packagingFiles}/scripts"
116120
preInstall file("${scripts}/preinst")
@@ -125,7 +129,7 @@ Closure commonPackageConfig(String type, boolean oss, boolean jdk) {
125129
// specify it again explicitly for copying common files
126130
into('/usr/share/elasticsearch') {
127131
into('bin') {
128-
with binFiles(type, oss)
132+
with binFiles(type, oss, jdk)
129133
}
130134
from(rootProject.projectDir) {
131135
include 'README.textile'
@@ -202,7 +206,7 @@ Closure commonPackageConfig(String type, boolean oss, boolean jdk) {
202206
createDirectoryEntry true
203207
fileType CONFIG | NOREPLACE
204208
}
205-
String envFile = expansionsForDistribution(type, false)['path.env']
209+
String envFile = expansionsForDistribution(type, oss, jdk)['path.env']
206210
configurationFile envFile
207211
into(new File(envFile).getParent()) {
208212
fileType CONFIG | NOREPLACE

distribution/src/bin/elasticsearch

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ if ! echo $* | grep -E '(^-d |-d$| -d |--daemonize$|--daemonize )' > /dev/null;
2929
-Des.path.conf="$ES_PATH_CONF" \
3030
-Des.distribution.flavor="$ES_DISTRIBUTION_FLAVOR" \
3131
-Des.distribution.type="$ES_DISTRIBUTION_TYPE" \
32+
-Des.bundled_jdk="$ES_BUNDLED_JDK" \
3233
-cp "$ES_CLASSPATH" \
3334
org.elasticsearch.bootstrap.Elasticsearch \
3435
"$@"
@@ -40,6 +41,7 @@ else
4041
-Des.path.conf="$ES_PATH_CONF" \
4142
-Des.distribution.flavor="$ES_DISTRIBUTION_FLAVOR" \
4243
-Des.distribution.type="$ES_DISTRIBUTION_TYPE" \
44+
-Des.bundled_jdk="$ES_BUNDLED_JDK" \
4345
-cp "$ES_CLASSPATH" \
4446
org.elasticsearch.bootstrap.Elasticsearch \
4547
"$@" \

distribution/src/bin/elasticsearch-env

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,7 @@ ES_PATH_CONF=`cd "$ES_PATH_CONF"; pwd`
8282

8383
ES_DISTRIBUTION_FLAVOR=${es.distribution.flavor}
8484
ES_DISTRIBUTION_TYPE=${es.distribution.type}
85+
ES_BUNDLED_JDK=${es.bundled_jdk}
8586

8687
if [ -z "$ES_TMPDIR" ]; then
8788
ES_TMPDIR=`"$JAVA" -cp "$ES_CLASSPATH" org.elasticsearch.tools.launchers.TempDirectory`

distribution/src/bin/elasticsearch-env.bat

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ for %%I in ("%ES_PATH_CONF%..") do set ES_PATH_CONF=%%~dpfI
2727

2828
set ES_DISTRIBUTION_FLAVOR=${es.distribution.flavor}
2929
set ES_DISTRIBUTION_TYPE=${es.distribution.type}
30+
set ES_BUNDLED_JDK=${es.bundled_jdk}
3031

3132
cd /d "%ES_HOME%"
3233

distribution/src/bin/elasticsearch-service.bat

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -167,7 +167,7 @@ if "%JVM_SS%" == "" (
167167
goto:eof
168168
)
169169

170-
set ES_PARAMS=-Delasticsearch;-Des.path.home="%ES_HOME%";-Des.path.conf="%ES_PATH_CONF%";-Des.distribution.flavor="%ES_DISTRIBUTION_FLAVOR%";-Des.distribution.type="%ES_DISTRIBUTION_TYPE%"
170+
set ES_PARAMS=-Delasticsearch;-Des.path.home="%ES_HOME%";-Des.path.conf="%ES_PATH_CONF%";-Des.distribution.flavor="%ES_DISTRIBUTION_FLAVOR%";-Des.distribution.type="%ES_DISTRIBUTION_TYPE%";-Des.bundled_jdk="%ES_BUNDLED_JDK%"
171171

172172
if "%ES_START_TYPE%" == "" set ES_START_TYPE=manual
173173
if "%ES_STOP_TIMEOUT%" == "" set ES_STOP_TIMEOUT=0

distribution/src/bin/elasticsearch.bat

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ if "%MAYBE_JVM_OPTIONS_PARSER_FAILED%" == "jvm_options_parser_failed" (
5050
exit /b 1
5151
)
5252

53-
%JAVA% %ES_JAVA_OPTS% -Delasticsearch -Des.path.home="%ES_HOME%" -Des.path.conf="%ES_PATH_CONF%" -Des.distribution.flavor="%ES_DISTRIBUTION_FLAVOR%" -Des.distribution.type="%ES_DISTRIBUTION_TYPE%" -cp "%ES_CLASSPATH%" "org.elasticsearch.bootstrap.Elasticsearch" !newparams!
53+
%JAVA% %ES_JAVA_OPTS% -Delasticsearch -Des.path.home="%ES_HOME%" -Des.path.conf="%ES_PATH_CONF%" -Des.distribution.flavor="%ES_DISTRIBUTION_FLAVOR%" -Des.distribution.type="%ES_DISTRIBUTION_TYPE%" -Des.bundled_jd="%ES_BUNDLED_JDK%" -cp "%ES_CLASSPATH%" "org.elasticsearch.bootstrap.Elasticsearch" !newparams!
5454

5555
endlocal
5656
endlocal

docs/reference/cluster/stats.asciidoc

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -155,10 +155,12 @@ Will return, for example:
155155
"max_uptime_in_millis": 13737,
156156
"versions": [
157157
{
158-
"version": "1.8.0_74",
159-
"vm_name": "Java HotSpot(TM) 64-Bit Server VM",
160-
"vm_version": "25.74-b02",
158+
"version": "12",
159+
"vm_name": "OpenJDK 64-Bit Server VM",
160+
"vm_version": "12+33",
161161
"vm_vendor": "Oracle Corporation",
162+
"bundled_jdk": true,
163+
"using_bundled_jdk": true,
162164
"count": 1
163165
}
164166
],
@@ -200,6 +202,7 @@ Will return, for example:
200202
// TESTRESPONSE[s/"plugins": \[[^\]]*\]/"plugins": $body.$_path/]
201203
// TESTRESPONSE[s/"network_types": \{[^\}]*\}/"network_types": $body.$_path/]
202204
// TESTRESPONSE[s/"discovery_types": \{[^\}]*\}/"discovery_types": $body.$_path/]
205+
// TESTRESPONSE[s/: true|false/: $body.$_path/]
203206
// TESTRESPONSE[s/: (\-)?[0-9]+/: $body.$_path/]
204207
// TESTRESPONSE[s/: "[^"]*"/: $body.$_path/]
205208
// These replacements do a few things:

docs/reference/getting-started.asciidoc

Lines changed: 13 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -114,34 +114,33 @@ https://www.elastic.co/cloud/elasticsearch-service/signup[Try out the
114114
Elasticsearch Service for free].
115115
==============
116116

117-
Elasticsearch requires at least Java 8. Specifically as of this writing, it is recommended that you use the Oracle JDK version {jdk}. Java installation varies from platform to platform so we won't go into those details here. Oracle's recommended installation documentation can be found on http://docs.oracle.com/javase/8/docs/technotes/guides/install/install_overview.html[Oracle's website]. Suffice to say, before you install Elasticsearch, please check your Java version first by running (and then install/upgrade accordingly if needed):
117+
NOTE: Elasticsearch includes a bundled version of http://openjdk.java.net[OpenJDK]
118+
from the JDK maintainers (GPLv2+CE). To use your own version of Java,
119+
see the <<jvm-version, JVM version requirements>>
118120

119-
[source,sh]
120-
--------------------------------------------------
121-
java -version
122-
echo $JAVA_HOME
123-
--------------------------------------------------
124-
125-
Once we have Java set up, we can then download and run Elasticsearch. The binaries are available from http://www.elastic.co/downloads[`www.elastic.co/downloads`] along with all the releases that have been made in the past. For each release, you have a choice among a `zip` or `tar` archive, a `DEB` or `RPM` package, or a Windows `MSI` installation package.
121+
The binaries are available from http://www.elastic.co/downloads[`www.elastic.co/downloads`]
122+
along with all the releases that have been made in the past. For each release, platform
123+
dependent archive versions are available for Windows, Linux and MacOS, as well as `DEB` and `RPM`
124+
packages for Linux, and `MSI` installation packages for Windows.
126125

127126
[float]
128-
=== Installation example with tar
127+
=== Installation example on Linux
129128

130-
For simplicity, let's use the {ref}/zip-targz.html[tar] file.
129+
For simplicity, let's use the {ref}/targz.html[tar] file.
131130

132-
Let's download the Elasticsearch {version} tar as follows:
131+
Let's download the Elasticsearch {version} Linux tar as follows:
133132

134133
["source","sh",subs="attributes,callouts"]
135134
--------------------------------------------------
136-
curl -L -O https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-{version}.tar.gz
135+
curl -L -O https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-{version}-linux-x86_64.tar.gz
137136
--------------------------------------------------
138137
// NOTCONSOLE
139138

140139
Then extract it as follows:
141140

142141
["source","sh",subs="attributes,callouts"]
143142
--------------------------------------------------
144-
tar -xvf elasticsearch-{version}.tar.gz
143+
tar -xvf elasticsearch-{version}-linux-x86_64.tar.gz
145144
--------------------------------------------------
146145

147146
It will then create a bunch of files and folders in your current directory. We then go into the bin directory as follows:
@@ -172,7 +171,7 @@ Then double-click the downloaded file to launch the GUI. Within the first screen
172171
image::images/msi_installer/msi_installer_locations.png[]
173172

174173
Then select whether to install as a service or start Elasticsearch manually as needed.
175-
To align with the tar example, choose not to install as a service:
174+
To align with the Linux example, choose not to install as a service:
176175

177176
[[getting-started-msi-installer-service]]
178177
image::images/msi_installer/msi_installer_no_service.png[]

docs/reference/index-modules/similarity.asciidoc

Lines changed: 5 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -92,22 +92,14 @@ from randomness] framework. This similarity has the following options:
9292

9393
[horizontal]
9494
`basic_model`::
95-
Possible values: {lucene-core-javadoc}/org/apache/lucene/search/similarities/BasicModelG.html[`be`],
96-
{lucene-core-javadoc}/org/apache/lucene/search/similarities/BasicModelD.html[`d`],
97-
{lucene-core-javadoc}/org/apache/lucene/search/similarities/BasicModelG.html[`g`],
95+
Possible values: {lucene-core-javadoc}/org/apache/lucene/search/similarities/BasicModelG.html[`g`],
9896
{lucene-core-javadoc}/org/apache/lucene/search/similarities/BasicModelIF.html[`if`],
99-
{lucene-core-javadoc}/org/apache/lucene/search/similarities/BasicModelIn.html[`in`],
100-
{lucene-core-javadoc}/org/apache/lucene/search/similarities/BasicModelIne.html[`ine`] and
101-
{lucene-core-javadoc}/org/apache/lucene/search/similarities/BasicModelP.html[`p`].
102-
103-
`be`, `d` and `p` should be avoided in practice as they might return scores that
104-
are equal to 0 or infinite with terms that do not meet the expected random
105-
distribution.
97+
{lucene-core-javadoc}/org/apache/lucene/search/similarities/BasicModelIn.html[`in`] and
98+
{lucene-core-javadoc}/org/apache/lucene/search/similarities/BasicModelIne.html[`ine`].
10699

107100
`after_effect`::
108-
Possible values: {lucene-core-javadoc}/org/apache/lucene/search/similarities/AfterEffect.NoAfterEffect.html[`no`],
109-
{lucene-core-javadoc}/org/apache/lucene/search/similarities/AfterEffectB.html[`b`] and
110-
{lucene-core-javadoc}/org/apache/lucene/search/similarities/AfterEffectL.html[`l`].
101+
Possible values: {lucene-core-javadoc}/org/apache/lucene/search/similarities/AfterEffectB.html[`b`] and
102+
{lucene-core-javadoc}/org/apache/lucene/search/similarities/AfterEffectB.html[`l`].
111103

112104
`normalization`::
113105
Possible values: {lucene-core-javadoc}/org/apache/lucene/search/similarities/Normalization.NoNormalization.html[`no`],

0 commit comments

Comments
 (0)