Improve backward-compatibility testing
- 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
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