[fess-user 296] Re: インデックスの作成が停止します

Back to archive index

Sugano ganos****@gmail*****
2010年 7月 17日 (土) 11:21:41 JST


お世話になってます。
すがのです。

> > ご質問があるのですが、クロールで集めた情報(H2DB)を、SolrDBへ
> > 手動で登録する方法(機能など)はありませんでしょうか?
> 
> 現状、ないです。クロールデータについては
> パフォーマンスに大きな影響を与えるので
> 消せるときに消す感じにしています。ただ
> 今回のように例外的にクロールを抜けるような
> 場合に残せるかどうかは検討してみます。
了解しました。
是非、お願いします。

> > ※少なくとも、catalina.outにはエラーメッセージなどは出力され
> > ていませんでした。他のログはこれから調べます。
> 
> 最新の環境であれば、fess_crawler.out が
> どうなっているかがポイントになるかと思います。
fess_crawler.outを調べたところ、添付ファイル(fess_crawler.
outのログを一部抜粋、一部ファイルパスの修正有)のように
OutOfMemory エラーが発生していたことがわかりました。

下記の設定は既にしているのですが、それでも発生するようです。
http://fess.sourceforge.jp/ja/3.0/config/memory-config.html

ちなみに、当方の環境・状況は以下のとおりです。

●環境
・WindowsXP SP3に搭載して試用・検証中
 (CPU:Core 2 Duo 2GHz、メモリ:1.5GB)
・JDK 6 Update 21
・fess-server-3.1.1 or 4.0.0SNAPSHOT
 (どちらでも発生するようです)
・メモリ関連設定:上記リンクと同じ設定

●クロール設定
・対象ドキュメント: ファイルサーバ上のファイル 約6万件
・同時実行のクロール設定数:1
・ドキュメント数毎にコミット:500
・スレッド数:3
・間隔:1000ミリ秒

●状況
約1万ドキュメントを処理したあたりで、メモリエラー発生
※エラー発生後は、延々とクロール処理のみが行われて、
  SolrDBへの登録処理が行われない状態
※かなり高い確率(現時点100%)で現象が再発。


上記、メモリ関連設定の再チューニングなどで回避は可能なのでし
ょうか?

以上、よろしくお願いします。
> ----Original Message----
> Fri, 16 Jul 2010 06:33:00 +0900
> From:     Shinsuke Sugaya <shins****@yahoo*****>
> Reply-To: fess-****@lists*****
> To:       fess-****@lists*****
> Subject:  [fess-user 290] Re:インデックスの作成が停止します
> 

