Uploaded image for project: 'Solr'
  1. Solr
  2. SOLR-8958

OutOfMemoryError while processing search results

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Critical
    • Resolution: Won't Fix
    • 5.5
    • None
    • clients - java
    • None
    • 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

    Description

      When searching is happens that OutOfMemoryErrors occur.

      This is probably a known issue:

      ByteUtils.java
        /** 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);
        }
      

      These are stack traces from the generated hprof file.

      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)
      

      Another one:

      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)
      

      Attachments

        Activity

          People

            Unassigned Unassigned
            veita Alexander Veit
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: