apache / apache/lucene

Improve backward-compatibility testing

Open
#12,956 0 comments 2 reactions 0 assignees View on GitHub
type:task
Dominant language
Java
Stars
3.6k
Forks
1.4k
Avg merge
2d 11h
Merged PRs (30d)
88

Description

### Description

#12895 highlighted that our backward compatibility tests could use some love. I reviewed what we have and tried to collect a list of things we should improve:
- [ ] Add backward indexes created with `BEST_COMPRESSION`. Currently, all indexes we create use the default `BEST_SPEED`.
- [ ] Restore write logic of old FST versions. #12908 added support for the last version back, but there are older versions we should add back as well so that we can test them properly through `BasePostingsFormatTestCase`.
- [ ] Restore write logic of old BKDWriter versions. Likewise, but for BKD trees. Restoring them would allow us to test them through `BasePointsFormatTestCase`.
- [x] Add tests with real data to `BasePostingsFormatTestCase`. (done via #12925)
- [x] Add tests with real data to `BaseStoredFieldsFormatTestCase`. #12927

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the open checklist and the existing backward-compatibility coverage around BasePostingsFormatTestCase and BasePointsFormatTestCase. Investigate how BEST_SPEED indexes and the latest restored FST version are currently handled, then compare the remaining older-version cases. Done means adding BEST_COMPRESSION index coverage and restoring the required older FST and BKDWriter write logic so the base test cases exercise them.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
search
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.