hailMurphy
hailMurphy

Reputation: 33

Solr api throws Invalid Number error for Range filter query on TrieDoubleField

I have a price field that is defined as double (solr.TrieDoubleField). When I query fq=(price:[0 TO 4.79]) using solr client it works perfectly fine.

However, when i use the solr api for doing the same then the following error is shown

Caused by: org.apache.solr.common.SolrException: Invalid Number: [0 TO 4.79]
    at org.apache.solr.analysis.TrieTokenizer.reset(TrieTokenizerFactory.java:141)
    at org.apache.solr.parser.SolrQueryParserBase.newFieldQuery(SolrQueryParserBase.java:409)
    at org.apache.solr.parser.SolrQueryParserBase.getFieldQuery(SolrQueryParserBase.java:959)
    at org.apache.solr.parser.SolrQueryParserBase.handleBareTokenQuery(SolrQueryParserBase.java:765)
    at org.apache.solr.parser.QueryParser.Term(QueryParser.java:300)
    at org.apache.solr.parser.QueryParser.Clause(QueryParser.java:186)
    at org.apache.solr.parser.QueryParser.Query(QueryParser.java:108)
    at org.apache.solr.parser.QueryParser.Clause(QueryParser.java:190)
    at org.apache.solr.parser.QueryParser.Query(QueryParser.java:108)
    at org.apache.solr.parser.QueryParser.TopLevelQuery(QueryParser.java:97)
    at org.apache.solr.parser.SolrQueryParserBase.parse(SolrQueryParserBase.java:160)
    at org.apache.solr.search.LuceneQParser.parse(LuceneQParser.java:50)
    at org.apache.solr.search.QParser.getQuery(QParser.java:142)
    at org.apache.solr.handler.component.QueryComponent.prepare(QueryComponent.java:160)
    at org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:187)
    at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:135)
    at org.apache.solr.core.SolrCore.execute(SolrCore.java:1859)
    at org.apache.solr.client.solrj.embedded.EmbeddedSolrServer.request(EmbeddedSolrServer.java:150)
    at org.apache.solr.client.solrj.request.QueryRequest.process(QueryRequest.java:90)
    at org.apache.solr.client.solrj.SolrServer.query(SolrServer.java:301)

I am using solr 4.5

Any ideas on how to fix the issue?

Upvotes: 0

Views: 2310

Answers (1)

hailMurphy
hailMurphy

Reputation: 33

Apparently the query parameter were getting escaped before sending to standalone solr server where it could not understand the square brackets properly

Upvotes: 3

Related Questions