> 菅谷です。
> 
> > ご質問があるのですが、クロールで集めた情報(H2DB)を、SolrDBへ
> > 手動で登録する方法(機能など)はありませんでしょうか?
> 
> 現状、ないです。クロールデータについては
> パフォーマンスに大きな影響を与えるので
> 消せるときに消す感じにしています。ただ
> 今回のように例外的にクロールを抜けるような
> 場合に残せるかどうかは検討してみます。
> 
> > ※少なくとも、catalina.outにはエラーメッセージなどは出力され
> > ていませんでした。他のログはこれから調べます。
> 
> 最新の環境であれば、fess_crawler.out が
> どうなっているかがポイントになるかと思います。
> 
> よろしくお願いいたします。
> 
> shinsuke
> 
> 
> 2010年7月16日1:17 Sugano <ganos****@gmail*****>:
> > 初めまして、すがのと申します。
> >
> > ご質問があるのですが、クロールで集めた情報(H2DB)を、SolrDBへ
> > 手動で登録する方法(機能など)はありませんでしょうか?
> > (クロール実行中もしくはクロール停止時に手動実行)
> >
> > というのも、私のところでも桑田さんとほぼ同様の現象が発生して
> > おり、
> >> クローラープロセスが実行中にも関わらず、ドキュメント数が増
> >> 加しなくなります。
> >> システム設定画面で何度が停止->実行を繰り返しましたが状況が
> >> 変わりません。
> >
> > 具体的には、以下2つの現象のいずれかが発生することが多く、
> >
> > 事象1.クローラプロセスが稼働中にもかかわらず、クローラ側DB
> > (\webapp\fess\WEB-INF\db)やSolrDBへの登録が行われない。
> >
> > 事象2.クローラ側DB(\webapp\fess\WEB-INF\db)への登録はされ
> > 続けるが、SolrDBへの登録が行われなず、クローラ側DBのみが増え
> > 続ける。
> >
> > 上記の現象発生後に、クローラで収集したSolrDBへの未登録情報を
> > 破棄するのはもったいないので、収集した情報をSolrDBへ手動登録
> > する手段を知りたいと考えております。
> > (クロールを再度起動すると、前回収集した情報がすべて消えてし
> > まい、事象2で数万件分の情報が溜まっていたとしても全てクリア
> > されてしまうため、クリアされずにDB登録する方法が知りたいで
> > す。)
> >
> > ちなみに、本現象の原因については、下記を参考にして現在調査中
> > ですが、現時点では原因は特定できていません。
> >> おそらく crawler.out か catalina.out などに出力されて
> >> いるかと思います。以下を参照してみてください。
> >>
> >> http://fess.sourceforge.jp/ja/3.0/config/logging.html
> >>
> > ※少なくとも、catalina.outにはエラーメッセージなどは出力され
> > ていませんでした。他のログはこれから調べます。
> > ※ファイルパスの長さが260字以上(WindowsのMAX_PATH値以上)のデ
> > ィレクトリ・ファイルもあるため、それが原因の一つの可能性も有
> > り?
> > ※上記、もう少し調べてわからないようであれば、再度詳細な情報
> > をお知らせします。
> >
> > 以上、よろしくお願い致します。
> >
> >> 菅谷です。
> >>
> >> おそらく crawler.out か catalina.out などに出力されて
> >> いるかと思います。以下を参照してみてください。
> >>
> >> http://fess.sourceforge.jp/ja/3.0/config/logging.html
> >>
> >> よろしくお願いいたします。
> >>
> >> shinsuke
> >>
> >>
> >> 2010年7月14日16:53 Tetsutomo Kuwata <fj.kuwata @ gmail.
> >> com>:
> >> 初めまして、桑田と申します。
> >>
> >> この度始めてFessを導入しインデックス作成を実行しているとこ
> >> ろなのですが
> >> クローラープロセスが実行中にも関わらず、ドキュメント数が増
> >> 加しなくなります。
> >> システム設定画面で何度が停止->実行を繰り返しましたが状況が
> >> 変わりません。
> >> どの辺を調べれば原因がわかりますでしょうか。
> >>
> >> 環境
> >> Windows Server 2003 R2
> >> JDK 6 Update 20
> >> fess-server-3.1.1(サービスとして登録)
> >>
> >> 対象ドキュメント: ファイルシステム 23万件
> >> 現在のドキュメント数: 4万件
> >>
> >>
> >> 以上、よろしくお願い致します。
> >>
> >> _______________________________________________
> >> Fess-user mailing list
> >> Fess-****@lists*****
> >> http://lists.sourceforge.jp/mailman/listinfo/fess-user
> >>
> >
> > _______________________________________________
> > Fess-user mailing list
> > Fess-****@lists*****
> > http://lists.sourceforge.jp/mailman/listinfo/fess-user
> >
> 
> _______________________________________________
> Fess-user mailing list
> Fess-****@lists*****
> http://lists.sourceforge.jp/mailman/listinfo/fess-user

-------------- next part --------------
2010-07-16 16:22:43,270 [IndexUpdater] ERROR jp.sf.fess.solr.IndexUpdater - IndexUpdater is terminated.
java.lang.OutOfMemoryError: Java heap space
	at java.util.Arrays.copyOf(Arrays.java:2882)
	at java.lang.AbstractStringBuilder.expandCapacity(AbstractStringBuilder.java:100)
	at java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:515)
	at java.lang.StringBuilder.append(StringBuilder.java:189)
	at java.io.ObjectInputStream$BlockDataInputStream.readUTFSpan(ObjectInputStream.java:3099)
	at java.io.ObjectInputStream$BlockDataInputStream.readUTFBody(ObjectInputStream.java:3007)
	at java.io.ObjectInputStream$BlockDataInputStream.readLongUTF(ObjectInputStream.java:2990)
	at java.io.ObjectInputStream.readString(ObjectInputStream.java:1603)
	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1320)
	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
	at java.util.HashMap.readObject(HashMap.java:1030)
	at sun.reflect.GeneratedMethodAccessor84.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974)
	at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1849)
	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
	at org.seasar.framework.util.SerializeUtil.fromBinaryToObject(SerializeUtil.java:92)
	at jp.sf.fess.transformer.AbstractFessFileTransformer.getData(AbstractFessFileTransformer.java:380)
	at jp.sf.fess.solr.IndexUpdater.processAccessResults(IndexUpdater.java:300)
	at jp.sf.fess.solr.IndexUpdater.run(IndexUpdater.java:189)
