Re: query keyword but no result (solr 8)
Derrick, This makes me think you do not have a default query field identified. Look in your solrcong.xml file for the requesthandler you are calling and see if it has the "df" parameter set. Should look something like: text Hope this helps! - Original Message - From: "Derrick Cui" To: solr-user@lucene.apache.org Sent: Monday, May 13, 2019 10:52:13 PM Subject: query keyword but no result (solr 8) Hi, I am trying to setup solrcloud, I can index a few documents successfully. but I cannot get result if I search keyword(without field). if I use field:keyword, I can get result. any idea why I get this issue? Thank you -- Regards, Derrick Cui Email: derrick...@gmail.com
DocTransformer [explain] not working in Solr 5
Not able to get the DocTransformer [explain] to work in Solr 5. I'm sure I'm doing something wrong. But I'm following the example in the documentation. https://cwiki.apache.org/confluence/display/solr/Transforming+Result+Documents Other transformers ( [docid] and [shard] ) are working as expected. Anyone know how to make this work? I've used it in the past with Solr 4. Any information greatly appreciated. Query and results follow. Thanks, Charles http://localhost:8983/solr/access_shard1_replica1/select?q=generic =1=id,[docid],[shard],[explain style=nl]=json=true=edismax=allTitle^3 allText^2 contents=true { "responseHeader":{ "status":0, "QTime":13, "params":{ "q":"generic\n", "defType":"edismax", "indent":"true", "qf":"allTitle^3 allText^2 contents", "fl":"id,[docid],[shard],[explain style=nl]", "rows":"1", "wt":"json", "debugQuery":"true"}}, "response":{"numFound":5,"start":0,"maxScore":2.890213,"docs":[ { "id":"99", "[docid]":70, "[shard]":"http://10.13.49.9:8983/solr/access_shard1_replica1/"}] }, "spellcheck":{ "suggestions":[], "collations":[]}, "debug":{ "track":{ "rid":"-access_shard1_replica1-1464265350378-8", "EXECUTE_QUERY":{ "http://10.13.49.9:8983/solr/access_shard1_replica1/":{ "QTime":"1", "ElapsedTime":"5", "RequestPurpose":"GET_TOP_IDS", "NumFound":"5", "Response":"{responseHeader={status=0,QTime=1,params={df=allText,distrib=false,spellcheck.dictionary=andreasAutoComplete,fl=[uri, score],shards.purpose=4,spellcheck.maxCollations=5,fsv=true,shard.url=http://10.13.49.9:8983/solr/access_shard1_replica1/,rid=-access_shard1_replica1-1464265350378-8,defType=edismax,qf=allTitle^3 allText^2 contents,wt=javabin,debug=[false, timing, track],qt=/select,start=0,rows=1,version=2,shards.qt=/select,q=generic\n,enableElevation=false,spellcheck=true,requestPurpose=GET_TOP_IDS,NOW=1464265350377,spellcheck.onlyMorePopular=true,isShard=true,spellcheck.count=5,debugQuery=false,spellcheck.collate=true}},response={numFound=5,start=0,maxScore=2.890213,docs=[SolrDocument{uri=http://foo/bar/Generic/99, score=2.890213}]},sort_values={},spellcheck={suggestions={},collations={},originalTerms=[generic]},debug={timing={time=1.0,prepare={time=0.0,query={time=0.0},facet={time=0.0},facet_module={time=0.0},mlt={time=0.0},highlight={time=0.0},stats={time=0.0},expand={time=0.0},elevator={time=0.0},autoComplete={time=0.0},debug={time=0.0}},process={time=0.0,query={time=0.0},facet={time=0.0},facet_module={time=0.0},mlt={time=0.0},highlight={time=0.0},stats={time=0.0},expand={time=0.0},elevator={time=0.0},autoComplete={time=0.0},debug={time=0.0}"}}, "GET_FIELDS":{ "http://10.13.49.9:8983/solr/access_shard1_replica1/":{ "QTime":"2", "ElapsedTime":"4", "RequestPurpose":"GET_FIELDS,GET_DEBUG", "NumFound":"1", "Response":"{responseHeader={status=0,QTime=2,params={df=allText,distrib=false,spellcheck.dictionary=andreasAutoComplete,fl=[id,[docid],[shard],[explain style=nl], uri],shards.purpose=320,spellcheck.maxCollations=5,shard.url=http://10.13.49.9:8983/solr/access_shard1_replica1/,rid=-access_shard1_replica1-1464265350378-8,defType=edismax,qf=allTitle^3 allText^2 contents,wt=javabin,debug=[timing, track],qt=/select,rows=1,version=2,shards.qt=/select,q=generic\n,enableElevation=false,spellcheck=false,requestPurpose=GET_FIELDS,GET_DEBUG,NOW=1464265350377,spellcheck.onlyMorePopular=true,ids=http://foo/bar/Generic/99,isShard=true,spellcheck.count=5,debugQuery=true,spellcheck.collate=true}},response={numFound=1,start=0,docs=[SolrDocument{id=99, [docid]=70, [shard]=http://10.13.49.9:8983/solr/access_shard1_replica1/}]},debug={rawquerystring=generic\n,querystring=generic\n,parsedquery=(+DisjunctionMaxQuery((allTitle:gener^3.0 | contents:gener | allText:gener^2.0)))/no_coord,parsedquery_toString=+(allTitle:gener^3.0 | contents:gener | allText:gener^2.0),explain={http://foo/bar/Generic/99=\n2.890213 = max of:\n 2.890213 = weight(allTitle:gener^3.0 in 70) [DefaultSimilarity], result of:\n 2.890213 = fieldWeight in 70, product of:\n 1.0 = tf(freq=1.0), with freq of:\n1.0 = termFreq=1.0\n 4.624341 = idf(docFreq=1, maxDocs=75)\n 0.625 = fieldNorm(doc=70)\n 0.33601448 = weight(contents:gener in 70) [DefaultSimilarity], result of:\n0.33601448 = score(doc=70,freq=1.0), product of:\n 0.2541428 = queryWeight, product of:\n3.5257287 = idf(docFreq=5, maxDocs=75)\n0.07208234 = queryNorm\n 1.3221483 = fieldWeight in 70, product of:\n1.0 = tf(freq=1.0), with freq of:\n 1.0 = termFreq=1.0\n3.5257287 = idf(docFreq=5, maxDocs=75)\n 0.375 =
Re: How to set multivalued false, using SolrJ
Hello, Multivalued fields are controlled by the schema. You need to define your field in the schema file as 'not' a multivalue field. Here are a couple of examples of field definitions, one multivalued, the other not. If you do not explicitly define your field, then solr will use default definitions, which are probably storing the field as multivalued. Charles - Original Message - From: "巩学超"To: solr-user@lucene.apache.org Sent: Monday, April 11, 2016 7:58:35 AM Subject: How to set multivalued false, using SolrJ Hello, Can you do me a favour, I use solrJ to index, but I get all the Field is multivalued. How can I set my Field to not multivalued, can you tell me how to setting use solrJ.
Re: SyntaxError - Block Join Parent Query
I tried this on another machine with a clean index. I was able to get the query to work. Thank you. Couple of related questions. 1) I was able to get this to work on a single shard machine. But I am not able to get this query to work on Solr with two shards (SorlCloud). Any reason why this does not work with SolrCloud? 2) The query pattern you supplied does not appear in the documentation. Do you know of any reason why the information in the documentation does not work and does not mention your pattern? https://cwiki.apache.org/confluence/display/solr/Other+Parsers#OtherParsers-BlockJoinQueryParsers Thanks again. - Original Message - From: "Mikhail Khludnev" <mkhlud...@griddynamics.com> To: "solr-user" <solr-user@lucene.apache.org> Sent: Thursday, March 24, 2016 11:31:11 AM Subject: Re: SyntaxError - Block Join Parent Query I suggest to add debugQuery=true and fl=*,[child ...] doc transformer. And come back with response. On Thu, Mar 24, 2016 at 3:23 PM, Charles Sanders <csand...@redhat.com> wrote: > Ah yes. Thank you. Made the correction and I do not get the SyntaxError. > However, it does not apply the child filter. The query should return only > TestParent4. But it is returning TestParent2, TestParent3 and TestParent4. > All of these meet the parent portion of the query (+blue). But only > TestParent4 should meet the child portion of the query. > > q=+blue +{!parent > which="documentKind:TestParent"v=$childq}=portal_product:("red hat") > > > { > "responseHeader":{ > "status":0, > "QTime":15, > "params":{ > "indent":"true", > "q":" blue {!parent which=\"documentKind:TestParent\"v=$childq}", > "childq":"portal_product:(\"red hat\")", > "wt":"json"}}, > "response":{"numFound":2733,"start":0,"maxScore":3.0138793,"docs":[ > { > "documentKind":"TestParent", > "uri":"https://ping/pong/testparent4;, > "view_uri":"https://ping/pong/testparent4;, > "id":"TestParent4", > "allTitle":"blue", > "sortTitle":"blue", > "_version_":1529622873461751808, > "_root_":["https://ping/pong/testparent4;], > "timestamp":"2016-03-23T19:40:48.211Z", > "language":"en"}, > { > "documentKind":"TestParent", > "uri":"https://ping/pong/testparent3;, > "view_uri":"https://ping/pong/testparent3;, > "id":"TestParent3", > "allTitle":"blue", > "sortTitle":"blue", > "_version_":1529622308758487040, > "_root_":["https://ping/pong/testparent3;], > "timestamp":"2016-03-23T19:31:49.668Z", > "language":"en"}, > { > "documentKind":"TestParent", > "uri":"https://ping/pong/testparent2;, > "view_uri":"https://ping/pong/testparent2;, > "id":"TestParent2", > "allTitle":"blue", > "sortTitle":"blue", > "_version_":1529622293809987584, > "_root_":["https://ping/pong/testparent2;], > "timestamp":"2016-03-23T19:31:35.408Z", > "language":"en"} > > - Original Message - > > From: "Mikhail Khludnev" <mkhlud...@griddynamics.com> > To: "solr-user" <solr-user@lucene.apache.org> > Sent: Wednesday, March 23, 2016 5:34:31 PM > Subject: Re: SyntaxError - Block Join Parent Query > > On Thu, Mar 24, 2016 at 12:16 AM, Charles Sanders <csand...@redhat.com> > wrote: > > > Thanks for the quick reply. But I'm not sure I understand. Did I do > > something wrong?? > > > Absolutely > 'portal_product"red hat")' > You omit a colon and opening bracket after a field name, don't you? > > > > > > > > > /select?q=+blue%20+{!parent%20which=%22documentKind:TestParent%22%20v=$childq}=portal_product%22red%20hat%22) > > > > > > > > > 400 > > 2 > > > > > > blue {!parent which="documentKind:TestParent" v=$childq} > > > > portal_product"red hat") > > > > > > > > > > org.apache.solr.search.SyntaxError: Cannot parse 'portal_product"red > > hat")': Encountered "
Re: SyntaxError - Block Join Parent Query
Ah yes. Thank you. Made the correction and I do not get the SyntaxError. However, it does not apply the child filter. The query should return only TestParent4. But it is returning TestParent2, TestParent3 and TestParent4. All of these meet the parent portion of the query (+blue). But only TestParent4 should meet the child portion of the query. q=+blue +{!parent which="documentKind:TestParent"v=$childq}=portal_product:("red hat") { "responseHeader":{ "status":0, "QTime":15, "params":{ "indent":"true", "q":" blue {!parent which=\"documentKind:TestParent\"v=$childq}", "childq":"portal_product:(\"red hat\")", "wt":"json"}}, "response":{"numFound":2733,"start":0,"maxScore":3.0138793,"docs":[ { "documentKind":"TestParent", "uri":"https://ping/pong/testparent4;, "view_uri":"https://ping/pong/testparent4;, "id":"TestParent4", "allTitle":"blue", "sortTitle":"blue", "_version_":1529622873461751808, "_root_":["https://ping/pong/testparent4;], "timestamp":"2016-03-23T19:40:48.211Z", "language":"en"}, { "documentKind":"TestParent", "uri":"https://ping/pong/testparent3;, "view_uri":"https://ping/pong/testparent3;, "id":"TestParent3", "allTitle":"blue", "sortTitle":"blue", "_version_":1529622308758487040, "_root_":["https://ping/pong/testparent3;], "timestamp":"2016-03-23T19:31:49.668Z", "language":"en"}, { "documentKind":"TestParent", "uri":"https://ping/pong/testparent2;, "view_uri":"https://ping/pong/testparent2;, "id":"TestParent2", "allTitle":"blue", "sortTitle":"blue", "_version_":1529622293809987584, "_root_":["https://ping/pong/testparent2;], "timestamp":"2016-03-23T19:31:35.408Z", "language":"en"} - Original Message - From: "Mikhail Khludnev" <mkhlud...@griddynamics.com> To: "solr-user" <solr-user@lucene.apache.org> Sent: Wednesday, March 23, 2016 5:34:31 PM Subject: Re: SyntaxError - Block Join Parent Query On Thu, Mar 24, 2016 at 12:16 AM, Charles Sanders <csand...@redhat.com> wrote: > Thanks for the quick reply. But I'm not sure I understand. Did I do > something wrong?? > Absolutely 'portal_product"red hat")' You omit a colon and opening bracket after a field name, don't you? > > > /select?q=+blue%20+{!parent%20which=%22documentKind:TestParent%22%20v=$childq}=portal_product%22red%20hat%22) > > > > > 400 > 2 > > > blue {!parent which="documentKind:TestParent" v=$childq} > > portal_product"red hat") > > > > > org.apache.solr.search.SyntaxError: Cannot parse 'portal_product"red > hat")': Encountered " ")" ") "" at line 1, column 23. Was expecting one of: > ... ... ... "+" ... "-" ... ... "(" ... > "*" ... "^" ... ... ... ... ... > ... ... "[" ... "{" ... ... ... > > 400 > > > > - Original Message - > > From: "Mikhail Khludnev" <mkhlud...@griddynamics.com> > To: "solr-user" <solr-user@lucene.apache.org> > Sent: Wednesday, March 23, 2016 5:02:29 PM > Subject: Re: SyntaxError - Block Join Parent Query > > On Wed, Mar 23, 2016 at 11:09 PM, Charles Sanders <csand...@redhat.com> > wrote: > > > I'm getting a SyntaxError which I do not understand when I execute a > block > > join parent query. I'm running Solr5.2.1, with 2 shards. The problem > > appears to be in that portion of the query that filters the child > document. > > Any insight as to where I made the error is greatly appreciated. > > > > This query produces an error: > > q=+blue +{!parent which="documentKind:TestParent"}portal_product:("red > > hat") > > -- should return TestParent4 > >
Re: SyntaxError - Block Join Parent Query
Thanks for the quick reply. But I'm not sure I understand. Did I do something wrong?? /select?q=+blue%20+{!parent%20which=%22documentKind:TestParent%22%20v=$childq}=portal_product%22red%20hat%22) 400 2 blue {!parent which="documentKind:TestParent" v=$childq} portal_product"red hat") org.apache.solr.search.SyntaxError: Cannot parse 'portal_product"red hat")': Encountered " ")" ") "" at line 1, column 23. Was expecting one of: ... ... ... "+" ... "-" ... ... "(" ... "*" ... "^" ... ... ... ... ... ... ... "[" ... "{" ... ... ... 400 - Original Message - From: "Mikhail Khludnev" <mkhlud...@griddynamics.com> To: "solr-user" <solr-user@lucene.apache.org> Sent: Wednesday, March 23, 2016 5:02:29 PM Subject: Re: SyntaxError - Block Join Parent Query On Wed, Mar 23, 2016 at 11:09 PM, Charles Sanders <csand...@redhat.com> wrote: > I'm getting a SyntaxError which I do not understand when I execute a block > join parent query. I'm running Solr5.2.1, with 2 shards. The problem > appears to be in that portion of the query that filters the child document. > Any insight as to where I made the error is greatly appreciated. > > This query produces an error: > q=+blue +{!parent which="documentKind:TestParent"}portal_product:("red > hat") > -- should return TestParent4 > q=+blue +{!parent which="documentKind:TestParent" v=$childq}=portal_product:("red hat") > However, this query works: > q=+blue +{!parent which="documentKind:TestParent"}portal_product:rhel > -- should return TestParent2 > > Sample data and schema information below: > { > "documentKind": "TestParent", > "uri": "https://ping/pong/testparent1;, > "view_uri": "https://ping/pong/testparent1;, > "id": "TestParent1", > "allTitle": "gold", > "allText": "gold", > "contents": "gold", > "_childDocuments_": [ > { > "documentKind": "TestChild", > "uri": "testchild1", > "id": "testchild1", > "portal_product_version": "6", > "portal_product": "rhel" > } > ] > } > > { > "documentKind": "TestParent", > "uri": "https://ping/pong/testparent2;, > "view_uri": "https://ping/pong/testparent2;, > "id": "TestParent2", > "allTitle": "blue", > "allText": "blue", > "contents": "blue", > "_childDocuments_": [ > { > "documentKind": "TestChild", > "uri": "testchild2", > "id": "testchild2", > "portal_product_version": "6", > "portal_product": "rhel" > } > ] > } > > { > "documentKind": "TestParent", > "uri": "https://ping/pong/testparent3;, > "view_uri": "https://ping/pong/testparent3;, > "id": "TestParent3", > "allTitle": "blue", > "allText": "blue", > "contents": "blue", > "_childDocuments_": [ > { > "documentKind": "TestChild", > "uri": "testchild3", > "id": "testchild3", > "portal_product_version": "3", > "portal_product": "rhev" > } > ] > } > > { > "documentKind": "TestParent", > "uri": "https://ping/pong/testparent4;, > "view_uri": "https://ping/pong/testparent4;, > "id": "TestParent4", > "allTitle": "blue", > "allText": "blue", > "contents": "blue", > "_childDocuments_": [ > { > "documentKind": "TestChild", > "uri": "testchild4", > "id": "testchild4", > "portal_product_version": "3", > "portal_product": "red hat" > } > ] > } > > required="true" /> > required="true"/> > > > > multiValued="true" termVectors="true" /> > multiValued="true" termVectors="true" /> > stored="true"/> > > -- Sincerely yours Mikhail Khludnev Principal Engineer, Grid Dynamics <http://www.griddynamics.com> <mkhlud...@griddynamics.com>
SyntaxError - Block Join Parent Query
I'm getting a SyntaxError which I do not understand when I execute a block join parent query. I'm running Solr5.2.1, with 2 shards. The problem appears to be in that portion of the query that filters the child document. Any insight as to where I made the error is greatly appreciated. This query produces an error: q=+blue +{!parent which="documentKind:TestParent"}portal_product:("red hat") -- should return TestParent4 However, this query works: q=+blue +{!parent which="documentKind:TestParent"}portal_product:rhel -- should return TestParent2 Sample data and schema information below: { "documentKind": "TestParent", "uri": "https://ping/pong/testparent1;, "view_uri": "https://ping/pong/testparent1;, "id": "TestParent1", "allTitle": "gold", "allText": "gold", "contents": "gold", "_childDocuments_": [ { "documentKind": "TestChild", "uri": "testchild1", "id": "testchild1", "portal_product_version": "6", "portal_product": "rhel" } ] } { "documentKind": "TestParent", "uri": "https://ping/pong/testparent2;, "view_uri": "https://ping/pong/testparent2;, "id": "TestParent2", "allTitle": "blue", "allText": "blue", "contents": "blue", "_childDocuments_": [ { "documentKind": "TestChild", "uri": "testchild2", "id": "testchild2", "portal_product_version": "6", "portal_product": "rhel" } ] } { "documentKind": "TestParent", "uri": "https://ping/pong/testparent3;, "view_uri": "https://ping/pong/testparent3;, "id": "TestParent3", "allTitle": "blue", "allText": "blue", "contents": "blue", "_childDocuments_": [ { "documentKind": "TestChild", "uri": "testchild3", "id": "testchild3", "portal_product_version": "3", "portal_product": "rhev" } ] } { "documentKind": "TestParent", "uri": "https://ping/pong/testparent4;, "view_uri": "https://ping/pong/testparent4;, "id": "TestParent4", "allTitle": "blue", "allText": "blue", "contents": "blue", "_childDocuments_": [ { "documentKind": "TestChild", "uri": "testchild4", "id": "testchild4", "portal_product_version": "3", "portal_product": "red hat" } ] }
Re: Problem with solr.LengthFilterFactory
Jack, Thanks for the information. If I understand this correctly, the White space tokenizer will break a single token of size 300 into two tokens, one of size 256 and the other of size 44. If this is true, then for the single test document I have used, in the index in the portal_package field, I should see two tokens rather than one large single token. If my understanding is correct, then why in my production system, where we occasionally get a single very large token, do I see this error? Caused by: java.lang.IllegalArgumentException: Document contains at least one immense term in field=portal_package (whose UTF8 encoding is longer than the max length 32766) The existence of this error would lead me to conclude that a very large single token is making its way through the white space tokenizer and filters to the index where it is rejected. I'm afraid my understanding is not complete. Can you fill in the gaps? Thanks, Charles - Original Message - From: Jack Krupansky jack.krupan...@gmail.com To: solr-user@lucene.apache.org Sent: Friday, May 15, 2015 4:31:22 PM Subject: Re: Problem with solr.LengthFilterFactory Sorry that my brain has turned to mush... the issue you are hitting is due to a known, undocumented limit in the whitespace tokenizer: https://issues.apache.org/jira/browse/LUCENE-5785 White space tokenizer has undocumented limit of 256 characters per token If you look at the parsed query you will see that two query terms were generated. This is because the whitespace tokenizer will simply split long tokens every 256 characters. So, your filter will never see a long term. There is a note on the Jira (evidently by me!) that you can use the pattern tokenizer as a workaround. But... if your term is a string anyway, you could just use the keyword tokenizer. -- Jack Krupansky On Fri, May 15, 2015 at 4:06 PM, Charles Sanders csand...@redhat.com wrote: Shawn, Thanks a bunch for working with me on this. I have deleted all records from my index. Stopped solr. Made the schema changes as requested. Started solr. Then insert the one test record. Then search. Still see the same results. No portal_package is not the unique key, its uri. Which is a string field. field name=portal_package type=text_std indexed=true stored=true multiValued=true/ fieldType name=text_std class=solr.TextField positionIncrementGap=100 tokenizer class=solr.WhitespaceTokenizerFactory/ filter class=solr.LengthFilterFactory min=1 max=300 / /fieldType { documentKind: test, uri: test300, id: test300, portal_package:12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890 } { responseHeader: { status: 0, QTime: 47, params: { spellcheck: true, enableElevation: false, df: allText, echoParams: all, spellcheck.maxCollations: 5, spellcheck.dictionary: andreasAutoComplete, spellcheck.count: 5, spellcheck.collate: true, spellcheck.onlyMorePopular: true, rows: 10, indent: true, q: portal_package:12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890, _: 1431719989047, debug: query, wt: json } }, response: { numFound: 1, start: 0, docs: [ { documentKind: test, uri: test300, id: test300, portal_package: [ 12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890 ], _version_: 1501267024421060600, timestamp: 2015-05-15T19:56:43.247Z, language: en } ] }, debug: { rawquerystring: portal_package
Re: Problem with solr.LengthFilterFactory
Shawn, Sorry about my mistake. I have rerun the test with the correct fieldType definition. Still have the same results. See test information below. field name=portal_package type=text_std indexed=true stored=true multiValued=true/ fieldType name=text_std class=solr.TextField positionIncrementGap=100 analyzer tokenizer class=solr.WhitespaceTokenizerFactory/ filter class=solr.LengthFilterFactory min=1 max=300 / /analyzer /fieldType { documentKind: test, uri: test300, id: test300, portal_package: 12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890 } { responseHeader: { status: 0, QTime: 43, params: { indent: true, q: portal_package:12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890, _: 1431951254019, wt: json } }, response: { numFound: 1, start: 0, docs: [ { documentKind: test, uri: test300, id: test300, portal_package: [ 12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890 ], _version_: 1501509688204722200, timestamp: 2015-05-18T12:13:45.464Z, language: en } ] } } - Original Message - From: Shawn Heisey apa...@elyograg.org To: solr-user@lucene.apache.org Sent: Friday, May 15, 2015 4:22:10 PM Subject: Re: Problem with solr.LengthFilterFactory On 5/15/2015 2:06 PM, Charles Sanders wrote: I have deleted all records from my index. Stopped solr. Made the schema changes as requested. Started solr. Then insert the one test record. Then search. Still see the same results. No portal_package is not the unique key, its uri. Which is a string field. field name=portal_package type=text_std indexed=true stored=true multiValued=true/ fieldType name=text_std class=solr.TextField positionIncrementGap=100 tokenizer class=solr.WhitespaceTokenizerFactory/ filter class=solr.LengthFilterFactory min=1 max=300 / /fieldType You got rid of analyzer and it's closing tag entirely, that's not going to work. This is what you need, and you'll need to reindex the doc again: fieldType name=text_std class=solr.TextField positionIncrementGap=100 analyzer tokenizer class=solr.WhitespaceTokenizerFactory/ filter class=solr.LengthFilterFactory min=1 max=300/ /analyzer /fieldType Here's a temporary paste that you can copy/paste: http://apaste.info/NXn Thanks, Shawn
Re: Problem with solr.LengthFilterFactory
No, the field has always been text. And from the error, its obviously passing a very large token to the index, regardless of the tokenizer and filter. So I guess I will have to tokenize and filter the text before I send it to solr, since solr is not able to properly handle a very large token. More custom code. Thanks everyone for your help. Charles - Original Message - From: Jack Krupansky jack.krupan...@gmail.com To: solr-user@lucene.apache.org Sent: Monday, May 18, 2015 12:00:37 PM Subject: Re: Problem with solr.LengthFilterFactory Sorry for not spotting that earlier. Lucene itself does have such a limit. No way around it - an individual term is limited to 32K-2 bytes. Lucene is designed for searching of terms, not large blob storage. Maybe you defined that field as a string originally and later updated your schema to a text field, so that Lucene still knows it as an unanalyzed string field? You need to delete the index and start over if you want to change the field types like that. -- Jack Krupansky On Mon, May 18, 2015 at 8:33 AM, Charles Sanders csand...@redhat.com wrote: Jack, Thanks for the information. If I understand this correctly, the White space tokenizer will break a single token of size 300 into two tokens, one of size 256 and the other of size 44. If this is true, then for the single test document I have used, in the index in the portal_package field, I should see two tokens rather than one large single token. If my understanding is correct, then why in my production system, where we occasionally get a single very large token, do I see this error? Caused by: java.lang.IllegalArgumentException: Document contains at least one immense term in field=portal_package (whose UTF8 encoding is longer than the max length 32766) The existence of this error would lead me to conclude that a very large single token is making its way through the white space tokenizer and filters to the index where it is rejected. I'm afraid my understanding is not complete. Can you fill in the gaps? Thanks, Charles - Original Message - From: Jack Krupansky jack.krupan...@gmail.com To: solr-user@lucene.apache.org Sent: Friday, May 15, 2015 4:31:22 PM Subject: Re: Problem with solr.LengthFilterFactory Sorry that my brain has turned to mush... the issue you are hitting is due to a known, undocumented limit in the whitespace tokenizer: https://issues.apache.org/jira/browse/LUCENE-5785 White space tokenizer has undocumented limit of 256 characters per token If you look at the parsed query you will see that two query terms were generated. This is because the whitespace tokenizer will simply split long tokens every 256 characters. So, your filter will never see a long term. There is a note on the Jira (evidently by me!) that you can use the pattern tokenizer as a workaround. But... if your term is a string anyway, you could just use the keyword tokenizer. -- Jack Krupansky On Fri, May 15, 2015 at 4:06 PM, Charles Sanders csand...@redhat.com wrote: Shawn, Thanks a bunch for working with me on this. I have deleted all records from my index. Stopped solr. Made the schema changes as requested. Started solr. Then insert the one test record. Then search. Still see the same results. No portal_package is not the unique key, its uri. Which is a string field. field name=portal_package type=text_std indexed=true stored=true multiValued=true/ fieldType name=text_std class=solr.TextField positionIncrementGap=100 tokenizer class=solr.WhitespaceTokenizerFactory/ filter class=solr.LengthFilterFactory min=1 max=300 / /fieldType { documentKind: test, uri: test300, id: test300, portal_package:12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890 } { responseHeader: { status: 0, QTime: 47, params: { spellcheck: true, enableElevation: false, df: allText, echoParams: all, spellcheck.maxCollations: 5, spellcheck.dictionary: andreasAutoComplete, spellcheck.count: 5, spellcheck.collate: true, spellcheck.onlyMorePopular: true, rows: 10, indent: true, q: portal_package:123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345
Re: Problem with solr.LengthFilterFactory
Yes, that is what I am seeing. Looking in the code myself, I see no reason for this behavior. That is why I assumed I was doing something very wrong. Below I have included an example. I set the max length to 300. I insert a record with a single token of 500 characters. I expect the token to be removed and not included in the index. When I query using the large token, the record is returned. I can see the same result using the analysis page in the solr console. He is a test example: field name=portal_package type=text_std indexed=true stored=true multiValued=true/ fieldType name=text_std class=solr.TextField positionIncrementGap=100 analyzer type=index tokenizer class=solr.WhitespaceTokenizerFactory/ filter class=solr.LengthFilterFactory min=1 max=300 / /analyzer /fieldType A test record: { documentKind: test, uri: test300, id: test300, portal_package: 12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890 } Query result: { responseHeader: { status: 0, QTime: 55, params: { indent: true, q: portal_package:12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890, _: 1431704135745, wt: json } }, response: { numFound: 1, start: 0, docs: [ { documentKind: test, uri: test300, id: test300, portal_package: [ 12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890 ], _version_: 1501249997589446700, timestamp: 2015-05-15T15:26:05.205Z, language: en } ] } } - Original Message - From: Shawn Heisey apa...@elyograg.org To: solr-user@lucene.apache.org Sent: Friday, May 15, 2015 11:13:14 AM Subject: Re: Problem with solr.LengthFilterFactory On 5/15/2015 8:49 AM, Charles Sanders wrote: I'm seeing a problem with the LengthFilter. It appears to work fine until I increase the max value above 254. At the point it stops removing the very large token from the stream. As a result I get the error: java.lang.IllegalArgumentException: Document contains at least one immense term.. UTF8 encoding is longer than the max length 32766 I'm certain I'm doing this wrong. Can someone please show me the light. :) fieldType name=text_std class=solr.TextField positionIncrementGap=100 analyzer type=index tokenizer class=solr.WhitespaceTokenizerFactory/ filter class=solr.LengthFilterFactory min=1 max=254 / /analyzer /fieldType So with max=254, you don't get the error? Looking at the code for LengthFilter, I can't see any way for it to behave differently with a max of 254 vs. a max of 255 or higher. All of the interfaces and classes involved use int for length, which means it should work perfectly with numbers above 254. Thanks, Shawn
Re: Problem with solr.LengthFilterFactory
Agree 100%. The value returned is the value stored. Not affected by the analyzer. However, I searched for that token. See my query? I would expect the analyzer to remove the large token. So that when I search for the large token I would find nothing. Rather it returns my record. Am I missing something here? - Original Message - From: Jack Krupansky jack.krupan...@gmail.com To: solr-user@lucene.apache.org Sent: Friday, May 15, 2015 11:56:51 AM Subject: Re: Problem with solr.LengthFilterFactory The returned value is the stored or original source value - only the indexed terms are affected by token filtering. You could use an update processor if you want to adjust the actual source value, such as the truncate processor to truncate long source values: http://lucene.apache.org/solr/5_1_0/solr-core/org/apache/solr/update/processor/TruncateFieldUpdateProcessorFactory.html -- Jack Krupansky On Fri, May 15, 2015 at 11:38 AM, Charles Sanders csand...@redhat.com wrote: Yes, that is what I am seeing. Looking in the code myself, I see no reason for this behavior. That is why I assumed I was doing something very wrong. Below I have included an example. I set the max length to 300. I insert a record with a single token of 500 characters. I expect the token to be removed and not included in the index. When I query using the large token, the record is returned. I can see the same result using the analysis page in the solr console. He is a test example: field name=portal_package type=text_std indexed=true stored=true multiValued=true/ fieldType name=text_std class=solr.TextField positionIncrementGap=100 analyzer type=index tokenizer class=solr.WhitespaceTokenizerFactory/ filter class=solr.LengthFilterFactory min=1 max=300 / /analyzer /fieldType A test record: { documentKind: test, uri: test300, id: test300, portal_package: 12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890 } Query result: { responseHeader: { status: 0, QTime: 55, params: { indent: true, q: portal_package:12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890, _: 1431704135745, wt: json } }, response: { numFound: 1, start: 0, docs: [ { documentKind: test, uri: test300, id: test300, portal_package: [ 12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890 ], _version_: 1501249997589446700, timestamp: 2015-05-15T15:26:05.205Z, language: en } ] } } - Original Message - From: Shawn Heisey apa...@elyograg.org To: solr-user@lucene.apache.org Sent: Friday, May 15, 2015 11:13:14 AM Subject: Re: Problem with solr.LengthFilterFactory On 5/15/2015 8:49 AM, Charles Sanders wrote: I'm seeing a problem with the LengthFilter. It appears to work fine until I increase the max value above 254. At the point it stops removing the very large token from the stream. As a result I get the error: java.lang.IllegalArgumentException: Document contains at least one immense term.. UTF8 encoding is longer than the max length 32766 I'm certain I'm doing this wrong. Can someone please show me the light. :) fieldType name=text_std class=solr.TextField positionIncrementGap=100 analyzer type=index tokenizer class=solr.WhitespaceTokenizerFactory/ filter class=solr.LengthFilterFactory min=1 max=254 / /analyzer /fieldType So with max=254, you don't get the error? Looking at the code for LengthFilter, I can't see any way for it to behave differently with a max of 254 vs. a max of 255 or higher. All of the interfaces
Problem with solr.LengthFilterFactory
I'm seeing a problem with the LengthFilter. It appears to work fine until I increase the max value above 254. At the point it stops removing the very large token from the stream. As a result I get the error: java.lang.IllegalArgumentException: Document contains at least one immense term.. UTF8 encoding is longer than the max length 32766 I'm certain I'm doing this wrong. Can someone please show me the light. :) fieldType name=text_std class=solr.TextField positionIncrementGap=100 analyzer type=index tokenizer class=solr.WhitespaceTokenizerFactory/ filter class=solr.LengthFilterFactory min=1 max=254 / /analyzer /fieldType Solr Version - 4.8.1 -Charles
Re: Problem with solr.LengthFilterFactory
Shawn, Thanks a bunch for working with me on this. I have deleted all records from my index. Stopped solr. Made the schema changes as requested. Started solr. Then insert the one test record. Then search. Still see the same results. No portal_package is not the unique key, its uri. Which is a string field. field name=portal_package type=text_std indexed=true stored=true multiValued=true/ fieldType name=text_std class=solr.TextField positionIncrementGap=100 tokenizer class=solr.WhitespaceTokenizerFactory/ filter class=solr.LengthFilterFactory min=1 max=300 / /fieldType { documentKind: test, uri: test300, id: test300, portal_package:12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890 } { responseHeader: { status: 0, QTime: 47, params: { spellcheck: true, enableElevation: false, df: allText, echoParams: all, spellcheck.maxCollations: 5, spellcheck.dictionary: andreasAutoComplete, spellcheck.count: 5, spellcheck.collate: true, spellcheck.onlyMorePopular: true, rows: 10, indent: true, q: portal_package:12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890, _: 1431719989047, debug: query, wt: json } }, response: { numFound: 1, start: 0, docs: [ { documentKind: test, uri: test300, id: test300, portal_package: [ 12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890 ], _version_: 1501267024421060600, timestamp: 2015-05-15T19:56:43.247Z, language: en } ] }, debug: { rawquerystring: portal_package:12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890, querystring: portal_package:12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890, parsedquery: portal_package:1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456 portal_package:7890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890, parsedquery_toString: portal_package:1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456 portal_package:7890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890, QParser: LuceneQParser } }
Re: Problem with solr.LengthFilterFactory
Ran the same test as below. Added echoParams=all and debug=query. Thanks for the help! Results { responseHeader: { status: 0, QTime: 46, params: { spellcheck: true, enableElevation: false, df: allText, echoParams: all, spellcheck.maxCollations: 5, spellcheck.dictionary: andreasAutoComplete, spellcheck.count: 5, spellcheck.collate: true, spellcheck.onlyMorePopular: true, rows: 10, indent: true, q: portal_package:12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890, _: 1431715486263, debug: query, wt: json } }, response: { numFound: 1, start: 0, docs: [ { documentKind: test, uri: test300, id: test300, portal_package: [ 12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890 ], _version_: 1501262378591846400, timestamp: 2015-05-15T18:42:52.625Z, language: en } ] }, debug: { rawquerystring: portal_package:12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890, querystring: portal_package:12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890, parsedquery: portal_package:123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345 portal_package:67890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890, parsedquery_toString: portal_package:123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345 portal_package:67890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890, QParser: LuceneQParser } } - Original Message - From: Shawn Heisey apa...@elyograg.org To: solr-user@lucene.apache.org Sent: Friday, May 15, 2015 2:36:03 PM Subject: Re: Problem with solr.LengthFilterFactory On 5/15/2015 10:04 AM, Charles Sanders wrote: Agree 100%. The value returned is the value stored. Not affected by the analyzer. However, I searched for that token. See my query? I would expect the analyzer to remove the large token. So that when I search for the large token I would find nothing. Rather it returns my record. Am I missing something here? Can you add echoParams=all and debug=query to your request and send the response you get? Thanks, Shawn
Re: Query Elevation Component only elevates one document in elevateIds list
Ah that did it. I was adding them as an array of strings. Actually setting it in SolrJ. params.set(QueryElevationParams.IDS, sa); Where sa is a String[]. Don't do that. :) Much thanks Joel. - Original Message - From: Joel Bernstein joels...@gmail.com To: solr-user@lucene.apache.org Sent: Friday, February 6, 2015 2:54:20 PM Subject: Re: Query Elevation Component only elevates one document in elevateIds list Try sending the elevateIds as a comma delimited list. Joel Bernstein Search Engineer at Heliosearch On Fri, Feb 6, 2015 at 2:17 PM, Charles Sanders csand...@redhat.com wrote: Using the Query Elevation Component in solr 4.8 and the elevateIds parameter to force 3 documents to the top of the query results. Query and results included below. In the results, you will see only one document of the three is in the query results. It is the first document and it is marked as elevated. The other two are not in the results. I've read the documentation here: https://archive.apache.org/dist/lucene/solr/ref-guide/apache-solr-ref-guide-4.8.pdf and here: https://cwiki.apache.org/confluence/display/solr/The+Query+Elevation+Component Based on the documentation, I think I have done this correctly, but the results are not as expected. Any thoughts? -Charles Query ** $HOST/solr/collection1/select?enableElevation=truefl=uri,allTitlefl=%5Belevated%5Dstart=0q=oracleqf=allTitleqf=allTextelevateIds=https%3A%2F% 2Fapi.access.devgssci.devlab.phx1.redhat.com %2Frs%2Farticles%2F216093elevateIds=https%3A%2F% 2Fapi.access.devgssci.devlab.phx1.redhat.com %2Frs%2Farticles%2F395013elevateIds=https%3A%2F% 2Fapi.access.devgssci.devlab.phx1.redhat.com %2Frs%2Farticles%2F725843wt=jsondefType=edismaxrows=10indent=trueforceElevation=true ** Query - decode so its easier to read * $HOST/solr/collection1/select?enableElevation=truefl=uri,allTitlefl=[elevated]start=0q=oracleqf=allTitleqf=allTextelevateIds= https://api.access.devgssci.devlab.phx1.redhat.com/rs/articles/216093elevateIds=https://api.access.devgssci.devlab.phx1.redhat.com/rs/articles/395013elevateIds=https://api.access.devgssci.devlab.phx1.redhat.com/rs/articles/725843wt=jsondefType=edismaxrows=10indent=trueforceElevation=true ** Results ** { responseHeader:{ status:0, QTime:274, params:{ enableElevation:true, fl:[uri,allTitle, [elevated]], indent:true, start:0, q:oracle, forceElevation:true, qf:[allTitle, allText], wt:json, elevateIds:[ https://api.access.devgssci.devlab.phx1.redhat.com/rs/articles/216093;, https://api.access.devgssci.devlab.phx1.redhat.com/rs/articles/395013;, https://api.access.devgssci.devlab.phx1.redhat.com/rs/articles/725843;], rows:10, defType:edismax}}, response:{numFound:95055,start:0,maxScore:5.220278,docs:[ { uri: https://api.access.devgssci.devlab.phx1.redhat.com/rs/articles/216093;, allTitle:Storage Management for the Oracle Database on Red Hat Enterprise Linux 6: Using ASM With or Without ASMLib, [elevated]:true}, { uri: https://api.access.devgssci.devlab.phx1.redhat.com/rs/ecosystem/software/838843 , allTitle:Oracle Salt, [elevated]:false}, { uri: https://api.access.devgssci.devlab.phx1.redhat.com/rs/ecosystem/software/838413 , allTitle:Oracle iProcurement, [elevated]:false}, { uri: https://api.access.devgssci.devlab.phx1.redhat.com/rs/ecosystem/software/839063 , allTitle:Oracle TSAM, [elevated]:false}, { uri: https://api.access.devgssci.devlab.phx1.redhat.com/rs/ecosystem/software/839073 , allTitle:Oracle Tuxedo, [elevated]:false}, { uri: https://api.access.devgssci.devlab.phx1.redhat.com/rs/ecosystem/software/838953 , allTitle:Oracle Sourcing, [elevated]:false}, { uri: https://api.access.devgssci.devlab.phx1.redhat.com/rs/ecosystem/software/837383 , allTitle:Oracle Coherence, [elevated]:false}, { uri: https://api.access.devgssci.devlab.phx1.redhat.com/rs/ecosystem/software/837363 , allTitle:Oracle Clinical, [elevated]:false}, { uri: https://api.access.devgssci.devlab.phx1.redhat.com/rs/ecosystem/software/837443 , allTitle:Oracle Database, [elevated]:false}, { uri: https://api.access.devgssci.devlab.phx1.redhat.com/rs/ecosystem/software/820373 , allTitle:Oracle RAC, [elevated]:false}] }, spellcheck:{ suggestions:[]}}
Query Elevation Component only elevates one document in elevateIds list
Using the Query Elevation Component in solr 4.8 and the elevateIds parameter to force 3 documents to the top of the query results. Query and results included below. In the results, you will see only one document of the three is in the query results. It is the first document and it is marked as elevated. The other two are not in the results. I've read the documentation here: https://archive.apache.org/dist/lucene/solr/ref-guide/apache-solr-ref-guide-4.8.pdf and here: https://cwiki.apache.org/confluence/display/solr/The+Query+Elevation+Component Based on the documentation, I think I have done this correctly, but the results are not as expected. Any thoughts? -Charles Query ** $HOST/solr/collection1/select?enableElevation=truefl=uri,allTitlefl=%5Belevated%5Dstart=0q=oracleqf=allTitleqf=allTextelevateIds=https%3A%2F%2Fapi.access.devgssci.devlab.phx1.redhat.com%2Frs%2Farticles%2F216093elevateIds=https%3A%2F%2Fapi.access.devgssci.devlab.phx1.redhat.com%2Frs%2Farticles%2F395013elevateIds=https%3A%2F%2Fapi.access.devgssci.devlab.phx1.redhat.com%2Frs%2Farticles%2F725843wt=jsondefType=edismaxrows=10indent=trueforceElevation=true ** Query - decode so its easier to read * $HOST/solr/collection1/select?enableElevation=truefl=uri,allTitlefl=[elevated]start=0q=oracleqf=allTitleqf=allTextelevateIds=https://api.access.devgssci.devlab.phx1.redhat.com/rs/articles/216093elevateIds=https://api.access.devgssci.devlab.phx1.redhat.com/rs/articles/395013elevateIds=https://api.access.devgssci.devlab.phx1.redhat.com/rs/articles/725843wt=jsondefType=edismaxrows=10indent=trueforceElevation=true ** Results ** { responseHeader:{ status:0, QTime:274, params:{ enableElevation:true, fl:[uri,allTitle, [elevated]], indent:true, start:0, q:oracle, forceElevation:true, qf:[allTitle, allText], wt:json, elevateIds:[https://api.access.devgssci.devlab.phx1.redhat.com/rs/articles/216093;, https://api.access.devgssci.devlab.phx1.redhat.com/rs/articles/395013;, https://api.access.devgssci.devlab.phx1.redhat.com/rs/articles/725843;], rows:10, defType:edismax}}, response:{numFound:95055,start:0,maxScore:5.220278,docs:[ { uri:https://api.access.devgssci.devlab.phx1.redhat.com/rs/articles/216093;, allTitle:Storage Management for the Oracle Database on Red Hat Enterprise Linux 6: Using ASM With or Without ASMLib, [elevated]:true}, { uri:https://api.access.devgssci.devlab.phx1.redhat.com/rs/ecosystem/software/838843;, allTitle:Oracle Salt, [elevated]:false}, { uri:https://api.access.devgssci.devlab.phx1.redhat.com/rs/ecosystem/software/838413;, allTitle:Oracle iProcurement, [elevated]:false}, { uri:https://api.access.devgssci.devlab.phx1.redhat.com/rs/ecosystem/software/839063;, allTitle:Oracle TSAM, [elevated]:false}, { uri:https://api.access.devgssci.devlab.phx1.redhat.com/rs/ecosystem/software/839073;, allTitle:Oracle Tuxedo, [elevated]:false}, { uri:https://api.access.devgssci.devlab.phx1.redhat.com/rs/ecosystem/software/838953;, allTitle:Oracle Sourcing, [elevated]:false}, { uri:https://api.access.devgssci.devlab.phx1.redhat.com/rs/ecosystem/software/837383;, allTitle:Oracle Coherence, [elevated]:false}, { uri:https://api.access.devgssci.devlab.phx1.redhat.com/rs/ecosystem/software/837363;, allTitle:Oracle Clinical, [elevated]:false}, { uri:https://api.access.devgssci.devlab.phx1.redhat.com/rs/ecosystem/software/837443;, allTitle:Oracle Database, [elevated]:false}, { uri:https://api.access.devgssci.devlab.phx1.redhat.com/rs/ecosystem/software/820373;, allTitle:Oracle RAC, [elevated]:false}] }, spellcheck:{ suggestions:[]}}
Re: Suggester Example In Documentation Not Working
Well, I'm running LucidWorks 2.9.1 which contains Solr 4.8. I initially was working with the Solr documentation: http://archive.apache.org/dist/lucene/solr/ref-guide/apache-solr-ref-guide-4.8.pdf However, you will notice on page 228, under the section Suggester, it gives an example of a suggester search component using solr.SpellCheckComponet. Then our support rep at LucidWorks said we should use the documentation found here: https://cwiki.apache.org/confluence/display/solr/Suggester This documentation is for Solr 5.0, however, you will notice the statement: Solr has long had the autosuggest functionality, but Solr 4.7 introduced a new approach based on a dedicated SuggestComponent . So it would appear the solr.SuggestComponent has been around since 4.7, but the documentation has not caught up with the changes. Which is the source of a little confusion. Nevertheless, I had hoped to find a simple working example that I could use as a starting point to get the solr.SuggestComponent working so that I might play around with it and make it do what I want. The suggester appears to have many parameters and options, of which, several contain little or no explanation. No problem. I will just have to invest a little more time to unravel how the component works and how I can best use it. Thanks for your reply. - Original Message - From: Chris Hostetter hossman_luc...@fucit.org To: solr-user@lucene.apache.org Sent: Thursday, January 22, 2015 12:50:46 PM Subject: Re: Suggester Example In Documentation Not Working 1) which version of Solr are you using? (note that the online HTML ref guide is a DRARFT that applies to 5.0 - you may want to review the specific released version of the ref guide that applies to your version of solr: http://archive.apache.org/dist/lucene/solr/ref-guide/ 2) the behavior of the suggester is very specific to the contents of the dictionary built -- the examples on that page apply to the example docs included with solr -- hence the techproduct data, and the example queries for input like elec suggesting electronics no where on that page is an example using the query kern -- wether or not that input would return a suggestion is going to be entirely dependent on wether the dictionary you built contains any similar terms to suggest. if you can please post more details about your documents -- ideally a full set of all the documents in your index (using a small test index of course) that may help to understand the results you are getting. : Date: Thu, 22 Jan 2015 11:14:43 -0500 (EST) : From: Charles Sanders csand...@redhat.com : Reply-To: solr-user@lucene.apache.org : To: solr-user@lucene.apache.org : Subject: Suggester Example In Documentation Not Working : : Attempting to follow the documentation found here: : https://cwiki.apache.org/confluence/display/solr/Suggester : : The example given in the documentation is not working. See below my configuration. I only changed the field names to those in my schema. Can anyone provide an example for this component that actually works? : : searchComponent name=suggest class=solr.SuggestComponent : lst name=suggester : str name=namemySuggester/str : str name=lookupImplFuzzyLookupFactory/str : str name=dictionaryImplDocumentDictionaryFactory/str : str name=fieldsugg_allText/str : str name=weightFieldsuggestWeight/str : str name=suggestAnalyzerFieldTypestring/str : /lst : /searchComponent : : requestHandler name=/suggest class=solr.SearchHandler startup=lazy : lst name=defaults : str name=suggesttrue/str : str name=suggest.count10/str : str name=suggest.buildtrue/str : /lst : arr name=components : strsuggest/str : /arr : /requestHandler : : field name=sugg_allText type=string indexed=true multiValued=true stored=false/ : field name=suggestWeight type=long indexed=true stored=true default=1 / : : : http://localhost:/solr/collection1/suggest?suggest=truesuggest.build=truesuggest.dictionary=mySuggesterwt=jsonsuggest.q=kern : : {responseHeader:{status:0,QTime:4},command:build,suggest:{mySuggester:{kern:{numFound:0,suggestions:[] : -Hoss http://www.lucidworks.com/
Suggester Example In Documentation Not Working
Attempting to follow the documentation found here: https://cwiki.apache.org/confluence/display/solr/Suggester The example given in the documentation is not working. See below my configuration. I only changed the field names to those in my schema. Can anyone provide an example for this component that actually works? searchComponent name=suggest class=solr.SuggestComponent lst name=suggester str name=namemySuggester/str str name=lookupImplFuzzyLookupFactory/str str name=dictionaryImplDocumentDictionaryFactory/str str name=fieldsugg_allText/str str name=weightFieldsuggestWeight/str str name=suggestAnalyzerFieldTypestring/str /lst /searchComponent requestHandler name=/suggest class=solr.SearchHandler startup=lazy lst name=defaults str name=suggesttrue/str str name=suggest.count10/str str name=suggest.buildtrue/str /lst arr name=components strsuggest/str /arr /requestHandler field name=sugg_allText type=string indexed=true multiValued=true stored=false/ field name=suggestWeight type=long indexed=true stored=true default=1 / http://localhost:/solr/collection1/suggest?suggest=truesuggest.build=truesuggest.dictionary=mySuggesterwt=jsonsuggest.q=kern {responseHeader:{status:0,QTime:4},command:build,suggest:{mySuggester:{kern:{numFound:0,suggestions:[]
Re: SpellCheck (AutoComplete) Not Working In Distributed Environment
Still not able to get my autoComplete component to work in a distributed environment. Works fine on a non-distributed system. Also, on the distributed system, if I include distrib=false, it works. I have tried shards.qt and shards parameters, but they make no difference. I should add, I am running SolrCloud and ZooKeeper, if that makes any difference. I have played around with this quite a bit, but nothing seems to work. When I add shards.qt=/ac {the name of the request handler}, I get an error in the solr logs. It simply states: java.lang.NullPointerException. That's it nothing more. This is listed as logger SolrCore and SolrDispatchFilter. Any ideas, suggestions on how I can troubleshoot and find the problem? Is there something specific I should look for? Please find attached text file with relevant information from schema.xml and sorlconfig.xml. Any help greatly appreciated! Thanks, -Charles - Original Message - From: Erick Erickson erickerick...@gmail.com To: solr-user@lucene.apache.org Sent: Tuesday, December 30, 2014 6:07:13 PM Subject: Re: SpellCheck (AutoComplete) Not Working In Distributed Environment Did you try the shards parameter? See: https://cwiki.apache.org/confluence/display/solr/Spell+Checking#SpellChecking-DistributedSpellCheck On Tue, Dec 30, 2014 at 2:20 PM, Charles Sanders csand...@redhat.com wrote: I'm running Solr 4.8 in a distributed environment (2 shards). I have added the spellcheck component to my request handler. In my test system, which is not distributed, it works. But when I move it to the Dev box, which is distributed, 2 shards, it is not working. Is there something additional I must do to get this to work in a distributed environment? requestHandler default=true name=standard 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=echoParamsexplicit/str int name=rows10/int str name=dfallText/str !-- default autocomplete settings for this search request handler -- str name=spellchecktrue/str str name=spellcheck.dictionaryandreasAutoComplete/str str name=spellcheck.onlyMorePopulartrue/str str name=spellcheck.count5/str str name=spellcheck.collatetrue/str str name=spellcheck.maxCollations5/str /lst arr name=last-components strautoComplete/str /arr /requestHandler searchComponent name=autoComplete class=solr.SpellCheckComponent lst name=spellchecker str name=nameandreasAutoComplete/str str name=classnameorg.apache.solr.spelling.suggest.Suggester/str str name=lookupImplorg.apache.solr.spelling.suggest.tst.TSTLookupFactory/str str name=fieldsugg_allText/str str name=buildOnCommittrue/str float name=threshold.005/float str name=queryAnalyzerFieldTypetext_suggest/str /lst /searchComponent Any help greatly appreciated! Thanks, -Charles * Schema.xml *** field name=issue_suggest type=text_suggest indexed=true stored=false/ field name=sugg_allText type=text_suggest indexed=true multiValued=true stored=false/ fieldType name=text_suggest class=solr.TextField positionIncrementGap=100 analyzer type=index tokenizer class=solr.StandardTokenizerFactory/ filter class=solr.LowerCaseFilterFactory/ /analyzer analyzer type=query tokenizer class=solr.StandardTokenizerFactory/ filter class=solr.LowerCaseFilterFactory/ /analyzer /fieldType Solrconfig.xml *** !-- Auto-Complete component -- searchComponent name=autoComplete class=solr.SpellCheckComponent lst name=spellchecker str name=nameandreasAutoComplete/str str name=classnameorg.apache.solr.spelling.suggest.Suggester/str str name=lookupImplorg.apache.solr.spelling.suggest.tst.TSTLookupFactory/str str name=fieldsugg_allText/str str name=buildOnCommittrue/str float name=threshold.005/float str name=queryAnalyzerFieldTypetext_suggest/str /lst lst name=spellchecker str name=namerecommendationsAutoComplete/str str name=classnameorg.apache.solr.spelling.suggest.Suggester/str str name=lookupImplorg.apache.solr.spelling.suggest.tst.TSTLookupFactory/str str name=fieldissue_suggest/str str name=buildOnCommittrue/str float name=threshold.005/float str name=queryAnalyzerFieldTypetext_suggest/str /lst /searchComponent requestHandler name=/ac class=solr.SearchHandler lst name=defaults str name=spellchecktrue/str
Re: SpellCheck (AutoComplete) Not Working In Distributed Environment
Got it. Thanks for your help everyone. - Original Message - From: Shawn Heisey apa...@elyograg.org To: solr-user@lucene.apache.org Sent: Tuesday, December 30, 2014 7:16:59 PM Subject: Re: SpellCheck (AutoComplete) Not Working In Distributed Environment On 12/30/2014 5:03 PM, Charles Sanders wrote: Thanks for the suggestion. I did not do that originally because the documentation states: This parameter is not required for the /select request handler. Which is what I am using. But I gave it a go, even though I'm not certain of the shard names. Now I have a NPE. solr/collection1/select?q=kernel+prows=1wt=jsonindent=trueshards.qt=/acshards=shard1,shard2 If this is not SolrCloud, then the shards parameter must include most of the full base URL for each shard that you will be querying. You can only use a bare shard name if you're running SolrCloud. The shards.qt parameter that you have used means that when the shards are consulted, the /ac handler will be used rather than /select. Here's an example of a shards parameter that will combine results from three cores on two machines. When not running SolrCloud, this is how you do distributed searching: shards=idxa2.example.com:8981/solr/ai-inclive,idxa1.example.com:8981/solr/ai-0live,idxa2.example.com:8981/solr/ai-1live SolrCloud hides almost all of this complexity. Thanks, Shawn
Filter Queries Do Not Allow OR operator ??
I'm running solr 4.8. On my test system I ran the query http://localhost:/solr/collection1/select?q=*:*fq=-hasPublishedRevision:truerows=100fl=documentKind, hasPublishedRevisionwt=jsonindent=true The results are as expected. It returns 59 documents of various documentKinds, all having a hasPublishedRevision value of false or none at all (just not true). Now I run the query http://localhost:/solr/collection1/select?q=*:*fq=-hasPublishedRevision:true OR documentKind:Solutionrows=100fl=documentKind, hasPublishedRevisionwt=jsonindent=true This does not return the expected results. This returns only 5 documents. All have documentKind as Solution. The results returned are consistent with an AND condition in the filter query not an OR. I expected the filter query used to have returned all documents that do not have a hasPublishedRevision value of true (regardless of documentKind), as well as all documents with a documentKind of Solution (regardless to hasPublishedRevision value). Obviously filter queries do not support 'any' boolean logic. I will have to find a work around for this issue. -Charles
Re: Filter Queries Do Not Allow OR operator ??
Shawn, Thanks. Not what I expected (still thinking in database terms), but makes sense based on the results. I understand now and I think I have the filter I need. Charles - Original Message - From: Shawn Heisey apa...@elyograg.org To: solr-user@lucene.apache.org Sent: Wednesday, December 31, 2014 12:56:02 PM Subject: Re: Filter Queries Do Not Allow OR operator ?? On 12/31/2014 10:45 AM, Charles Sanders wrote: I'm running solr 4.8. On my test system I ran the query http://localhost:/solr/collection1/select?q=*:*fq=-hasPublishedRevision:truerows=100fl=documentKind, hasPublishedRevisionwt=jsonindent=true The results are as expected. It returns 59 documents of various documentKinds, all having a hasPublishedRevision value of false or none at all (just not true). Now I run the query http://localhost:/solr/collection1/select?q=*:*fq=-hasPublishedRevision:true OR documentKind:Solutionrows=100fl=documentKind, hasPublishedRevisionwt=jsonindent=true This does not return the expected results. This returns only 5 documents. All have documentKind as Solution. The results returned are consistent with an AND condition in the filter query not an OR. I expected the filter query used to have returned all documents that do not have a hasPublishedRevision value of true (regardless of documentKind), as well as all documents with a documentKind of Solution (regardless to hasPublishedRevision value). Obviously filter queries do not support 'any' boolean logic. I will have to find a work around for this issue. Your filter query starts with a negative clause. A simple truism for Solr: You cannot subtract from nothing. If the negative query is simple enough, Solr can detect it and implicitly add the *:* (all documents) for the negative clause to subtract from, but as soon as there is any complexity at all, Solr is not able to recognize the situation and repair it automatically. Try one of these filters instead. I am not sure exactly what you're after, so you will have to pick the one that does what you need: fq=*:* -(hasPublishRevision:true OR documentKind:Solution) fq=(*:* -hasPublishRevision:true) OR documentKind:Solution Thanks, Shawn
SpellCheck (AutoComplete) Not Working In Distributed Environment
I'm running Solr 4.8 in a distributed environment (2 shards). I have added the spellcheck component to my request handler. In my test system, which is not distributed, it works. But when I move it to the Dev box, which is distributed, 2 shards, it is not working. Is there something additional I must do to get this to work in a distributed environment? requestHandler default=true name=standard 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=echoParamsexplicit/str int name=rows10/int str name=dfallText/str !-- default autocomplete settings for this search request handler -- str name=spellchecktrue/str str name=spellcheck.dictionaryandreasAutoComplete/str str name=spellcheck.onlyMorePopulartrue/str str name=spellcheck.count5/str str name=spellcheck.collatetrue/str str name=spellcheck.maxCollations5/str /lst arr name=last-components strautoComplete/str /arr /requestHandler searchComponent name=autoComplete class=solr.SpellCheckComponent lst name=spellchecker str name=nameandreasAutoComplete/str str name=classnameorg.apache.solr.spelling.suggest.Suggester/str str name=lookupImplorg.apache.solr.spelling.suggest.tst.TSTLookupFactory/str str name=fieldsugg_allText/str str name=buildOnCommittrue/str float name=threshold.005/float str name=queryAnalyzerFieldTypetext_suggest/str /lst /searchComponent Any help greatly appreciated! Thanks, -Charles
Re: SpellCheck (AutoComplete) Not Working In Distributed Environment
Thanks for the suggestion. I did not do that originally because the documentation states: This parameter is not required for the /select request handler. Which is what I am using. But I gave it a go, even though I'm not certain of the shard names. Now I have a NPE. solr/collection1/select?q=kernel+prows=1wt=jsonindent=trueshards.qt=/acshards=shard1,shard2 { responseHeader:{ status:500, QTime:12, params:{ shards:shard1,shard2, indent:true, shards.qt:/ac, q:kernel p, wt:json, rows:1}}, error:{ trace:java.lang.NullPointerException\n\tat org.apache.solr.handler.component.QueryComponent.mergeIds(QueryComponent.java:901)\n\tat org.apache.solr.handler.component.QueryComponent.handleRegularResponses(QueryComponent.java:686)\n\tat org.apache.solr.handler.component.QueryComponent.handleResponses(QueryComponent.java:665)\n\tat org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:325)\n\tat org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:135)\n\tat org.apache.solr.core.SolrCore.execute(SolrCore.java:1952)\n\tat org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:787)\n\tat org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:431)\n\tat org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:207)\n\tat com.lucid.servlet.LweSolrDispatchFilter.doFilter(LweSolrDispatchFilter.java:202)\n\tat com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)\n\tat com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)\n\tat com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:168)\n\tat com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)\n\tat com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:118)\n\tat com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)\n\tat org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1337)\n\tat org.eclipse.jetty.servlets.CrossOriginFilter.handle(CrossOriginFilter.java:212)\n\tat org.eclipse.jetty.servlets.CrossOriginFilter.doFilter(CrossOriginFilter.java:179)\n\tat org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1337)\n\tat org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:484)\n\tat org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)\n\tat org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:524)\n\tat org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:233)\n\tat org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1065)\n\tat org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:413)\n\tat org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:192)\n\tat org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:999)\n\tat org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)\n\tat org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:250)\n\tat org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:149)\n\tat org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:111)\n\tat org.eclipse.jetty.server.Server.handle(Server.java:351)\n\tat org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:454)\n\tat org.eclipse.jetty.server.BlockingHttpConnection.handleRequest(BlockingHttpConnection.java:47)\n\tat org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:890)\n\tat org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:944)\n\tat org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:634)\n\tat org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:230)\n\tat org.eclipse.jetty.server.BlockingHttpConnection.handle(BlockingHttpConnection.java:66)\n\tat org.eclipse.jetty.server.bio.SocketConnector$ConnectorEndPoint.run(SocketConnector.java:254)\n\tat org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:599)\n\tat org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:534)\n\tat java.lang.Thread.run(Thread.java:744)\n, code:500}} - Original Message - From: Erick Erickson erickerick...@gmail.com To: solr-user@lucene.apache.org Sent: Tuesday, December 30, 2014 6:07:13 PM Subject: Re: SpellCheck (AutoComplete) Not Working In Distributed Environment Did you try the shards parameter? See: https://cwiki.apache.org/confluence/display/solr/Spell+Checking#SpellChecking-DistributedSpellCheck On Tue, Dec 30, 2014 at 2:20 PM, Charles Sanders csand