On Thu, Dec 2, 2010 at 15:04, Shai Erera <ser...@gmail.com> wrote: > Earwin: > > LogMergePolicy.getUseCompoundFile() is a public and not private API on > trunk, not deprecated and used. Perhaps you are talking about something > else?
I was speaking of getLogMergePolicy that you mentioned: > 1) Fix IW to not case to LMP just to ask if it should create compound files > or not. And then we can perhaps remove getLogMergePolicy from IW on 3x, and > also removing the source for confusion. This one cannot be removed in 3x, and can safely be dropped on trunk. > I'm aware of LUCENE-2773, but still, if you look at LMP's > getUseCompoundFile() in trunk, you'll see it does not factor in the > noCFSRatio setting. It always returns 'useCompoundFile'. getUseCompoundFile() is a setting on LMP. It shouldn't be read anywhere at all (except maybe some client code) (and maybe should not exist at all). The actual callback that 'should' factor in noCFSRatio is called useCompoundFile(SIs, SI). But it seems Mike's patch only affects compound files created due to merging, not ones created when adding docs. Goddamn, how ugly. I think we need at least remove useCompoundFile field from OneMerge, and always call useCompoundFile(SIs, SI) to decide whether to pack new segment, regardless of how it was produced, whether by addIndexes, merging, writing docs, or anything else. -- Kirill Zakharenko/Кирилл Захаренко (ear...@gmail.com) Phone: +7 (495) 683-567-4 ICQ: 104465785 --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org