2010-07-16 16:22:43,270 [IndexUpdater] INFO  jp.sf.fess.solr.IndexUpdater - [EXEC TIME] index update time: 1041054ms
2010-07-16 16:23:21,801 [Robot-20100716135749-1-1] ERROR org.seasar.robot.helper.impl.LogHelperImpl - Crawling Exception at file:////hogehoge/hoge1.xlsx
java.lang.OutOfMemoryError: Java heap space
	at org.apache.xmlbeans.impl.piccolo.xml.PiccoloLexer.parseCdataLiteral(PiccoloLexer.java:3027)
	at org.apache.xmlbeans.impl.piccolo.xml.PiccoloLexer.parseQuotedTagValue(PiccoloLexer.java:2936)
	at org.apache.xmlbeans.impl.piccolo.xml.PiccoloLexer.parseAttributesNS(PiccoloLexer.java:1754)
	at org.apache.xmlbeans.impl.piccolo.xml.PiccoloLexer.parseOpenTagNS(PiccoloLexer.java:1521)
	at org.apache.xmlbeans.impl.piccolo.xml.PiccoloLexer.parseTagNS(PiccoloLexer.java:1362)
	at org.apache.xmlbeans.impl.piccolo.xml.PiccoloLexer.parseXMLNS(PiccoloLexer.java:1293)
	at org.apache.xmlbeans.impl.piccolo.xml.PiccoloLexer.parseXML(PiccoloLexer.java:1261)
	at org.apache.xmlbeans.impl.piccolo.xml.PiccoloLexer.yylex(PiccoloLexer.java:4808)
	at org.apache.xmlbeans.impl.piccolo.xml.Piccolo.yylex(Piccolo.java:1290)
	at org.apache.xmlbeans.impl.piccolo.xml.Piccolo.yyparse(Piccolo.java:1400)
	at org.apache.xmlbeans.impl.piccolo.xml.Piccolo.parse(Piccolo.java:714)
	at org.apache.xmlbeans.impl.store.Locale$SaxLoader.load(Locale.java:3439)
	at org.apache.xmlbeans.impl.store.Locale.parseToXmlObject(Locale.java:1270)
	at org.apache.xmlbeans.impl.store.Locale.parseToXmlObject(Locale.java:1257)
	at org.apache.xmlbeans.impl.schema.SchemaTypeLoaderBase.parse(SchemaTypeLoaderBase.java:345)
	at org.openxmlformats.schemas.spreadsheetml.x2006.main.WorksheetDocument$Factory.parse(Unknown Source)
	at org.apache.poi.xssf.usermodel.XSSFSheet.read(XSSFSheet.java:127)
	at org.apache.poi.xssf.usermodel.XSSFSheet.onDocumentRead(XSSFSheet.java:119)
	at org.apache.poi.xssf.usermodel.XSSFWorkbook.onDocumentRead(XSSFWorkbook.java:222)
	at org.apache.poi.POIXMLDocument.load(POIXMLDocument.java:200)
	at org.apache.poi.xssf.usermodel.XSSFWorkbook.<init>(XSSFWorkbook.java:172)
	at org.apache.poi.xssf.extractor.XSSFExcelExtractor.<init>(XSSFExcelExtractor.java:49)
	at org.apache.poi.extractor.ExtractorFactory.createExtractor(ExtractorFactory.java:104)
	at org.apache.poi.extractor.ExtractorFactory.createExtractor(ExtractorFactory.java:86)
	at org.apache.tika.parser.microsoft.ooxml.OOXMLExtractorFactory.parse(OOXMLExtractorFactory.java:53)
	at org.apache.tika.parser.microsoft.ooxml.OOXMLParser.parse(OOXMLParser.java:69)
	at org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:132)
	at org.apache.tika.parser.AutoDetectParser.parse(AutoDetectParser.java:99)
	at org.seasar.robot.extractor.impl.TikaExtractor.getText(TikaExtractor.java:105)
	at jp.sf.fess.transformer.AbstractFessFileTransformer.transform(AbstractFessFileTransformer.java:95)
	at org.seasar.robot.processor.impl.DefaultResponseProcessor.process(DefaultResponseProcessor.java:64)
	at org.seasar.robot.S2RobotThread.processResponse(S2RobotThread.java:294)
