Can you try including in your request the "shards.qt" parameter? In your case, I think you should set it to "testhandler". See http://wiki.apache.org/solr/SpellCheckComponent?highlight=%28shards\.qt%29#Distributed_Search_Support for a brief discussion.
James Dyer Ingram Content Group (615) 213-4311 -----Original Message----- From: alx...@aim.com [mailto:alx...@aim.com] Sent: Monday, March 18, 2013 4:07 PM To: solr-user@lucene.apache.org Subject: strange behaviour of wordbreak spellchecker in solr cloud Hello, I try to use wordbreak spellchecker in solr-4.2 with cloud feature. We have two server with one shard in each of them. curl 'server1:8983/solr/test/testhandler?q=paulusoles&indent=true&rows=10' curl 'server2:8983/solr/test/testhandler?q=paulusoles&indent=true&rows=10' does not return any results in spellchecker. However, if I specify distrib=false only one of these has spellchecker results. curl 'server1:8983/solr/test/testhandler?q=paulusoles&indent=true&rows=10&distrib=false' no spellcheler results curl 'server2:8983/solr/test/testhandler?q=paulusoles&indent=true&rows=10&distrib=false' returns spellcheker results. My testhandler and select handlers are as follows <requestHandler name="/testhandler" class="solr.SearchHandler" > <lst name="defaults"> <str name="defType">edismax</str> <str name="echoParams">explicit</str> <float name="tie">0.01</float> <str name="qf">host^30 content^0.5 title^1.2 </str> <str name="pf">site^25 content^10 title^22</str> <str name="fl">url,id,title</str> <!-- <str name="mm">2<-1 5<-3 6<90%</str> --> <str name="mm">3<-1 5<-3 6<90%</str> <int name="ps">1</int> <str name="hl">true</str> <str name="hl.fl">content</str> <str name="f.content.hl.fragmenter">regex</str> <str name="hl.fragsize">165</str> <str name="hl.fragmentsBuilder">default</str> <str name="spellcheck.dictionary">direct</str> <str name="spellcheck.dictionary">wordbreak</str> <str name="spellcheck">on</str> <str name="spellcheck.collate">true</str> <str name="spellcheck.onlyMorePopular">false</str> <str name="spellcheck.count">2</str> </lst> <arr name="last-components"> <str>spellcheck</str> </arr> </requestHandler> <requestHandler name="/select" class="solr.SearchHandler"> <!-- default values for query parameters can be specified, these will be overridden by parameters in the request --> <lst name="defaults"> <str name="echoParams">explicit</str> <int name="rows">10</int> <!-- <str name="df">text</str> --> </lst> <!-- In addition to defaults, "appends" params can be specified to identify values which should be appended to the list of multi-val params from the query (or the existing "defaults"). --> <!-- In this example, the param "fq=instock:true" would be appended to any query time fq params the user may specify, as a mechanism for partitioning the index, independent of any user selected filtering that may also be desired (perhaps as a result of faceted searching). NOTE: there is *absolutely* nothing a client can do to prevent these "appends" values from being used, so don't use this mechanism unless you are sure you always want it. --> <!-- <lst name="appends"> <str name="fq">inStock:true</str> </lst> --> <!-- "invariants" are a way of letting the Solr maintainer lock down the options available to Solr clients. Any params values specified here are used regardless of what values may be specified in either the query, the "defaults", or the "appends" params. In this example, the facet.field and facet.query params would be fixed, limiting the facets clients can use. Faceting is not turned on by default - but if the client does specify facet=true in the request, these are the only facets they will be able to see counts for; regardless of what other facet.field or facet.query params they may specify. NOTE: there is *absolutely* nothing a client can do to prevent these "invariants" values from being used, so don't use this mechanism unless you are sure you always want it. --> <!-- <lst name="invariants"> <str name="facet.field">cat</str> <str name="facet.field">manu_exact</str> <str name="facet.query">price:[* TO 500]</str> <str name="facet.query">price:[500 TO *]</str> </lst> --> <!-- If the default list of SearchComponents is not desired, that list can either be overridden completely, or components can be prepended or appended to the default list. (see below) --> <!-- <arr name="components"> <str>nameOfCustomComponent1</str> <str>nameOfCustomComponent2</str> </arr> --> <arr name="last-components"> <str>spellcheck</str> </arr> </requestHandler> is this a bug or something else has to be done? Thanks. Alex.