[
https://issues.apache.org/jira/browse/LUCENE-2985?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Simon Willnauer updated LUCENE-2985:
------------------------------------
Attachment: LUCENE-2985.patch
next iteration. This patch moves the SegmentCodecsBuilder into FieldInfos and
forces DocFieldProcessorPerThread to update FieldInfo through the global
FieldInfos instance.
I changed the FieldInfos#add methods to FieldInfos#addOrUpdate and made
SegmentCodecsBuilder package private, final and removed synchronization since
it is guarded by FieldInfos during creation. This patch also fixes JavaDoc on
SegmentCodecs since we build that now incrementatlly.
Since we now update the FieldInfo through FieldInfos this looks much cleaner.
I think this is ready to commit.
> Build SegmentCodecs incrementally for consistent codecIDs during indexing
> -------------------------------------------------------------------------
>
> Key: LUCENE-2985
> URL: https://issues.apache.org/jira/browse/LUCENE-2985
> Project: Lucene - Java
> Issue Type: Improvement
> Components: Codecs, Index
> Affects Versions: CSF branch, 4.0
> Reporter: Simon Willnauer
> Assignee: Simon Willnauer
> Fix For: CSF branch, 4.0
>
> Attachments: LUCENE-2985.patch, LUCENE-2985.patch
>
>
> currently we build the SegementCodecs during flush which is fine as long as
> no codec needs to know which fields it should handle. This will change with
> DocValues or when we expose StoredFields / TermVectors via Codec (see
> LUCENE-2621 or LUCENE-2935). The other downside it that we don't have a
> consistent view of which codec belongs to which field during indexing and all
> FieldInfo instances are unassigned (set to -1). Instead we should build the
> SegmentCodecs incrementally as fields come in so no matter when a codec needs
> to be selected to process a document / field we have the right codec ID
> assigned.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]