[
https://issues.apache.org/jira/browse/LUCENE-10018?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17390274#comment-17390274
]
David Smiley commented on LUCENE-10018:
---------------------------------------
[~rmuir] what do you think of the goal stated in this Jira issue? The outcome
would leave Fields but it would be low-level (within PostingsFormats) and
dedicated to one purpose instead of involving TVs. As a user, the code is
easier to navigate when this class is used for one purpose and not two. I know
you vetoed the PR but that PR is merely one approach.
If that sounds reasonable, the next question is what its replacement is for the
TV use-case. I think relegating Fields to a low level internal use in some
sense reduces the mental overhead a Lucene user has in things they need to know
about, freeing up space for maybe introducing a new public class – thus I think
this exercise is net neutral on classes that matter. Do you have an idea here?
My (second?) idea I shared is
[https://github.com/apache/lucene/pull/180#issuecomment-876482149] which would
add some methods to TermVectors making it be somewhat like Fields. I had
started down that path briefly (maybe an hour) and found the implementation to
be a bit awkward (albeit doable I guess). I had second thoughts on this and
shelved it to go for a simple class DocTermVectors to replace Fields for TVs --
[https://github.com/apache/lucene/pull/216]
> Remove Fields from TermVector reader related usage
> --------------------------------------------------
>
> Key: LUCENE-10018
> URL: https://issues.apache.org/jira/browse/LUCENE-10018
> Project: Lucene - Core
> Issue Type: Task
> Components: core/codecs, core/index
> Reporter: Zach Chen
> Assignee: David Smiley
> Priority: Minor
>
> This is a spin-off issue from [https://github.com/apache/lucene/pull/180] for
> Fields class deprecation / removal in TermVector reader usage. As Fields
> class is generally meant as internal class reserved for posting index, we
> would like to have some dedicated TermVector abstractions and APIs instead.
> The relevant discussions are available here:
> * [https://github.com/apache/lucene/pull/180#pullrequestreview-686320076]
> * [https://github.com/apache/lucene/pull/180#issuecomment-863254651]
> * [https://github.com/apache/lucene/pull/180#issuecomment-863262562]
> * [https://github.com/apache/lucene/pull/180#issuecomment-863775298]
> * [https://github.com/apache/lucene/pull/180#issuecomment-864720190]
> * [https://github.com/apache/lucene/pull/180#pullrequestreview-688023901]
> * [https://github.com/apache/lucene/pull/180#issuecomment-871155896]
> * [https://github.com/apache/lucene/pull/180#issuecomment-871922823]
>
> One potential API design for this can be found here
> [https://github.com/apache/lucene/pull/180#issuecomment-871155896]
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]