[ https://issues.apache.org/jira/browse/LUCENE-5215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13774471#comment-13774471 ]
Michael McCandless commented on LUCENE-5215: -------------------------------------------- Hmm, could we remove SCR.fieldInfos entirely? And, pass it into ctor (passing null if it's not "shared"), and also into .getNormValues (it's only SegmentReader that calls this)? {quote} bq. it looks like we are now double-opening the CFS file Correct. It's also called from IndexWriter, which opened CFS if needed, therefore I thought it's not so critical. {quote} I'm less worried about IW, which does this once on open; apps "typically" open an IW and use it for a long time, opening many NRT readers from it. But I don't like adding this double-open to SR's open path (SR's are "typically" opened more frequently than IWs), if we can help it. I mean technically I guess it's an optimization to not double-open the CFS file ... so we could instead open a follow-on issue to try to fix it. > Add support for FieldInfos generation > ------------------------------------- > > Key: LUCENE-5215 > URL: https://issues.apache.org/jira/browse/LUCENE-5215 > Project: Lucene - Core > Issue Type: New Feature > Components: core/index > Reporter: Shai Erera > Assignee: Shai Erera > Attachments: LUCENE-5215.patch, LUCENE-5215.patch, LUCENE-5215.patch, > LUCENE-5215.patch, LUCENE-5215.patch > > > In LUCENE-5189 we've identified few reasons to do that: > # If you want to update docs' values of field 'foo', where 'foo' exists in > the index, but not in a specific segment (sparse DV), we cannot allow that > and have to throw a late UOE. If we could rewrite FieldInfos (with > generation), this would be possible since we'd also write a new generation of > FIS. > # When we apply NDV updates, we call DVF.fieldsConsumer. Currently the > consumer isn't allowed to change FI.attributes because we cannot modify the > existing FIS. This is implicit however, and we silently ignore any modified > attributes. FieldInfos.gen will allow that too. > The idea is to add to SIPC fieldInfosGen, add to each FieldInfo a dvGen and > add support for FIS generation in FieldInfosFormat, SegReader etc., like we > now do for DocValues. I'll work on a patch. > Also on LUCENE-5189, Rob raised a concern about SegmentInfo.attributes that > have same limitation -- if a Codec modifies them, they are silently being > ignored, since we don't gen the .si files. I think we can easily solve that > by recording SI.attributes in SegmentInfos, so they are recorded per-commit. > But I think it should be handled in a separate issue. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org