apache / apache/lucene

add minor-revision writers to backwards-codecs [LUCENE-5991]

Open
#7,053 2 comments 0 reactions 0 assignees View on GitHub
legacy-jira-priority:Major type:test
Dominant language
Java
Stars
3.6k
Forks
1.4k
Avg merge
2d 11h
Merged PRs (30d)
88

Description

Today we have backwards testing almost completely isolated cleanly, and tests against each format. But we only test old major formats, not the minor ones. Before it was probably the right tradeoff, but now that its isolated I think we should test all of them.

For example the 4.1 stored fields format had two minor format changes across the 4.x release:
```
static final int VERSION_START = 0;
static final int VERSION_BIG_CHUNKS = 1;
static final int VERSION_CHECKSUM = 2;
static final int VERSION_CURRENT = VERSION_CHECKSUM;
```

We could easily directly test these possibilities (e.g. take this as a parameter to the RW format and have 3 TestXXXStoredFieldsFormat, one for each) instead of only testing the latest one and relying on TestBackCompat to find issues, which it probably won't since the index is simplistic.

---
Migrated from [LUCENE-5991](https://issues.apache.org/jira/browse/LUCENE-5991) by Robert Muir (@rmuir), updated Oct 06 2014

Contributor guide

Open the contributing guide

Research direction

Start by reading the backwards-codecs tests and the existing TestBackCompat coverage, then inspect the RW format and TestXXXStoredFieldsFormat patterns mentioned in the issue. Add coverage for each minor stored-fields format version, and confirm the test suite exercises all listed versions rather than only the current one.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
backend, testing-qa
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.