2010-07-16 16:23:21,801 [Robot-20100716135749-1-2] ERROR org.seasar.robot.helper.impl.LogHelperImpl - Crawling Exception at file:////hogehogehoge/hoge2.xlsx
java.lang.OutOfMemoryError: Java heap space
	at org.apache.xmlbeans.impl.store.Cur.createElementXobj(Cur.java:257)
	at org.apache.xmlbeans.impl.store.Cur$CurLoadContext.startElement(Cur.java:2992)
	at org.apache.xmlbeans.impl.store.Locale$SaxHandler.startElement(Locale.java:3198)
	at org.apache.xmlbeans.impl.piccolo.xml.Piccolo.reportStartTag(Piccolo.java:1082)
	at org.apache.xmlbeans.impl.piccolo.xml.PiccoloLexer.parseOpenTagNS(PiccoloLexer.java:1473)
	at org.apache.xmlbeans.impl.piccolo.xml.PiccoloLexer.parseTagNS(PiccoloLexer.java:1362)
	at org.apache.xmlbeans.impl.piccolo.xml.PiccoloLexer.yylex(PiccoloLexer.java:4678)
	at org.apache.xmlbeans.impl.piccolo.xml.Piccolo.yylex(Piccolo.java:1290)
	at org.apache.xmlbeans.impl.piccolo.xml.Piccolo.yyparse(Piccolo.java:1400)
	at org.apache.xmlbeans.impl.piccolo.xml.Piccolo.parse(Piccolo.java:714)
	at org.apache.xmlbeans.impl.store.Locale$SaxLoader.load(Locale.java:3439)
	at org.apache.xmlbeans.impl.store.Locale.parseToXmlObject(Locale.java:1270)
	at org.apache.xmlbeans.impl.store.Locale.parseToXmlObject(Locale.java:1257)
	at org.apache.xmlbeans.impl.schema.SchemaTypeLoaderBase.parse(SchemaTypeLoaderBase.java:345)
	at org.openxmlformats.schemas.spreadsheetml.x2006.main.WorksheetDocument$Factory.parse(Unknown Source)
	at org.apache.poi.xssf.usermodel.XSSFSheet.read(XSSFSheet.java:127)
	at org.apache.poi.xssf.usermodel.XSSFSheet.onDocumentRead(XSSFSheet.java:119)
	at org.apache.poi.xssf.usermodel.XSSFWorkbook.onDocumentRead(XSSFWorkbook.java:222)
	at org.apache.poi.POIXMLDocument.load(POIXMLDocument.java:200)
	at org.apache.poi.xssf.usermodel.XSSFWorkbook.<init>(XSSFWorkbook.java:172)
	at org.apache.poi.xssf.extractor.XSSFExcelExtractor.<init>(XSSFExcelExtractor.java:49)
	at org.apache.poi.extractor.ExtractorFactory.createExtractor(ExtractorFactory.java:104)
	at org.apache.poi.extractor.ExtractorFactory.createExtractor(ExtractorFactory.java:86)
	at org.apache.tika.parser.microsoft.ooxml.OOXMLExtractorFactory.parse(OOXMLExtractorFactory.java:53)
	at org.apache.tika.parser.microsoft.ooxml.OOXMLParser.parse(OOXMLParser.java:69)
	at org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:132)
	at org.apache.tika.parser.AutoDetectParser.parse(AutoDetectParser.java:99)
	at org.seasar.robot.extractor.impl.TikaExtractor.getText(TikaExtractor.java:105)
	at jp.sf.fess.transformer.AbstractFessFileTransformer.transform(AbstractFessFileTransformer.java:95)
	at org.seasar.robot.processor.impl.DefaultResponseProcessor.process(DefaultResponseProcessor.java:64)
	at org.seasar.robot.S2RobotThread.processResponse(S2RobotThread.java:294)
	at org.seasar.robot.S2RobotThread.run(S2RobotThread.java:180)



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