[
https://issues.apache.org/jira/browse/LUCENE-5618?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Shai Erera updated LUCENE-5618:
-------------------------------
Attachment: LUCENE-5618.patch
After committing LUCENE-5619, with the previous patch
TestBackwardsCompatibility failed since it didn't handle pre-4.9 indexes well
-- it didn't handle the case where one generation references multiple fields...
to resolve that I added in this patch:
* SegmentReader acts accordingly only pre-4.9 indexes: beyond sending all the
FieldInfos to a certain DocValuesProducer's gen, it ensures each such DVP is
initialized once per generation.
* Lucene45DocValuesProducer does a lenient fields check if the segment's
version is pre-4.9.
Note that I didn't add this leniency to Lucene42DocValuesProducer since that
one doesn't support DocValues updates anyway, and so doesn't experience this
issue at all.
> DocValues updates send wrong fieldinfos to codec producers
> ----------------------------------------------------------
>
> Key: LUCENE-5618
> URL: https://issues.apache.org/jira/browse/LUCENE-5618
> Project: Lucene - Core
> Issue Type: Bug
> Reporter: Robert Muir
> Assignee: Shai Erera
> Priority: Blocker
> Fix For: 4.9
>
> Attachments: LUCENE-5618.patch, LUCENE-5618.patch
>
>
> Spinoff from LUCENE-5616.
> See the example there, docvalues readers get a fieldinfos, but it doesn't
> contain the correct ones, so they have invalid field numbers at read time.
> This should really be fixed. Maybe a simple solution is to not write
> "batches" of fields in updates but just have only one field per gen?
> This removes many-many relationships and would make things easy to understand.
--
This message was sent by Atlassian JIRA
(v6.2#6252)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]