firstSearcher Listener of SpellChecker can be never called
----------------------------------------------------------

                 Key: SOLR-2425
                 URL: https://issues.apache.org/jira/browse/SOLR-2425
             Project: Solr
          Issue Type: Bug
          Components: spellchecker
    Affects Versions: 1.4.1, 3.1, 4.0
            Reporter: Koji Sekiguchi
            Priority: Minor


mail thread:
http://www.lucidimagination.com/search/document/65e73468958faf09/known_problem_firstsearcher_event_of_spellchecker_is_never_called

firstSearcher Listener of SpellChecker is never called when there is no 
<listener event="firstSearcher"/> registered in solrconfig.xml.

The reason is because the sequence of procedures in SolrCore constructor:

# initListeners();
# getSearcher(false,false,null); => register (general) firstSearcher listener 
if it exists
# call SolrCoreAware.inform(); => register SpellChecker's firstSearcher listener

After that, Callable.call() is called to execute the firstSearcher event:

{code}
if (currSearcher==null && firstSearcherListeners.size() > 0) {
  future = searcherExecutor.submit(
          new Callable() {
            public Object call() throws Exception {
              try {
                for (SolrEventListener listener : firstSearcherListeners) {
                  listener.newSearcher(newSearcher,null);
                }
              } catch (Throwable e) {
                SolrException.logOnce(log,null,e);
              }
              return null;
            }
          }
  );
}
{code}

At the time, firstSearcherListeners includes SpellChecker's 
firstSearcherListner, registered by procedure 3 above. But if you have no 
<listener event="firstSearcher"/> registered in solrconfig.xml, at the 
procedure 2, searcherExecutor.submit() is never called because 
firstSearcherListeners.size() is zero at the moment.


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to