Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
132 commits
Select commit Hold shift + click to select a range
37c224b
SOLR-13742: Allow optional redaction of data saved by 'bin/solr autos…
sigram Sep 7, 2019
a7820b3
SOLR-13742: temporarily disable this assertion while I investigate je…
sigram Sep 7, 2019
252421b
LUCENE-8620: Update Tessellator logic to label if triangle edges belo…
iverase Sep 9, 2019
b1bccf7
SOLR-13677: reverting the last commit
noblepaul Sep 8, 2019
4af601e
SOLR-13713: JWTAuthPlugin to support multiple JWKS endpoints
janhoy Sep 10, 2019
bb5f4dd
LUCENE-8964: Fix geojson shape parsing on string arrays in properties…
spinscale Sep 10, 2019
5350a05
LUCENE-8968: Improve performance of WITHIN and DISJOINT queries for S…
iverase Sep 10, 2019
32d6f39
LUCENE-8971: Enable constructing JapaneseTokenizer with custom dictio…
Sep 6, 2019
3120409
Fix TestSnapshotCloudManager test bug: file handle leak
hossman Sep 11, 2019
d90e6f8
CloudExitableDirectoryReaderTest improvements
hossman Sep 11, 2019
656cb2b
LUCENE-8976: Use exact distance between point and bounding rectangle …
iverase Sep 12, 2019
bc60ea0
LUCENE-8968: Remove left-over line of code.
iverase Sep 12, 2019
ca25f9f
SOLR-13714: Correct refguide regarding shardHandlerFactory solrconfig…
magibney Sep 12, 2019
89c54ec
LTR Test Hardening:
hossman Sep 13, 2019
c4815f0
LUCENE-8966: The Korean analyzer now splits tokens on boundaries betw…
jimczi Sep 13, 2019
ad6d73b
Changing keyset() to entryset() and sometines values(). (#868)
KoenDG Sep 13, 2019
55d9290
LUCENE-8939: Introduce Shared Count Early Termination In Parallel Sea…
atris Sep 5, 2019
f56aacd
SOLR-13739: Optimized large managed schema modifications
thomaswoeckinger Sep 13, 2019
a5b5585
SOLR-13238: BlobHandler generates non-padded md5
janhoy Sep 14, 2019
f12a652
SOLR-13622: Fix file-handle leak
gerlowskija Sep 14, 2019
2f701c6
SOLR-9658: Max idle time support for SolrCache implementations.
sigram Sep 16, 2019
d3671fd
SOLR-13159: Add a warning about DNS resolution in SolrCloud clusters.
sigram Sep 16, 2019
fce0a5d
SOLR-13767: Upgrade jackson to 2.9.9 (#886)
janhoy Sep 16, 2019
48307b5
LUCENE-8981: update Kuromoji javadocs, adding experimental tags to Di…
Sep 16, 2019
a80534a
LUCENE-8921: IndexSearcher.termStatistics API change
bruno-roustant Sep 17, 2019
4e20227
LUCENE-8981: fix typo in javadoc that breaks precommit
dsmiley Sep 17, 2019
91f5d2f
LUCENE:8945: Allow to change the output file delimiter on Luke "expor…
shahamish150294 Sep 18, 2019
84bf86f
SOLR-13763: Improve the tracking of "freedisk" in autoscaling simulat…
sigram Sep 18, 2019
b9633e0
SOLR-13773: Prometheus Exporter GC and Heap options (#887) (#890)
anshumg Sep 18, 2019
d50085f
SOLR-13763: Ignore freedisk changes in a live simulator created from …
sigram Sep 18, 2019
a7865cd
SOLR-13734 JWTAuthPlugin to support multiple issuers (#860)
janhoy Sep 19, 2019
8c308a9
SOLR-13779: Use the safe fork of simple-xml for clustering contrib
dweiss Sep 19, 2019
be5e297
SOLR-13781: AwaitsFix TestContainerReqHandler.testPackageAPI
hossman Sep 20, 2019
393d197
SOLR-13638: Add debug,trace RBAP logging (#894)
gerlowskija Sep 20, 2019
31aa08a
SOLR-13780: fix ClassCastException in NestableJsonFacet
munendrasn Sep 21, 2019
b7a4665
SOLR-13725: allow negative values for limit in TermsFacetMap
munendrasn Sep 21, 2019
230c6bf
SOLR-13272: add support for arbitrary ranges in JSON Range faceting
munendrasn Sep 21, 2019
b1fc4bb
SOLR-11492 - clean up /solr/cloud-dev and add a well documented script.
gus-asf Sep 21, 2019
8e2a050
SOLR-13786: AwaitsFix SolrExporterIntegrationTest
hossman Sep 23, 2019
f439091
SOLR-13022: validate sort parameters in JSON facet after parsing
munendrasn Sep 25, 2019
74cface
SOLR-13784: EmbeddedSolrServer coreName optional
dsmiley Sep 25, 2019
3c3d5b1
LUCENE-8984: MoreLikeThis MLT is biased for uncommon fields (#871) (#…
anshumg Sep 25, 2019
d233036
SOLR-13272: add documentation for arbitrary range in JSON facet
munendrasn Sep 26, 2019
4df2702
LUCENE-8980: Blocktree seekExact now checks min-max range of the segment
johngqjiang Sep 26, 2019
e979255
SOLR-13747: New TestSSLTestConfig.testFailIfUserRunsTestsWithJVMThatH…
hossman Sep 26, 2019
971b5d5
SOLR-13399: add SPLITSHARD splitByPrefix docs (#903)
yonik Sep 27, 2019
9586396
SOLR-13180: fix classCastEx in JSON Request API
munendrasn Sep 28, 2019
b7ce53d
SOLR-13417: handle stats on date/str fields in solrj's JSON facet resp
munendrasn Sep 28, 2019
d353c19
SOLR-13712: JMX MBeans are not exposed because of race condition betw…
shalinmangar Sep 29, 2019
e689268
:SOLR-13454: Investigate ReindexCollectionTest failures, added more s…
Sep 29, 2019
c27b850
SOLR-13632: Support integral plots, cosine distance and string trunca…
joel-bernstein Sep 29, 2019
82fb024
SOLR-13632: Fix precommit
joel-bernstein Sep 29, 2019
5c86039
SOLR-13632,SOLR-13667,SOLR-13625: Update CHANGES.txt
joel-bernstein Sep 30, 2019
494d823
SOLR-13798: SSL: Adding Enabling/Disabling client's hostname verifica…
CaoManhDat Sep 30, 2019
3559e44
Minor logging improvements
hossman Sep 30, 2019
b919f34
SOLR-13771: Add -v and -m to ulimit section of reference guide and bi…
Sep 30, 2019
2f0dc88
SOLR-13771: Add -v and -m to ulimit section of reference guide and b…
Sep 30, 2019
1ee5319
SOLR-13802: Write analyzer property luceneMatchVersion to managed schema
thomaswoeckinger Oct 1, 2019
4a015e2
LUCENE-8993: Change all repository references in Maven POM files to H…
uschindler Oct 1, 2019
016b176
Fixing link to Lucene Java Bugs page (#909)
aadel Oct 2, 2019
18bf615
SOLR-13811: Refactor AutoAddReplicasIntegrationTest to isolate proble…
hossman Oct 2, 2019
2abc1d4
SOLR-13813: SHARED: add basic test for online shard splitting
yonik Oct 2, 2019
60b9ec0
LUCENE-8991: disable java.util.HashMap assertions to avoid spurious v…
hossman Oct 2, 2019
9d21418
LUCENE-8993: Also update to latest version of Apache Parent POM
uschindler Oct 3, 2019
8009710
LUCENE-8860: add additional leaf node level optimizations in LatLonSh…
imotov Oct 4, 2019
ae80c18
SOLR-8241: Add CaffeineCache, an efficient implementation of SolrCache.
sigram Oct 4, 2019
e4ceb97
LUCENE-8990: Add estimateDocCount(visitor) method to PointValues (#905)
iverase Oct 4, 2019
03facaa
SOLR-13791: Remove remaining Commons BeanUtils references. (Andras Sa…
cpoerschke Oct 4, 2019
e734b40
SOLR-13812: Add javadocs, uneven rejection and basic test coverage fo…
cpoerschke Oct 4, 2019
95e5419
SOLR-13795: Managed schema should do a core reload in standalone mode.
thomaswoeckinger Oct 4, 2019
0299e4c
LUCENE-8998: Fix OverviewImplTest.testIsOptimized reproducible failure
mocobeta Oct 5, 2019
af2fe8f
SOLR-13661: Reverting all half-baked stuff from SOLR-13707, SOLR-1365…
Oct 6, 2019
67de998
SOLR-13719: introducing SolrClient.ping(collection)
mkhludnev Oct 6, 2019
bb3d4e4
SOLR-13787: An annotation based system to write v2 APIs
noblepaul Oct 6, 2019
888fe76
String#isBlank() is java 11 API
noblepaul Oct 6, 2019
7d4751e
SOLR-13298: Allow zplot to plot matrices
joel-bernstein Oct 7, 2019
f3c50f9
Fix test bug in TestFeatureSort.testDuelFloat.
jpountz Oct 7, 2019
a20ab05
LUCENE-8999: LuceneTestCase.expectThrows now propogates assert/assump…
hossman Oct 7, 2019
c9ba63d
SOLR-13820: Improve RBAP documentation (#924)
gerlowskija Oct 7, 2019
611966e
SOLR-13790: LRUStatsCache size explosion and ineffective caching.
sigram Oct 7, 2019
48e19ab
LUCENE-8991: disable HashMap assertions (by default) on java9 and jav…
hossman Oct 7, 2019
20e3829
SOLR-13539: Introduce EmbeddedSolrServerTestBase
gerlowskija Aug 29, 2019
f74edc6
SOLR-13539: Improve atomic-update test coverage
gerlowskija Oct 7, 2019
5dc480f
SOLR-13539: Fix MV removeregex atomic-updates
gerlowskija Oct 7, 2019
8d040bf
Fix atomic-update test failures
gerlowskija Oct 7, 2019
f19aaa8
SOLR-13821: Package Store for storing package artifacts (#929)
noblepaul Oct 8, 2019
47aece6
SOLR-13376: Multi-node race condition to create/remove nodeLost markers.
sigram Oct 8, 2019
04eff58
SOLR-13821: missing package-info.java
noblepaul Oct 9, 2019
20dbf8f
SOLR-13293: ConcurrentUpdateHttp2SolrClient always log AsynchronousCl…
CaoManhDat Oct 9, 2019
46e2da8
SOLR-13293: Fix compile error on Java 8
CaoManhDat Oct 10, 2019
b871d8c
SOLR-13820: Small corrections to Rule-Based Auth docs
gerlowskija Oct 10, 2019
3ce0fc3
SOLR-13821: Incorrect file path escape in windows
noblepaul Oct 11, 2019
277e098
SOLR-13760 - restore viability of date math in TRA start property (#879)
gus-asf Oct 10, 2019
821d306
SOLR-13829: RecursiveEvaluator casts Continuous numbers to Discrete N…
joel-bernstein Oct 11, 2019
dacda33
SOLR-13828: Improve ExecutePlanAction error handling.
sigram Oct 10, 2019
30feba4
SOLR-13829: Update CHANGES.txt
joel-bernstein Oct 11, 2019
6d59d9d
SOLR-13787: Support for Payload<T> as 3rd param
noblepaul Oct 11, 2019
503fe7e
SOLR-13815: fix live split data loss due to cluster state change betw…
yonik Oct 11, 2019
4c67f16
SOLR-13787: Better error logging
noblepaul Oct 12, 2019
10d7df7
SOLR-13815: enhance live split test to fail more often
yonik Oct 13, 2019
f023961
LUCENE-8920: Disable direct addressing of arcs. (#950)
jpountz Oct 14, 2019
5667280
Ref Guide: Fix errant & empty style block throwing errors
ctargett Oct 15, 2019
f18f4bf
Revert "SOLR-13821: Incorrect file path escape in windows"
noblepaul Oct 15, 2019
08c2e4a
Revert "SOLR-13821: missing package-info.java"
noblepaul Oct 15, 2019
6bb4179
Revert "SOLR-13821: Package Store for storing package artifacts (#929)"
noblepaul Oct 15, 2019
7581c5d
SOLR-13665: Added missing netty dependencies to solrJ (#938)
janhoy Oct 15, 2019
4330311
SOLR-13793: Limiting number of forwards to total replicas in collecti…
Oct 15, 2019
f882d9a
SOLR-13834: ZkController#getSolrCloudManager() now uses the same ZkSt…
Oct 11, 2019
ead5902
Ref Guide: Upgrade Notes for 8.2 (neglected to do earlier)
ctargett Oct 15, 2019
a1a6592
Ref Guide: fix headline case, e.g & i.e, random spaces
ctargett Oct 15, 2019
0f9de26
Ref Guide: first pass at 8.3 upgrade notes
ctargett Oct 15, 2019
2f1d32d
SOLR-13849: Ignore events created by running triggers.
sigram Oct 16, 2019
0c8e767
Revert "LUCENE-8993: Also update to latest version of Apache Parent POM"
uschindler Oct 16, 2019
058d41b
Ref Guide: fix headline case
ctargett Oct 16, 2019
c198457
LUCENE-9005: BooleanQuery.visit() pulls subvisitors from a top-level …
romseygeek Oct 16, 2019
a27eabb
SOLR-12786: Update Ref Guide build tool versions & fix section links …
ctargett Oct 16, 2019
2f11fd4
SOLR-12786: add back explicit asciidoctor install for Jenkins build
ctargett Oct 16, 2019
b58695c
SOLR-13835 HttpSolrCall produces incorrect extra AuditEvent on Author…
janhoy Oct 16, 2019
25968e3
SOLR-13846: workaround - elliminate use of problematic PreemptiveBasi…
hossman Oct 15, 2019
b778cb9
SOLR-13843: The MOVEREPLICA API ignores replica type and always adds …
shalinmangar Oct 18, 2019
d796eca
SOLR-13677: All Metrics Gauges should be unregistered by components t…
sigram Oct 18, 2019
5245f1c
LUCENE-9022: Never cache GlobalOrdinalsWithScoreQuery (#963)
jimczi Oct 22, 2019
d5fab53
SOLR-12368: fix indent in changes entry
munendrasn Oct 22, 2019
6beac1d
LUCENE-9010: extend TopGroups.merge test coverage
cpoerschke Oct 22, 2019
0afe0b6
LUCENE-8996: maxScore was sometimes missing from distributed grouped …
cpoerschke Oct 23, 2019
788e88f
Revert "LUCENE-8996: maxScore was sometimes missing from distributed …
cpoerschke Oct 23, 2019
79dc140
SOLR-13855: DistributedZkUpdateProcessor needs to propagate URP.finish()
dsmiley Oct 23, 2019
2aa5869
SOLR-13677: Add a missing override, which resulted in missing metrics…
sigram Oct 24, 2019
89996f5
SOLR-13847: Fix docs for Metrics Trigger
ctargett Oct 25, 2019
57245e9
Merge branch 'branch_8_3' into jira/SOLR-13101
yonik Oct 28, 2019
619dde5
SOLR-13101: merge 8.3 branch
yonik Oct 29, 2019
0e66bec
SOLR-13101: disable SharedStorageSplitTest.testLiveSplit
yonik Oct 29, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
8 changes: 4 additions & 4 deletions dev-tools/maven/README.maven
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ A. How to use nightly Jenkins-built Lucene/Solr Maven artifacts
The most recently produced nightly Jenkins-built Lucene and Solr Maven
snapshot artifacts are available in the Apache Snapshot repository here:

http://repository.apache.org/snapshots
https://repository.apache.org/snapshots

An example POM snippet:

Expand All @@ -27,7 +27,7 @@ A. How to use nightly Jenkins-built Lucene/Solr Maven artifacts
<repository>
<id>apache.snapshots</id>
<name>Apache Snapshot Repository</name>
<url>http://repository.apache.org/snapshots</url>
<url>https://repository.apache.org/snapshots</url>
<releases>
<enabled>false</enabled>
</releases>
Expand Down Expand Up @@ -57,12 +57,12 @@ C. How to deploy Maven artifacts to a repository
as in B. above, with the addition of two system properties:

ant -Dm2.repository.id=my-repo-id \
-Dm2.repository.url=http://example.org/my/repo \
-Dm2.repository.url=https://example.org/my/repo \
generate-maven-artifacts

The repository ID given in the above command corresponds to a <server>
entry in either your ~/.m2/settings.xml or ~/.ant/settings.xml. See
<http://maven.apache.org/settings.html#Servers> for more information.
<https://maven.apache.org/settings.html#Servers> for more information.
(Note that as of version 2.1.3, Maven Ant Tasks cannot handle encrypted
passwords.)

Expand Down
20 changes: 10 additions & 10 deletions dev-tools/maven/pom.xml.template
Original file line number Diff line number Diff line change
Expand Up @@ -32,15 +32,15 @@
<packaging>pom</packaging>
<name>Grandparent POM for Apache Lucene Core and Apache Solr</name>
<description>Grandparent POM for Apache Lucene Core and Apache Solr</description>
<url>http://lucene.apache.org</url>
<url>https://lucene.apache.org</url>
<modules>
<module>lucene</module>
<module>solr</module>
</modules>
<properties>
<vc-anonymous-base-url>http://git-wip-us.apache.org/repos/asf/lucene-solr.git</vc-anonymous-base-url>
<vc-dev-base-url>https://git-wip-us.apache.org/repos/asf/lucene-solr.git</vc-dev-base-url>
<vc-browse-base-url>https://git1-us-west.apache.org/repos/asf?p=lucene-solr.git;a=tree</vc-browse-base-url>
<vc-anonymous-base-url>https://gitbox.apache.org/repos/asf/lucene-solr.git</vc-anonymous-base-url>
<vc-dev-base-url>https://gitbox.apache.org/repos/asf/lucene-solr.git</vc-dev-base-url>
<vc-browse-base-url>https://gitbox.apache.org/repos/asf?p=lucene-solr.git</vc-browse-base-url>
<specification.version>@spec.version@</specification.version>
<maven.build.timestamp.format>yyyy-MM-dd HH:mm:ss</maven.build.timestamp.format>
<java.compat.version>8</java.compat.version>
Expand Down Expand Up @@ -82,29 +82,29 @@
<subscribe>general-subscribe@lucene.apache.org</subscribe>
<unsubscribe>general-unsubscribe@lucene.apache.org</unsubscribe>
<archive>
http://mail-archives.apache.org/mod_mbox/lucene-general/
https://mail-archives.apache.org/mod_mbox/lucene-general/
</archive>
</mailingList>
<mailingList>
<name>Java User List</name>
<subscribe>java-user-subscribe@lucene.apache.org</subscribe>
<unsubscribe>java-user-unsubscribe@lucene.apache.org</unsubscribe>
<archive>
http://mail-archives.apache.org/mod_mbox/lucene-java-user/
https://mail-archives.apache.org/mod_mbox/lucene-java-user/
</archive>
</mailingList>
<mailingList>
<name>Java Developer List</name>
<subscribe>dev-subscribe@lucene.apache.org</subscribe>
<unsubscribe>dev-unsubscribe@lucene.apache.org</unsubscribe>
<archive>http://mail-archives.apache.org/mod_mbox/lucene-dev/</archive>
<archive>https://mail-archives.apache.org/mod_mbox/lucene-dev/</archive>
</mailingList>
<mailingList>
<name>Java Commits List</name>
<subscribe>commits-subscribe@lucene.apache.org</subscribe>
<unsubscribe>commits-unsubscribe@lucene.apache.org</unsubscribe>
<archive>
http://mail-archives.apache.org/mod_mbox/lucene-java-commits/
https://mail-archives.apache.org/mod_mbox/lucene-java-commits/
</archive>
</mailingList>
</mailingLists>
Expand All @@ -124,7 +124,7 @@
<repository>
<id>apache.snapshots</id>
<name>Apache Snapshot Repository</name>
<url>http://repository.apache.org/snapshots</url>
<url>https://repository.apache.org/snapshots</url>
<releases>
<enabled>false</enabled>
</releases>
Expand Down Expand Up @@ -264,7 +264,7 @@
<tempDir>.</tempDir>
<java.awt.headless>true</java.awt.headless>

<!-- See <http://wiki.apache.org/lucene-java/RunningTests>
<!-- See <https://cwiki.apache.org/confluence/display/lucene/RunningTests>
for a description of the tests.* system properties. -->

<!-- RandomizedTesting library system properties -->
Expand Down
10 changes: 5 additions & 5 deletions dev-tools/maven/solr/pom.xml.template
Original file line number Diff line number Diff line change
Expand Up @@ -55,21 +55,21 @@
<subscribe>solr-user-subscribe@lucene.apache.org</subscribe>
<unsubscribe>solr-user-unsubscribe@lucene.apache.org</unsubscribe>
<archive>
http://mail-archives.apache.org/mod_mbox/solr-user/
https://mail-archives.apache.org/mod_mbox/solr-user/
</archive>
</mailingList>
<mailingList>
<name>Java Developer List</name>
<subscribe>dev-subscribe@lucene.apache.org</subscribe>
<unsubscribe>dev-unsubscribe@lucene.apache.org</unsubscribe>
<archive>http://mail-archives.apache.org/mod_mbox/lucene-dev/</archive>
<archive>https://mail-archives.apache.org/mod_mbox/lucene-dev/</archive>
</mailingList>
<mailingList>
<name>Java Commits List</name>
<subscribe>commits-subscribe@lucene.apache.org</subscribe>
<unsubscribe>commits-unsubscribe@lucene.apache.org</unsubscribe>
<archive>
http://mail-archives.apache.org/mod_mbox/lucene-java-commits/
https://mail-archives.apache.org/mod_mbox/lucene-java-commits/
</archive>
</mailingList>
</mailingLists>
Expand All @@ -78,12 +78,12 @@
<repository>
<id>maven-restlet</id>
<name>Public online Restlet repository</name>
<url>http://maven.restlet.org</url>
<url>https://maven.restlet.com</url>
</repository>
<repository>
<id>releases.cloudera.com</id>
<name>Cloudera Releases</name>
<url>https://repository.cloudera.com/artifactory/libs-release</url>
<url>https://repository.cloudera.com/artifactory/libs-release-local/</url>
</repository>
</repositories>
<build>
Expand Down
9 changes: 5 additions & 4 deletions dev-tools/scripts/jenkins.build.ref.guide.sh
Original file line number Diff line number Diff line change
Expand Up @@ -61,10 +61,11 @@ echoRun "rvm $RUBY_VERSION@$GEMSET" # Activate this project's gemset
# Install gems in the gemset. Param --force disables dependency conflict detection.
echoRun "gem install --force --version 3.5.0 jekyll"
echoRun "gem uninstall --all --ignore-dependencies asciidoctor" # Get rid of all versions
echoRun "gem install --force --version 1.5.6.2 asciidoctor"
echoRun "gem install --force --version 2.1.0 jekyll-asciidoc"
echoRun "gem install --force --version 1.1.2 pygments.rb"
echoRun "gem install --force --version 3.0.9 slim"
echoRun "gem install --force --version 2.0.10 asciidoctor"
echoRun "gem install --force --version 3.0.0 jekyll-asciidoc"
echoRun "gem install --force --version 4.0.1 slim"
echoRun "gem install --force --version 2.0.10 tilt"
echoRun "gem install --force --version 1.1.5 concurrent-ruby"

cd solr/solr-ref-guide

Expand Down
52 changes: 51 additions & 1 deletion lucene/CHANGES.txt
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,19 @@ API Changes
* LUCENE-8956: QueryRescorer now only sorts the first topN hits instead of all
initial hits. (Paul Sanwald via Adrien Grand)

* LUCENE-8921: IndexSearcher.termStatistics() no longer takes a TermStates; it takes the docFreq and totalTermFreq.
And don't call if docFreq <= 0. The previous implementation survives as deprecated and final. It's removed in 9.0.
(Bruno Roustant, David Smiley, Alan Woodward)

* LUCENE-8990: PointValues#estimateDocCount(visitor) estimates the number of documents that would be matched by
the given IntersectVisitor. THe method is used to compute the cost() of ScorerSuppliers instead of
PointValues#estimatePointCount(visitor). (Ignacio Vera, Adrien Grand)

New Features

* LUCENE-8936: Add SpanishMinimalStemFilter (vinod kumar via Tomoko Uchida)

* LUCENE-8764: Add "export all terms" feature to Luke. (Leonardo Menezes via Tomoko Uchida)
* LUCENE-8764 LUCENE-8945: Add "export all terms and doc freqs" feature to Luke with delimiters. (Leonardo Menezes, Amish Shah via Tomoko Uchida)

* LUCENE-8747: Composite Matches from multiple subqueries now allow access to
their submatches, and a new NamedMatches API allows marking of subqueries
Expand Down Expand Up @@ -67,6 +75,18 @@ Improvements

* LUCENE-8952: Use a sort key instead of true distance in NearestNeighbor (Julie Tibshirani).

* LUCENE-8620: Tessellator labels the edges of the generated triangles whether they belong to
the original polygon. This information is added to the triangle encoding. (Ignacio Vera)

* LUCENE-8964: Fix geojson shape parsing on string arrays in properties
(Alexander Reelsen)

* LUCENE-8976: Use exact distance between point and bounding rectangle in FloatPointNearestNeighbor. (Ignacio Vera)

* LUCENE-8966: The Korean analyzer now splits tokens on boundaries between digits and alphabetic characters. (Jim Ferenczi)

* LUCENE-8984: MoreLikeThis MLT is biased for uncommon fields (Andy Hind via Anshum Gupta)

Optimizations

* LUCENE-8922: DisjunctionMaxQuery more efficiently leverages impacts to skip
Expand All @@ -81,18 +101,48 @@ the total hits is not requested.
* LUCENE-8755: spatial-extras quad and packed quad prefix trees now index points faster.
(Chongchen Chen, David Smiley)

* LUCENE-8860: add additional leaf node level optimizations in LatLonShapeBoundingBoxQuery.
(Igor Motov via Ignacio Vera)

* LUCENE-8968: Improve performance of WITHIN and DISJOINT queries for Shape queries by
doing just one pass whenever possible. (Ignacio Vera)

* LUCENE-8939: Introduce shared count based early termination across multiple slices
(Atri Sharma)

* LUCENE-8980: Blocktree's seekExact now short-circuits false if the term isn't in the min-max range of the segment.
Large perf gain for ID/time like data when populated sequentially. (Guoqiang Jiang)

Bug Fixes

* LUCENE-8755: spatial-extras quad and packed quad prefix trees could throw a
NullPointerException for certain cell edge coordinates (Chongchen Chen, David Smiley)

* LUCENE-9005: BooleanQuery.visit() would pull subVisitors from its parent visitor, rather
than from a visitor for its own specific query. This could cause problems when BQ was
nested under another BQ. Instead, we now pull a MUST subvisitor, pass it to any MUST
subclauses, and then pull SHOULD, MUST_NOT and FILTER visitors from it rather than from
the parent. (Alan Woodward)

Other

* LUCENE-8778 LUCENE-8911 LUCENE-8957: Define analyzer SPI names as static final fields and document the names in Javadocs.
(Tomoko Uchida, Uwe Schindler)

* LUCENE-8758: QuadPrefixTree: removed levelS and levelN fields which weren't used. (Amish Shah)

* LUCENE-8975: Code Cleanup: Use entryset for map iteration wherever possible.

* LUCENE-8993, LUCENE-8807: Changed all repository and download references in build files
to HTTPS. (Uwe Schindler)

* LUCENE-8998: Fix OverviewImplTest.testIsOptimized reproducible failure. (Tomoko Uchida)

* LUCENE-8999: LuceneTestCase.expectThrows now propogates assert/assumption failures up to the test
w/o wrapping in a new assertion failure unless the caller has explicitly expected them (hossman)

* LUCENE-8062: GlobalOrdinalsWithScoreQuery is no longer eligible for query caching. (Jim Ferenczi)

======================= Lucene 8.2.0 =======================

API Changes
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -202,7 +202,7 @@ public JapaneseTokenizer(UserDictionary userDictionary, boolean discardPunctuati
}

/**
* Create a new JapaneseTokenizer.
* Create a new JapaneseTokenizer using the system and unknown dictionaries shipped with Lucene.
*
* @param factory the AttributeFactory to use
* @param userDictionary Optional: if non-null, user dictionary.
Expand All @@ -211,13 +211,41 @@ public JapaneseTokenizer(UserDictionary userDictionary, boolean discardPunctuati
*/
public JapaneseTokenizer
(AttributeFactory factory, UserDictionary userDictionary, boolean discardPunctuation, Mode mode) {
this(factory,
TokenInfoDictionary.getInstance(),
UnknownDictionary.getInstance(),
ConnectionCosts.getInstance(),
userDictionary, discardPunctuation, mode);
}

/**
* <p>Create a new JapaneseTokenizer, supplying a custom system dictionary and unknown dictionary.
* This constructor provides an entry point for users that want to construct custom language models
* that can be used as input to {@link org.apache.lucene.analysis.ja.util.DictionaryBuilder}.</p>
*
* @param factory the AttributeFactory to use
* @param systemDictionary a custom known token dictionary
* @param unkDictionary a custom unknown token dictionary
* @param connectionCosts custom token transition costs
* @param userDictionary Optional: if non-null, user dictionary.
* @param discardPunctuation true if punctuation tokens should be dropped from the output.
* @param mode tokenization mode.
* @lucene.experimental
*/
public JapaneseTokenizer(AttributeFactory factory,
TokenInfoDictionary systemDictionary,
UnknownDictionary unkDictionary,
ConnectionCosts connectionCosts,
UserDictionary userDictionary,
boolean discardPunctuation,
Mode mode) {
super(factory);
dictionary = TokenInfoDictionary.getInstance();
fst = dictionary.getFST();
unkDictionary = UnknownDictionary.getInstance();
characterDefinition = unkDictionary.getCharacterDefinition();
this.dictionary = systemDictionary;
this.fst = dictionary.getFST();
this.unkDictionary = unkDictionary;
this.characterDefinition = unkDictionary.getCharacterDefinition();
this.userDictionary = userDictionary;
costs = ConnectionCosts.getInstance();
this.costs = connectionCosts;
fstReader = fst.getBytesReader();
if (userDictionary != null) {
userFST = userDictionary.getFST();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -176,6 +176,17 @@ protected final InputStream getResource(String suffix) throws IOException {
}
}

public static final InputStream getResource(ResourceScheme scheme, String path) throws IOException {
switch(scheme) {
case CLASSPATH:
return getClassResource(path);
case FILE:
return Files.newInputStream(Paths.get(path));
default:
throw new IllegalStateException("unknown resource scheme " + scheme);
}
}

// util, reused by ConnectionCosts and CharacterDefinition
public static final InputStream getClassResource(Class<?> clazz, String suffix) throws IOException {
final InputStream is = clazz.getResourceAsStream(clazz.getSimpleName() + suffix);
Expand All @@ -185,7 +196,7 @@ public static final InputStream getClassResource(Class<?> clazz, String suffix)
return is;
}

private InputStream getClassResource(String path) throws IOException {
private static InputStream getClassResource(String path) throws IOException {
final InputStream is = BinaryDictionary.class.getClassLoader().getResourceAsStream(path);
if (is == null) {
throw new FileNotFoundException("Not in classpath: " + path);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,12 +37,16 @@ public final class ConnectionCosts {

private final short[][] costs; // array is backward IDs first since get is called using the same backward ID consecutively. maybe doesn't matter.

private ConnectionCosts() throws IOException {
/**
* @param scheme - scheme for loading resources (FILE or CLASSPATH).
* @param path - where to load resources from, without the ".dat" suffix
*/
public ConnectionCosts(BinaryDictionary.ResourceScheme scheme, String path) throws IOException {
InputStream is = null;
short[][] costs = null;
boolean success = false;
try {
is = BinaryDictionary.getClassResource(getClass(), FILENAME_SUFFIX);
is = BinaryDictionary.getResource(scheme, path.replace('.', '/') + FILENAME_SUFFIX);
is = new BufferedInputStream(is);
final DataInput in = new InputStreamDataInput(is);
CodecUtil.checkHeader(in, HEADER, VERSION, VERSION);
Expand All @@ -68,7 +72,11 @@ private ConnectionCosts() throws IOException {

this.costs = costs;
}


private ConnectionCosts() throws IOException {
this(BinaryDictionary.ResourceScheme.CLASSPATH, ConnectionCosts.class.getName());
}

public int get(int forwardId, int backwardId) {
return costs[backwardId][forwardId];
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ public final class TokenInfoDictionary extends BinaryDictionary {
* @param resourcePath - where to load resources (dictionaries) from. If null, with CLASSPATH scheme only, use
* this class's name as the path.
*/
TokenInfoDictionary(ResourceScheme resourceScheme, String resourcePath) throws IOException {
public TokenInfoDictionary(ResourceScheme resourceScheme, String resourcePath) throws IOException {
super(resourceScheme, resourcePath);
FST<Long> fst;
try (InputStream is = new BufferedInputStream(getResource(FST_FILENAME_SUFFIX))) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,15 @@ public final class UnknownDictionary extends BinaryDictionary {

private final CharacterDefinition characterDefinition = CharacterDefinition.getInstance();

/**
* @param scheme scheme for loading resources (FILE or CLASSPATH).
* @param path where to load resources from; a path, including the file base name without
* extension; this is used to match multiple files with the same base name.
*/
public UnknownDictionary(ResourceScheme scheme, String path) throws IOException {
super(scheme, path);
}

private UnknownDictionary() throws IOException {
super();
}
Expand Down
Loading