public void CanDeleteAndCompact() { using (var fullTextIndex = new FullTextIndex(StorageEnvironmentOptions.CreateMemoryOnly(), new DefaultAnalyzer())) { fullTextIndex.Conventions.AutoCompact = false; using (var indexer = fullTextIndex.CreateIndexer()) { indexer.NewIndexEntry(); indexer.Index("Name", "Oren Eini"); indexer.NewIndexEntry(); indexer.Index("Name", "Ayende Rahien"); indexer.Flush(); } using (var indexer = fullTextIndex.CreateIndexer()) { indexer.DeleteIndexEntry(1); indexer.Flush(); } using (var searcher = fullTextIndex.CreateSearcher()) { Assert.Equal(0, searcher.Query(new TermQuery("Name", "oren")).Count()); Assert.Equal(1, searcher.Query(new TermQuery("Name", "rahien")).Count()); } Assert.Equal(2, fullTextIndex.NumberOfDocuments); Assert.Equal(1, fullTextIndex.NumberOfDeletes); fullTextIndex.RunCompaction(); using (var searcher = fullTextIndex.CreateSearcher()) { Assert.Equal(0, searcher.Query(new TermQuery("Name", "oren")).Count()); Assert.Equal(1, searcher.Query(new TermQuery("Name", "rahien")).Count()); } Assert.Equal(1, fullTextIndex.NumberOfDocuments); Assert.Equal(0, fullTextIndex.NumberOfDeletes); } }