Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions lucene_10_migration.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,20 @@
# Solr Migration Tasks for Lucene 10.2.2

## Critical Breaking Changes
- [ ] **CRITICAL** SortedSetDocValues: Replace removed `NO_MORE_ORDS` constant with `docValueCount()` checks.
- **Impact:** Calls to `nextOrd()` relying on `NO_MORE_ORDS` cause runtime errors.
- **Location:** `solr/core/src/java/org/apache/solr/search/join/MultiValueTermOrdinalCollector.java`, `solr/core/src/java/org/apache/solr/search/join/GraphEdgeCollector.java`, `solr/core/src/java/org/apache/solr/search/facet/*`, and others.
- **Lucene Change:** `MIGRATE.md` lines 129‑135.
- **Action Required:** Use `docValueCount()` to bound iteration and remove constant references.
- **Dependencies:** None

- [ ] **CRITICAL** Stored fields API: Replace `IndexReader.getTermVectors` and `.document` calls with `termVectors()` and `storedFields().document`.
- **Impact:** Removed methods cause compilation failures.
- **Location:** `solr/core/src/java/org/apache/solr/index/SlowCompositeReaderWrapper.java`, related tests.
- **Lucene Change:** `MIGRATE.md` lines 60‑71.
- **Action Required:** Use the new APIs returning `TermVectors` and `StoredFields` instances.
- **Dependencies:** None

- [ ] **CRITICAL** Search Queries: Replace removed `DocValuesFieldExistsQuery`, `NormsFieldExistsQuery` with `FieldExistsQuery`.
- **Impact:** Compilation errors where these classes are used.
- **Location:** `solr/core/src/java/org/apache/solr/schema/FieldType.java`, `solr/core/src/java/org/apache/solr/schema/CurrencyFieldType.java`, `solr/core/src/java/org/apache/solr/response/transform/ChildDocTransformerFactory.java`, `solr/core/src/java/org/apache/solr/search/facet/MissingAgg.java`.
Expand Down Expand Up @@ -39,6 +53,13 @@
- **Dependencies:** None

## API Updates
- [ ] **HIGH** Record classes: Access `TotalHits` and other converted records via accessor methods.
- **Impact:** Direct field access like `totalHits.value` no longer compiles.
- **Location:** `solr/core/src/java/org/apache/solr/search/Grouping.java`, `solr/core/src/java/org/apache/solr/search/SolrIndexSearcher.java`, grouping transformers, and related tests.
- **Lucene Change:** `MIGRATE.md` lines 200‑214.
- **Action Required:** Replace field references with calls to `value()` and `relation()` (and similar for other records).
- **Dependencies:** None

- [ ] **HIGH** Analysis factories: Add `NAME` constants and public no-arg constructors for custom `TokenizerFactory`, `TokenFilterFactory`, and `CharFilterFactory` implementations.
- **Impact:** Factories without these will fail to load via ServiceLoader.
- **Location:** Custom analysis factories within Solr modules (search for implementations).
Expand Down
Loading