From 3c4dc0484b82df4ec14b01400e2a30d64c2fad7d Mon Sep 17 00:00:00 2001 From: Daniel Naber Date: Sat, 19 May 2007 11:27:54 +0000 Subject: [PATCH] LUCENE-883: consecutive calls to Spellchecker.indexDictionary() won't insert terms twice anymore. Fixes the test case failure. git-svn-id: https://svn.apache.org/repos/asf/lucene/java/trunk@539732 13f79535-47bb-0310-9956-ffa450edef68 --- CHANGES.txt | 3 +++ .../org/apache/lucene/search/spell/SpellChecker.java | 10 ++++++++++ 2 files changed, 13 insertions(+) diff --git a/CHANGES.txt b/CHANGES.txt index c284078ef05..039016081fe 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -125,6 +125,9 @@ Bug fixes has written the postings. Then the resources associated with the TokenStreams can safely be released. (Michael Busch) +16. LUCENE-883: consecutive calls to Spellchecker.indexDictionary() + won't insert terms twice anymore. (Daniel Naber) + New features 1. LUCENE-759: Added two n-gram-producing TokenFilters. diff --git a/contrib/spellchecker/src/java/org/apache/lucene/search/spell/SpellChecker.java b/contrib/spellchecker/src/java/org/apache/lucene/search/spell/SpellChecker.java index d5633b9c144..eaae663d0e3 100755 --- a/contrib/spellchecker/src/java/org/apache/lucene/search/spell/SpellChecker.java +++ b/contrib/spellchecker/src/java/org/apache/lucene/search/spell/SpellChecker.java @@ -313,6 +313,16 @@ public class SpellChecker { // close writer writer.optimize(); writer.close(); + // close reader so it will be re-opened (and see the new content) when exist() + // is called the next time: + if (reader != null) { + reader.close(); + reader = null; + } + // also re-open the spell index to see our own changes when the next suggestion + // is fetched: + searcher.close(); + searcher = new IndexSearcher(this.spellIndex); } private int getMin(int l) {