Ошибка разбивки огромного результирующего набора - PullRequest
0 голосов
/ 23 декабря 2010

Я выполняю текстовый поиск в Solr, который генерирует огромный набор результатов, например, 2 277 292.

Я показываю только 20 документов / страницу. Когда я нажимаю на последнюю страницу, здесь, в конце, запрос к solr генерируется как

начать = 2277280
строки = 20

Возникает исключение:

HTTP-статус 500 - allocLargeObjectOrArray: [Lorg / apache / lucene / search / ScoreDoc ;, размер 9109184 java.lang.OutOfMemoryError: allocLargeObjectOrArray: [Lorg / apache / lucene / search / ScoreDoc ;, размер 91094, размер файла 91094. lucene.search.TopDocsCollector.topDocs (TopDocsCollector.java:132) в org.apache.solr.search.SolrIndexSearcher.getDocListNC (SolrIndexSearcher.java:996) в org.apache.solr. 884) в org.apache.solr.search.SolrIndexSearcher.search (SolrIndexSearcher.java:341) в org.apache.solr.handler.component.QueryComponent.process (QueryComponent.java:182) в org.apache.solr.handler .component.SearchHandler.handleRequestBody (SearchHandler.java:195) в org.apache.solr.handler.RequestHandlerBase.handleRequest (RequestHandlerBase.java:131) в org.apache.solr.core.SolrCore.execute:16Core ) в org.apache.solr.servlet.SolrDispatchFilter.execute (SolrDispatchFilter.java:338) в org.apache.solr.servlet.SolrDispatchFilter.doFilter (так lrDispatchFilter.java:241) по адресу org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:235) по адресу org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilina.cat.cat.6: cat.ina.cat.hag: cat.ina.gat.cat.at.at.at.at.at: 20). .core.StandardWrapperValve.invoke (StandardWrapperValve.java:233) при org.apache.catalina.core.StandardContextValve.invoke (StandardContextValve.java:191) в org.apache.catalina.core.StandardHostValve.invoke (StandardHostValve.java:127 ) в org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:102) в org.apache.catalina.core.StandardEngineValve.invoke (StandardEngineValve.java:109) в org.apache.catoyinaconnector. org.apache.catoyinaconnector Служба (CoyoteAdapter.java:298) в org.apache.coyote.http11.Http11Processor.process (Http11Processor.java:857) в org.apache.coyote.http11.Http11Protocol $ Http11ConnectionHandler.process.http: http .apache.tomcat.util.net.JIoEndpoint $ Worker.run (JIoEndpoint.java:489) в java.lang.Thread.run (Th read.java:619)

1 Ответ

0 голосов
/ 23 декабря 2010

Не уверен, что это ошибка в Solr, но вы можете просто попытаться увеличить память:

набор

JAVA_OPTS="-Xmx1024m -Xms256m"

в catalina.sh/.bat

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...