Uploaded image for project: 'Lucene - Core'
  1. Lucene - Core
  2. LUCENE-1152

SpellChecker does not work properly on calling indexDictionary after clearIndex

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 2.3
    • Fix Version/s: None
    • Component/s: modules/spellchecker
    • Labels:
      None
    • Lucene Fields:
      New, Patch Available

      Description

      We have to call clearIndex and indexDictionary to rebuild dictionary from fresh. The call to SpellChecker clearIndex() function does not reset the searcher. Hence, when we call indexDictionary after that, many entries that are already in the stale searcher will not be indexed.

      Also, I see that IndexReader reader is used for the sole purpose of obtaining the docFreq of a given term in exist() function. This functionality can also be obtained by using just the searcher by calling searcher.docFreq. Thus, can we get away completely with reader and code associated with it like
      if (IndexReader.isLocked(spellIndex))

      { IndexReader.unlock(spellIndex); }

      and the reader related code in finalize?

        Attachments

        1. spellchecker.diff
          2 kB
          Naveen Belkale
        2. spellchecker.diff
          3 kB
          Naveen Belkale

          Activity

            People

            • Assignee:
              otis Otis Gospodnetic
              Reporter:
              belkale Naveen Belkale
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: