[ https://issues.apache.org/jira/browse/LUCENE-9616?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17237767#comment-17237767 ]
Julie Tibshirani edited comment on LUCENE-9616 at 11/24/20, 12:45 AM: ---------------------------------------------------------------------- This seems like a nice way to reframe the issue: if internal versions are meant for bug fixes, maybe the real problem is that we even have internal versions with a lot of logic that needs testing? This would avoid the need for a special testing approach. I noticed PointsFormat uses internal versions extensively, in particular {{BKDWriter}} has ~5 internal versions. Moving away from internal versions seems like it’d cause much more code to be duplicated. Maybe that’s okay, or maybe we’d choose to maintain some shared write logic. was (Author: jtibshirani): This seems like a nice way to reframe the issue: if internal versions are meant for bug fixes, maybe the real problem is that we even have internal versions with a lot of logic that needs testing? This would avoid the need for a special testing approach. I noticed PointsFormat uses internal versions extensively, in particular `BKDWriter` has ~5 internal versions. Moving away from internal versions seems like it’d cause much more code to be duplicated. Maybe that’s okay, or maybe we’d choose to maintain some shared write logic. > Improve test coverage for internal format versions > -------------------------------------------------- > > Key: LUCENE-9616 > URL: https://issues.apache.org/jira/browse/LUCENE-9616 > Project: Lucene - Core > Issue Type: Test > Reporter: Julie Tibshirani > Priority: Minor > > Some formats use an internal versioning system -- for example > {{CompressingStoredFieldsFormat}} maintains older logic for reading an > on-heap fields index. Because we always allow reading segments from the > current + previous major version, some users still rely on the read-side > logic of older internal versions. > Although the older version logic is covered by > {{TestBackwardsCompatibility}}, it looks like it's not exercised in unit > tests. Older versions aren't "in rotation" when choosing a random codec for > tests. They also don't have dedicated unit tests as we have for separate > older formats, for example {{TestLucene60PointsFormat}}. > It could be good to improve unit test coverage for the older versions, since > they're in active use. A downside is that it's not straightforward to add > unit tests, since we tend to just change/ delete the old write-side logic as > we bump internal versions. -- This message was sent by Atlassian Jira (v8.3.4#803005) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org For additional commands, e-mail: issues-h...@lucene.apache.org