[fess-user 971] 差分クロールでsolrがOutOfMemoryになる

Back to archive index

斎藤 nsait****@msk-w*****
2015年 6月 28日 (日) 21:00:07 JST


こんにちは。

 2015年4月にフォーラムでも話題が上っていた(http://osdn.jp/projects 
/fess/forums/18580 /36695/)のですが、
解決策が見つからず投稿させて頂きました。

 内容等しては同様で、初回のクロール時には問題なくインデックスが登録され 
ているのですが、
同一内容(検索対象文書に変更はなし)で再度クロールを行うと、「システム設 
定」→「サーバー状態」も
「無効」となってしまいます。

 fess-server-9.3.3/bin/setenv.shで-Xmx6gとしており、そこそこ増やしたつ 
もりです。

 検索対象となるファイルは、
 ・フォーマット:doc/docx/xls/xlsx/ppt/txt/pdf
 ・サイズ   :最大 50MBまで(10MB超のファイルが20%程度含まれておりま 
すが、中身が画像主体です。)
  webapps/fess/WEB-INF/classes/s2robot_contentlength.diconで 
 52428800Lを指定。

 solr.logには、以下のログが出力された後、同じ内容が繰り返し記録されてい 
ました。

 ちなみに、検索対象フォルダーを変更して、検索対象ファイルを追加する分に 
は、普通に追加
出来ている様に思われます。

 何か設定が不足しているのでしょうか?
 クロールは、
 ファイルシステムのみで、スレッド数5 間隔10000ミリ秒(10秒)としてい 
ます。
 インデックスされたドキュメント数=約700ファイル程度

 動作環境:
  CPU 4コア/8スレッド
  メモリ 16GB
  HDD 500GB(空き容量は十分)
   

 2015-06-xx 18:54:48,632 [http-nio-8080-exec-5] ERROR 
org.apache.solr.servlet.SolrDispatchFilter - 
null:java.lang.RuntimeException: java.lang.OutOfMemoryError: Java heap space
         at 
org.apache.solr.servlet.SolrDispatchFilter.sendError(SolrDispatchFilter.java:793)
         at 
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:434)
         at 
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:207)
         at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
         at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
         at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
         at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
         at 
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:614)
         at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142)
         at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
         at 
org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:617)
         at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
         at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:518)
         at 
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1091)
         at 
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:668)
         at 
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1521)
         at 
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1478)
         at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
         at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
         at 
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
         at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.OutOfMemoryError: Java heap space
         at java.util.Arrays.copyOf(Arrays.java:3332)
         at java.lang.StringCoding.safeTrim(StringCoding.java:89)
         at java.lang.StringCoding.decode(StringCoding.java:230)
         at java.lang.String.<init>(String.java:451)
         at java.lang.String.<init>(String.java:503)
         at 
org.apache.lucene.codecs.compressing.CompressingStoredFieldsReader.readField(CompressingStoredFieldsReader.java:205)
         at 
org.apache.lucene.codecs.compressing.CompressingStoredFieldsReader.visitDocument(CompressingStoredFieldsReader.java:369)
         at 
org.apache.lucene.index.SegmentReader.document(SegmentReader.java:335)
         at 
org.apache.lucene.index.BaseCompositeReader.document(BaseCompositeReader.java:112)
         at 
org.apache.lucene.index.IndexReader.document(IndexReader.java:471)
         at 
org.apache.lucene.document.LazyDocument.getDocument(LazyDocument.java:99)
         at 
org.apache.lucene.document.LazyDocument.fetchRealValues(LazyDocument.java:109)
         at 
org.apache.lucene.document.LazyDocument.access$100(LazyDocument.java:40)
         at 
org.apache.lucene.document.LazyDocument$LazyField.getRealValue(LazyDocument.java:149)
         at 
org.apache.lucene.document.LazyDocument$LazyField.numericValue(LazyDocument.java:185)
         at org.apache.solr.schema.TrieField.toObject(TrieField.java:115)
         at 
org.apache.solr.schema.TrieDateField.toObject(TrieDateField.java:70)
         at 
org.apache.solr.schema.TrieDateField.toObject(TrieDateField.java:56)
         at 
org.apache.solr.response.BinaryResponseWriter$Resolver.getValue(BinaryResponseWriter.java:233)
         at 
org.apache.solr.response.BinaryResponseWriter$Resolver.getDoc(BinaryResponseWriter.java:196)
         at 
org.apache.solr.response.BinaryResponseWriter$Resolver.writeResultsBody(BinaryResponseWriter.java:156)
         at 
org.apache.solr.response.BinaryResponseWriter$Resolver.writeResults(BinaryResponseWriter.java:183)
         at 
org.apache.solr.response.BinaryResponseWriter$Resolver.resolve(BinaryResponseWriter.java:88)
         at 
org.apache.solr.common.util.JavaBinCodec.writeVal(JavaBinCodec.java:158)
         at 
org.apache.solr.common.util.JavaBinCodec.writeNamedList(JavaBinCodec.java:148)
         at 
org.apache.solr.common.util.JavaBinCodec.writeKnownType(JavaBinCodec.java:242)
         at 
org.apache.solr.common.util.JavaBinCodec.writeVal(JavaBinCodec.java:153)
         at 
org.apache.solr.common.util.JavaBinCodec.marshal(JavaBinCodec.java:96)
         at 
org.apache.solr.response.BinaryResponseWriter.write(BinaryResponseWriter.java:52)
         at 
org.apache.solr.servlet.SolrDispatchFilter.writeResponse(SolrDispatchFilter.java:758)
         at 
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:426)
         at 
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:207)

 クロールが完了し、インデックスをDB登録しているんだと思いますが、CPU1 
コアを使い切っている
状態で、システム設定画面ではクロールを開始出来る様になっています。
 恐くてクリック出来ませんが、メモリ消費も5Gを超えており、この状態でク 
リックできるとするのは
如何なものなのでしょう?多分落ちますよねw

以上




Fess-user メーリングリストの案内
Back to archive index