[ 
https://issues.apache.org/jira/browse/SOLR-324?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12528942
 ] 

Hoss Man commented on SOLR-324:
-------------------------------


Either LongField and DoubleField should log a warning that they not suitable 
for sorting (and this should be added to the javadocs) and that they defer to 
int/float based sorting which may have casting/parsing issues ... in which case 
people using small enough values will be fine.

...OR...

LongField and DoubleField should throw big exceptions if you try to use them to 
sort saying that if you wnat to Sort, use SortableLongField/SortableDoubleField

(the names seem pretty intuitive to me)

> solr can't perform sort by long field
> -------------------------------------
>
>                 Key: SOLR-324
>                 URL: https://issues.apache.org/jira/browse/SOLR-324
>             Project: Solr
>          Issue Type: Bug
>          Components: search
>         Environment: Windows XP SP2  
> Java 1.6u1 
> solr - lastes svn version
>            Reporter: Sergey Dryganets
>             Fix For: 1.3
>
>
> when sorting results by field with type long
> throwed folowing exception
> java.lang.NumberFormatException: For input string: "1104836394000"
>       at java.lang.NumberFormatException.forInputString(Unknown Source)
>       at java.lang.Integer.parseInt(Unknown Source)
>       at java.lang.Integer.parseInt(Unknown Source)
>       at 
> org.apache.lucene.search.FieldCacheImpl$1.parseInt(FieldCacheImpl.java:136)
>       at 
> org.apache.lucene.search.FieldCacheImpl$3.createValue(FieldCacheImpl.java:171)
>       at 
> org.apache.lucene.search.FieldCacheImpl$Cache.get(FieldCacheImpl.java:72)
>       at 
> org.apache.lucene.search.FieldCacheImpl.getInts(FieldCacheImpl.java:154)
>       at 
> org.apache.lucene.search.FieldCacheImpl.getInts(FieldCacheImpl.java:148)
>       at 
> org.apache.lucene.search.FieldSortedHitQueue.comparatorInt(FieldSortedHitQueue.java:204)
>       at 
> org.apache.lucene.search.FieldSortedHitQueue$1.createValue(FieldSortedHitQueue.java:175)
>       at 
> org.apache.lucene.search.FieldCacheImpl$Cache.get(FieldCacheImpl.java:72)
>       at 
> org.apache.lucene.search.FieldSortedHitQueue.getCachedComparator(FieldSortedHitQueue.java:155)
>       at 
> org.apache.lucene.search.FieldSortedHitQueue.<init>(FieldSortedHitQueue.java:56)
>       at 
> org.apache.solr.search.SolrIndexSearcher.getDocListNC(SolrIndexSearcher.java:857)
>       at 
> org.apache.solr.search.SolrIndexSearcher.getDocListC(SolrIndexSearcher.java:805)
>       at 
> org.apache.solr.search.SolrIndexSearcher.getDocList(SolrIndexSearcher.java:698)
>       at 
> org.apache.solr.handler.StandardRequestHandler.handleRequestBody(StandardRequestHandler.java:126)
>       at 
> org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:78)
>       at org.apache.solr.core.SolrCore.execute(SolrCore.java:722)
>       at org.apache.solr.servlet.SolrServlet.doGet(SolrServlet.java:64)
>       at org.apache.solr.servlet.SolrServlet.doPost(SolrServlet.java:51)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>       at 
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:187)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>       at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
>       at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
>       at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
>       at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
>       at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>       at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261)
>       at 
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
>       at 
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:581)
>       at 
> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
>       at java.lang.Thread.run(Unknown Source)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to