Lucene.Net.Index.IndexWriterConfig.SetUseCompoundFile C# (CSharp) Méthode

SetUseCompoundFile() public méthode

public SetUseCompoundFile ( bool useCompoundFile ) : IndexWriterConfig
useCompoundFile bool
Résultat IndexWriterConfig
        public IndexWriterConfig SetUseCompoundFile(bool useCompoundFile)
        {
            return (IndexWriterConfig)base.SetUseCompoundFile(useCompoundFile);
        }

Usage Example

        public virtual void TestLiveChangeToCFS()
        {
            Directory         dir = NewDirectory();
            IndexWriterConfig iwc = new IndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(Random()));

            iwc.SetMergePolicy(NewLogMergePolicy(true));
            // Start false:
            iwc.SetUseCompoundFile(false);
            iwc.MergePolicy.NoCFSRatio = 0.0d;
            IndexWriter w = new IndexWriter(dir, iwc);

            // Change to true:
            w.Config.SetUseCompoundFile(true);

            Document doc = new Document();

            doc.Add(NewStringField("field", "foo", Store.NO));
            w.AddDocument(doc);
            w.Commit();
            Assert.IsTrue(w.NewestSegment().Info.UseCompoundFile, "Expected CFS after commit");

            doc.Add(NewStringField("field", "foo", Store.NO));
            w.AddDocument(doc);
            w.Commit();
            w.ForceMerge(1);
            w.Commit();

            // no compound files after merge
            Assert.IsFalse(w.NewestSegment().Info.UseCompoundFile, "Expected Non-CFS after merge");

            MergePolicy lmp = w.Config.MergePolicy;

            lmp.NoCFSRatio          = 1.0;
            lmp.MaxCFSSegmentSizeMB = double.PositiveInfinity;

            w.AddDocument(doc);
            w.ForceMerge(1);
            w.Commit();
            Assert.IsTrue(w.NewestSegment().Info.UseCompoundFile, "Expected CFS after merge");
            w.Dispose();
            dir.Dispose();
        }
All Usage Examples Of Lucene.Net.Index.IndexWriterConfig::SetUseCompoundFile