Apache Lucene open-source search software
Go to file
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
.github Java 22 has been released, so drop -ea from smoketester gh workflow matrix. 2024-06-06 15:45:27 +02:00
buildSrc Update WrapperDownloader to accept java 22 and correct deprecated new URL API #13458 2024-06-06 11:51:00 +02:00
dev-docs a bit of clarification about GitHub Milestone 2022-08-28 13:52:58 +09:00
dev-tools DOAP changes for release 9.11.0 2024-06-06 10:23:04 -04:00
gradle Update Gradle wrapper to 8.8 - supports Java 22 (#13453) 2024-06-06 08:46:18 +01:00
help Schedule compileJava after the internal task if it affects source files (#13282) 2024-04-09 07:44:07 +02:00
lucene Reduce the heap use of BKDReader instances (#13464) 2024-06-07 13:27:10 +02:00
.asf.yaml .asf.yaml 2022-08-16 20:02:47 +09:00
.dir-locals.el LUCENE-9322: Add Lucene90 codec, including VectorFormat 2020-10-18 07:49:36 -04:00
.git-blame-ignore-revs GITHUB#12655: Add google java format upgrade tidy / regen to blame ignore 2023-10-11 16:15:42 -04:00
.gitattributes LUCENE-10305: Ensure line endings of versions.props is LF 2021-12-11 10:10:44 +09:00
.gitignore LUCENE-9920: Remove binary gradle-wrapper.jar from the repository 2021-04-10 16:08:39 +02:00
.hgignore LUCENE-2792: add FST impl 2010-12-12 15:36:08 +00:00
.lift.toml Disable liftbot, we have our own tools 2022-05-05 22:27:57 +02:00
CONTRIBUTING.md Update contributing guide: autocrlf and build dependencies (#12963) 2023-12-22 09:28:53 +01:00
LICENSE.txt LUCENE-10163 Move LICENSE and NOTICE file to top level (#388) 2021-10-18 01:24:11 +02:00
NOTICE.txt Cleanup NOTICE.txt (#12227) 2023-04-18 15:58:09 -04:00
README.md Bump minimum required Java version to 21 (#12753) 2024-02-29 12:16:29 +01:00
build.gradle upgrade icu4j to 74.2 (#13239) 2024-04-04 08:35:25 -04:00
gradlew gradlew: no "--source 11" (#13404) 2024-05-24 18:19:53 -04:00
gradlew.bat gradlew: no "--source 11" (#13404) 2024-05-24 18:19:53 -04:00
settings.gradle Build: build scans on ge.apache.org to benefit from deep build insights (#12293) 2023-10-24 12:32:18 -04:00
versions.lock Remove the HPPC dependency from all modules and move the HPPC fork to internal. (#13422) 2024-05-27 12:09:25 +02:00
versions.props Remove the HPPC dependency from all modules and move the HPPC fork to internal. (#13422) 2024-05-27 12:09:25 +02:00

README.md

Apache Lucene

Lucene Logo

Apache Lucene is a high-performance, full-featured text search engine library written in Java.

Build Status

Online Documentation

This README file only contains basic setup instructions. For more comprehensive documentation, visit:

Building

Basic steps:

  1. Install OpenJDK 21.
  2. Clone Lucene's git repository (or download the source distribution).
  3. Run gradle launcher script (gradlew).

We'll assume that you know how to get and set up the JDK - if you don't, then we suggest starting at https://jdk.java.net/ and learning more about Java, before returning to this README.

See Contributing Guide for details.

Contributing

Bug fixes, improvements and new features are always welcome! Please review the Contributing to Lucene Guide for information on contributing.

Discussion and Support