You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Erick Erickson (JIRA)" <ji...@apache.org> on 2016/04/07 17:49:25 UTC

[jira] [Resolved] (SOLR-8958) OutOfMemoryError while processing search results

     [ https://issues.apache.org/jira/browse/SOLR-8958?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Erick Erickson resolved SOLR-8958.
----------------------------------
    Resolution: Won't Fix

This is overwhelmingly likely to be a configuration issue on your part. Please raise this kind of question on the user's list first, you'll get more eyes on the problem.

Java starts with a defined amount of memory. This error usually means you're trying to cram too much stuff into too little memory. You have to tell us a lot more information before we can make any suggestions.

When you move the question to the user's list, you need to include:
How much memory are you allocating to your JVM? What query are you running? How many docs in the index? What are the _rest_ of the parameters you use to start your Solr instance? What are the docs like in terms of size and fields? You might review:

http://wiki.apache.org/solr/UsingMailingLists

And if we determine that it really _is_ a bug, we can open the appropriate JIRA.

> OutOfMemoryError while processing search results
> ------------------------------------------------
>
>                 Key: SOLR-8958
>                 URL: https://issues.apache.org/jira/browse/SOLR-8958
>             Project: Solr
>          Issue Type: Bug
>          Components: clients - java
>    Affects Versions: 5.5
>         Environment: Linux 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt25-1 (2016-03-06) x86_64 GNU/Linux
> Java 1.8.0_77-b03
>            Reporter: Alexander Veit
>            Priority: Critical
>
> When searching is happens that OutOfMemoryErrors occur.
> This is probably a known issue:
> {code:title=ByteUtils.java|borderStyle=solid}
>   /** Convert UTF8 bytes into UTF16 characters. */
>   public static void UTF8toUTF16(byte[] utf8, int offset, int len, CharArr out) {
>     // TODO: do in chunks if the input is large
>     out.reserve(len);
>     int n = UTF8toUTF16(utf8, offset, len, out.getArray(), out.getEnd());
>     out.setEnd(out.getEnd() + n);
>   }
> {code}
> These are stack traces from the generated hprof file.
> {noformat}
> WebConnectorWorker-localhost:8102-2
>   at org.apache.solr.common.util.ByteUtils.UTF8toUTF16([BII[CI)I (ByteUtils.java:60)
>   at org.apache.solr.common.util.ByteUtils.UTF8toUTF16([BIILorg/noggit/CharArr;)V (ByteUtils.java:69)
>   at org.apache.solr.common.util.JavaBinCodec.readStr(Lorg/apache/solr/common/util/DataInputInputStream;Lorg/apache/solr/common/util/JavaBinCodec$StringCache;)Ljava/lang/String; (JavaBinCodec.java:664)
>   at org.apache.solr.common.util.JavaBinCodec.readStr(Lorg/apache/solr/common/util/DataInputInputStream;)Ljava/lang/String; (JavaBinCodec.java:653)
>   at org.apache.solr.common.util.JavaBinCodec.readVal(Lorg/apache/solr/common/util/DataInputInputStream;)Ljava/lang/Object; (JavaBinCodec.java:215)
>   at org.apache.solr.common.util.JavaBinCodec.readArray(Lorg/apache/solr/common/util/DataInputInputStream;)Ljava/util/List; (JavaBinCodec.java:543)
>   at org.apache.solr.common.util.JavaBinCodec.readVal(Lorg/apache/solr/common/util/DataInputInputStream;)Ljava/lang/Object; (JavaBinCodec.java:221)
>   at org.apache.solr.common.util.JavaBinCodec.readSolrDocument(Lorg/apache/solr/common/util/DataInputInputStream;)Lorg/apache/solr/common/SolrDocument; (JavaBinCodec.java:411)
>   at org.apache.solr.common.util.JavaBinCodec.readVal(Lorg/apache/solr/common/util/DataInputInputStream;)Ljava/lang/Object; (JavaBinCodec.java:254)
>   at org.apache.solr.common.util.JavaBinCodec.readArray(Lorg/apache/solr/common/util/DataInputInputStream;)Ljava/util/List; (JavaBinCodec.java:543)
>   at org.apache.solr.common.util.JavaBinCodec.readVal(Lorg/apache/solr/common/util/DataInputInputStream;)Ljava/lang/Object; (JavaBinCodec.java:221)
>   at org.apache.solr.common.util.JavaBinCodec.readSolrDocumentList(Lorg/apache/solr/common/util/DataInputInputStream;)Lorg/apache/solr/common/SolrDocumentList; (JavaBinCodec.java:425)
>   at org.apache.solr.common.util.JavaBinCodec.readVal(Lorg/apache/solr/common/util/DataInputInputStream;)Ljava/lang/Object; (JavaBinCodec.java:256)
>   at org.apache.solr.common.util.JavaBinCodec.readOrderedMap(Lorg/apache/solr/common/util/DataInputInputStream;)Lorg/apache/solr/common/util/SimpleOrderedMap; (JavaBinCodec.java:154)
>   at org.apache.solr.common.util.JavaBinCodec.readVal(Lorg/apache/solr/common/util/DataInputInputStream;)Ljava/lang/Object; (JavaBinCodec.java:223)
>   at org.apache.solr.common.util.JavaBinCodec.unmarshal(Ljava/io/InputStream;)Ljava/lang/Object; (JavaBinCodec.java:145)
>   at org.apache.solr.client.solrj.impl.BinaryResponseParser.processResponse(Ljava/io/InputStream;Ljava/lang/String;)Lorg/apache/solr/common/util/NamedList; (BinaryResponseParser.java:50)
>   at org.apache.solr.client.solrj.impl.HttpSolrClient.executeMethod(Lorg/apache/http/client/methods/HttpRequestBase;Lorg/apache/solr/client/solrj/ResponseParser;)Lorg/apache/solr/common/util/NamedList; (HttpSolrClient.java:551)
>   at org.apache.solr.client.solrj.impl.HttpSolrClient.request(Lorg/apache/solr/client/solrj/SolrRequest;Lorg/apache/solr/client/solrj/ResponseParser;Ljava/lang/String;)Lorg/apache/solr/common/util/NamedList; (HttpSolrClient.java:240)
>   at org.apache.solr.client.solrj.impl.HttpSolrClient.request(Lorg/apache/solr/client/solrj/SolrRequest;Ljava/lang/String;)Lorg/apache/solr/common/util/NamedList; (HttpSolrClient.java:229)
>   at org.apache.solr.client.solrj.SolrRequest.process(Lorg/apache/solr/client/solrj/SolrClient;Ljava/lang/String;)Lorg/apache/solr/client/solrj/SolrResponse; (SolrRequest.java:149)
>   at org.apache.solr.client.solrj.SolrClient.query(Ljava/lang/String;Lorg/apache/solr/common/params/SolrParams;)Lorg/apache/solr/client/solrj/response/QueryResponse; (SolrClient.java:942)
> {noformat}
> Another one:
> {noformat}
> WebConnectorWorker-localhost:8102-8
>   at java.lang.OutOfMemoryError.<init>()V (OutOfMemoryError.java:48)
>   at java.util.Arrays.copyOfRange([CII)[C (Arrays.java:3664)
>   at java.lang.String.<init>([CII)V (String.java:207)
>   at org.noggit.CharArr.toString()Ljava/lang/String; (CharArr.java:168)
>   at org.apache.solr.common.util.JavaBinCodec.readStr(Lorg/apache/solr/common/util/DataInputInputStream;Lorg/apache/solr/common/util/JavaBinCodec$StringCache;)Ljava/lang/String; (JavaBinCodec.java:665)
>   at org.apache.solr.common.util.JavaBinCodec.readStr(Lorg/apache/solr/common/util/DataInputInputStream;)Ljava/lang/String; (JavaBinCodec.java:653)
>   at org.apache.solr.common.util.JavaBinCodec.readVal(Lorg/apache/solr/common/util/DataInputInputStream;)Ljava/lang/Object; (JavaBinCodec.java:215)
>   at org.apache.solr.common.util.JavaBinCodec.readArray(Lorg/apache/solr/common/util/DataInputInputStream;)Ljava/util/List; (JavaBinCodec.java:543)
>   at org.apache.solr.common.util.JavaBinCodec.readVal(Lorg/apache/solr/common/util/DataInputInputStream;)Ljava/lang/Object; (JavaBinCodec.java:221)
>   at org.apache.solr.common.util.JavaBinCodec.readSolrDocument(Lorg/apache/solr/common/util/DataInputInputStream;)Lorg/apache/solr/common/SolrDocument; (JavaBinCodec.java:411)
>   at org.apache.solr.common.util.JavaBinCodec.readVal(Lorg/apache/solr/common/util/DataInputInputStream;)Ljava/lang/Object; (JavaBinCodec.java:254)
>   at org.apache.solr.common.util.JavaBinCodec.readArray(Lorg/apache/solr/common/util/DataInputInputStream;)Ljava/util/List; (JavaBinCodec.java:543)
>   at org.apache.solr.common.util.JavaBinCodec.readVal(Lorg/apache/solr/common/util/DataInputInputStream;)Ljava/lang/Object; (JavaBinCodec.java:221)
>   at org.apache.solr.common.util.JavaBinCodec.readSolrDocumentList(Lorg/apache/solr/common/util/DataInputInputStream;)Lorg/apache/solr/common/SolrDocumentList; (JavaBinCodec.java:425)
>   at org.apache.solr.common.util.JavaBinCodec.readVal(Lorg/apache/solr/common/util/DataInputInputStream;)Ljava/lang/Object; (JavaBinCodec.java:256)
>   at org.apache.solr.common.util.JavaBinCodec.readOrderedMap(Lorg/apache/solr/common/util/DataInputInputStream;)Lorg/apache/solr/common/util/SimpleOrderedMap; (JavaBinCodec.java:154)
>   at org.apache.solr.common.util.JavaBinCodec.readVal(Lorg/apache/solr/common/util/DataInputInputStream;)Ljava/lang/Object; (JavaBinCodec.java:223)
>   at org.apache.solr.common.util.JavaBinCodec.unmarshal(Ljava/io/InputStream;)Ljava/lang/Object; (JavaBinCodec.java:145)
>   at org.apache.solr.client.solrj.impl.BinaryResponseParser.processResponse(Ljava/io/InputStream;Ljava/lang/String;)Lorg/apache/solr/common/util/NamedList; (BinaryResponseParser.java:50)
>   at org.apache.solr.client.solrj.impl.HttpSolrClient.executeMethod(Lorg/apache/http/client/methods/HttpRequestBase;Lorg/apache/solr/client/solrj/ResponseParser;)Lorg/apache/solr/common/util/NamedList; (HttpSolrClient.java:551)
>   at org.apache.solr.client.solrj.impl.HttpSolrClient.request(Lorg/apache/solr/client/solrj/SolrRequest;Lorg/apache/solr/client/solrj/ResponseParser;Ljava/lang/String;)Lorg/apache/solr/common/util/NamedList; (HttpSolrClient.java:240)
>   at org.apache.solr.client.solrj.impl.HttpSolrClient.request(Lorg/apache/solr/client/solrj/SolrRequest;Ljava/lang/String;)Lorg/apache/solr/common/util/NamedList; (HttpSolrClient.java:229)
>   at org.apache.solr.client.solrj.SolrRequest.process(Lorg/apache/solr/client/solrj/SolrClient;Ljava/lang/String;)Lorg/apache/solr/client/solrj/SolrResponse; (SolrRequest.java:149)
>   at org.apache.solr.client.solrj.SolrClient.query(Ljava/lang/String;Lorg/apache/solr/common/params/SolrParams;)Lorg/apache/solr/client/solrj/response/QueryResponse; (SolrClient.java:942)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org