Commit Graph

37612 Commits

Author SHA1 Message Date
Adrien Grand 44ad4d95c6
Add bw tests for block-tree with inlined metadata. (#13527)
The backport of #13524 found a hole in the testing of `Lucene40BlockTreeTerms`
for versions before we moved metadata to its own file. This PR adds explicit bw
testing for this version. Adding the correct if/else statements made the code
extremely complicated so I opted for restoring the file as it was at the time
when we bumped the version.

This also fixes the bug that we introduced in #13524.
2024-06-28 21:29:00 +02:00
Ignacio Vera f8ee339f64 Add back-compat indices for 9.11.1 2024-06-27 16:23:03 +02:00
Ignacio Vera 2aec233b5c Sync CHANGES for 9.11.1 2024-06-27 16:14:36 +02:00
Ignacio Vera d47a5afc65 spotless 2024-06-27 16:08:48 +02:00
Ignacio Vera 803a743cd7 Add bugfix version 9.11.1 2024-06-27 16:02:56 +02:00
Ignacio Vera b737c5f707 DOAP changes for release 9.11.1 2024-06-27 15:40:55 +02:00
Armin Braun 126834c09e
Reduce overhead for FSTs in FieldReader (#13524)
We don't need to clone the index input we hold on to in OffHeapFSTStore
since we only use it for slicing from known coordinates anyway.
-> remove the cloning and add the infrastructure to initialize
OffHeapFSTStore without seeking the input to the starting offset.
2024-06-27 09:52:10 +02:00
Armin Braun 33a4c1d8ef
Reduce memory use of MinimizationOperations#minimize (#13511)
It is relatively easy to consume a massive amount of memory
for the minimize operation, with its lists of boxed Integer (even though these are mostly cached,
it's still more than 4b per instance to store them instead of plain storage) and neverending
duplicate+empty StateList instances.
The boxed integer situation we can fix and probably speedup by using the hppc primitive collections.
To fix the duplicate/empty StateList instances, we can use a constant. This requires some hacky forking
on the write path but that's about it.
This is partly motivated by ES users at times creating broken, very long prefix queries that can then eat up
GBs of heap. With this change, the examples I've been looking at become about 6x cheaper heap wise, making it
less likely that kind of mistakes impacts stability.
2024-06-25 16:15:30 +02:00
zhouhui 3ae59a9809
Fix Method declared 'final' in 'final' class. (#13492) 2024-06-21 13:47:55 -04:00
Adrien Grand cfbf8d93df
Honor read advice on compound files. (#13467)
This includes the following changes:
 - New `IndexInput#slice(String, long, long, ReadAdvice)` API that allows creating slices with different advices.
 - `PosixNativeAccess` now explicitly sets `MADV_NORMAL` when called with `ReadAdvice.NORMAL`. This is required to be able to override a `RANDOM` advice of a compound file with a `NORMAL` advice of a sub file of this compound file.
 - `PosixNativeAccess` now only ignores the first page if a range of bytes starts before the `MemorySegment` instead of the whole range.
2024-06-21 14:39:41 +02:00
Zack Kendall 06c4a4b9e0
Prevent DefaultPassageFormatter from taking shorter overlapping passages (#13384) 2024-06-21 10:57:59 +01:00
yadda yadda yadda c7f4b8dee2
Fix NPE in StringValueFacetCounts over empty match-set (#13494) 2024-06-21 10:18:39 +01:00
Dawid Weiss ab291210db Removed changes entry for #13315 entirely as it'll appear in 9.11.1 section, once released. 2024-06-20 16:49:55 +02:00
Dawid Weiss 2529075d48 Moved changes entry to 9.12 (with the possibility of backporting to 9.11.1) #13315 2024-06-20 16:41:11 +02:00
Stéphane Campinas d453832bb8
Fix IndexOutOfBoundsException thrown in DefaultPassageFormatter by unordered matches (#13315) 2024-06-20 16:36:51 +02:00
zhouhui 057cbf3c86
Use getAndSet, getAndClear instead split operations. (#13507) 2024-06-19 11:53:12 +02:00
Greg Miller 937c004eda
Fix global score update bug in MultiLeafKnnCollector (#13463) 2024-06-18 18:34:15 -07:00
Dawid Weiss 7e31f56ea1 Add versions.toml to .gitattributes and normalize line endings to lf. #13484 2024-06-18 14:25:40 +02:00
Dawid Weiss ff3fe75adb Add build-tools to smoke tester's expect list. #13484 2024-06-18 10:33:53 +02:00
Dawid Weiss bff0b1daee Smoke tester should no longer expect versions.props and look for versions.toml instead. #13484 2024-06-18 10:17:38 +02:00
Dawid Weiss 04def26289 Smoke tester should no longer expect buildSrc at the top level. #13484 2024-06-18 09:57:19 +02:00
Dawid Weiss 676be86e8f Correct the default checksum for artifacts to be sha512. #13484 2024-06-18 09:43:29 +02:00
Michael Sokolov 27a3e71fa3 CHANGES entry for FlatVectorsFormat 2024-06-17 11:19:06 -04:00
Ignacio Vera d29c57e50c
Fix backward codec test after introducing the doc values skip index (#13487)
The introduction of the doc values skip index in #13449 broke the backward codec test as those codecs do not support
 it. This commit fix it by breaking up the base class for the tests.
2024-06-17 09:58:12 +02:00
Dawid Weiss dc287862dd
Gradle build: cleanup of dependency resolution and consolidation of dependency versions (#13484) 2024-06-17 09:49:21 +02:00
Stefan Vodita 8f50976c26
Don't preserve auxiliary buffer contents in LSBRadixSorter if it grows (#12947) 2024-06-15 18:36:21 +01:00
Michael Sokolov 487d24ae69
Expose FlatVectorsFormat (#13469) 2024-06-13 19:38:24 -04:00
Ignacio Vera 048770205c
GITHUB#13449: Sparse index, optional skip list on top of doc values (#13449)
Optional skip list on top of doc values which is exposed via the DocValuesSkipper abstraction. A new flag is 
added to FieldType.java that configures whether to create a "skip index" for doc values.

Co-authored-by: Adrien Grand <jpountz@gmail.com>
2024-06-13 10:17:50 +02:00
Pulkit Gupta 1c655823dd
Mark COSINE VectorSimilarity function as deprecated (#13473) 2024-06-11 13:49:21 -04:00
Benjamin Trent cfdc747cde
Adjust assertion check to not throw an NPE (#13479) 2024-06-11 09:48:21 -04:00
Bruno Roustant 51e60f49f8 Add missing entry in changes.txt (#13431) 2024-06-11 14:10:09 +02:00
Bruno Roustant 4e8fb2a9df
Optimize Japanese UserDictionary. (#13431)
Replace TreeMap by a List of Match. Use compiled Pattern.
2024-06-11 10:02:58 +02:00
Michael Sokolov edba83e636 equivocate about IntelliJ test runner 2024-06-10 08:40:38 -04:00
Dawid Weiss 06f86a5096
Silence odd test runner warnings after gradle upgrade (#13471) 2024-06-10 11:31:40 +02:00
Stefan Vodita fb94403e0f Fix typo in SimpleSortedSetFacetsExample.java 2024-06-10 08:44:47 +00:00
Paul King 5e0f549185
Fix typo in StringValueFacetCountsExample.java (#13474) 2024-06-10 09:25:27 +01:00
Hank Chang 18d48d422d
Add new test case "testGetLines" for lucene/core/analysis/WordlistLoader (#13419) 2024-06-10 09:07:26 +01:00
Michael Sokolov 0699117cc5 clarify that IntelliJ UI varies across platforms 2024-06-07 10:13:16 -04:00
Michael Sokolov 71a9aed45d fix fumble-finger 2024-06-07 10:13:16 -04:00
Michael Sokolov 262341b753 on README.md, make links to CONTRIBUTING.md more prominent, and demote link to dev-docs 2024-06-07 10:13:16 -04:00
Benjamin Trent 2d62faa4bb
Add int8_hnsw backcompat index creawtion to dev tools scripts (#13465) 2024-06-07 09:24:20 -04:00
Michael Sokolov a5b4b8c8b0
Document how to make tests run faster in IntelliJ (#13466)
also make links to CONTRIBUTING.md more prominent, and demote link to dev-docs
2024-06-07 08:47:16 -04:00
Armin Braun c7a7d48d65
Reduce the heap use of BKDReader instances (#13464)
We consume a lot of memory for the `indexIn` slices. If `indexIn` is of
type `MemorySegmentIndexInput` the overhead of keeping loads of slices
around just for cloning is far higher than the extra 12b per reader this
adds (the slice description alone often costs a lot).
In a number of Elasticsearch example uses with high segment counts I
investigated, this change would save up to O(GB) of heap.
2024-06-07 13:27:10 +02:00
Ignacio Vera 9f8e886702 Move entry in CHANGES.txt 2024-06-07 07:29:15 +02:00
Mayya Sharipova 512ff4ac92
MultiTermQuery return null for ScoreSupplier (#13454)
MultiTermQuery return null for ScoreSupplier if there are no terms in an index that
 match query terms.

With the introduction of PR #12156 we saw degradation in performance of bool queries
where one of the mandatory clauses is a TermInSetQuery with query terms not present in
the field. Before for such cases TermsInSetQuery returned null for ScoreSupplier which
would shortcut the whole bool query.

This PR adds ability for MultiTermQuery to return null for ScoreSupplier if a field
doesn't contain any query terms.

Relates to PR #12156
2024-06-06 14:43:59 -04:00
Benjamin Trent 39a7eabb6d Add back-compat indices for 9.11.0 2024-06-06 13:53:37 -04:00
Benjamin Trent 51d8d7263d Sync CHANGES for 9.11.0 2024-06-06 12:56:10 -04:00
Ignacio Vera 58ab5b7826
Merge related HashMaps in FieldInfos#FieldNumbers into one map (#13460)
Merges all immutable attributes in FieldInfos.FieldNumbers into one hashmap saving memory when 
writing big indices. Fixes an exotic bug when calling clear where not all attributes were cleared.
2024-06-06 17:08:05 +02:00
Benjamin Trent 61a6abd857 DOAP changes for release 9.11.0 2024-06-06 10:23:04 -04:00
Sanjay Dutt d0d2aa274f
Removed Scorer#getWeight (#13440)
If Caller requires Weight then they have to keep track of Weight with which Scorer was created in the first place instead of relying on Scorer.

Closes #13410
2024-06-06 16:03:19 +02:00