Shinsuke Sugaya
shins****@yahoo*****
2010年 7月 21日 (水) 08:44:31 JST
菅谷です。 情報をありがとうございます。 zipについては Apache Tika ではzipボム対策を していると思いますが、Office2007系のファイルも Apache Tika で何か対応してもらう必要があるかと 思います。Fess としてはOutOfMemoryになるような 場合は対象のファイルをブラックリストのようなところに 登録して除外できるようにする方向で考えたいと 思います。ですので、申し訳ありませんが、現状では 見つけたものを手動で除外するしかないと思います。 よろしくお願いいたします。 shinsuke 2010年7月21日0:24 Sugano <ganos****@gmail*****>: > お世話になってます。 > すがのです。 > > 先ほど1点気がついた点があったので、 > とりあえず参考までに報告しておきます。 > > ご存知かもしれませんが、本現象の原因となっている「xlsx」は、 > デフォルトでデータ圧縮機能(zip相当)があることを思い出しまし > た。 > (docx,pptxなど、他のOffice2007形式ファイルも対象) > > なので、今回のExcelファイルは、ほぼ全部テキストデータであり、 > テキストデータの圧縮率は非常に高いため、8MB程度のExcelファイ > ルでも、実質は数百MB相当のテキストデータを、クロール側で読み > 込んでいる可能性があると思います。 > > 上記、参考になれば幸いです。 >> ----Original Message---- >> Tue, 20 Jul 2010 22:54:42 +0900 >> From: Sugano <ganos****@gmail*****> >> To: fess-****@lists***** >> Cc: >> Subject: Re: [fess-user 297] Re:インデックスの作成が停止し >> ます >> > >> お世話になってます。 >> すがのです。 >> >> 本件ですが、原因が判明して、特定の条件を満たしたExcelファイ >> ル(xlsx)が原因で、メモリエラーが発生していたことがわかりまし >> た。 >> >> 経緯を説明しますと、まず、maxDocumentCacheSizeを10→5→2と変 >> 更して何度か再実行しても現象は変わりませんでした。 >> >> しかし、毎回約1万ファイル程度処理した時点で、ほぼ同様のメモ >> リエラーが発生しているようだったので、特定のファイルが原因で >> はないかと想定して調査したところ、特定のExcelファイル(xlsx) >> を読み込んだときに、使用メモリが10秒程度で急増(1G以上増加)し >> て、メモリエラーが発生したことがわかりました。 >> >> その特定のExcelファイルですが、ファイルサイズは8MB程度なので >> すが、中のデータ量がDBみたいに多く(項目20列程度のデータが約7 >> 万行)、このExcelファイルの中のデータを全て読み取ろうとして、 >> メモリが枯渇した可能性があると想定しております。 >> ※このファイル1つのみをピンポイントでクロールに読み込ませて >> テストしたところ、使用メモリが急増してエラーが発生しました。 >> >> さしあたり、このファイル自体は、クロール対象から除外すること >> で、一時的な回避はできたのですが、同じファイルサーバの中に、 >> 似たようなExcelファイルがいくつか存在している様で、本日3回ほ >> どメモリエラーで異常終了して、クロール処理を完了できない状態 >> となっております。 >> (20〜40列・6〜8万行・数MB程度のxlsxファイルを、現時点で3つほ >> どエラーの都度発見しており(※もっとある可能性大)、その度に、 >> 原因xlsxファイルを検索除外対象にする作業を繰り返している状態 >> です) >> >> 上記、エラー発生する都度、検索除外対象とするのは効率が悪いの >> で、何とか回避したいと思っておりますが、何か良い方法などはあ >> りますでしょうか? >> (特定のファイルでメモリエラーが発生しても、クロール処理が継 >> 続して正常稼動するのが理想ですが、プログラム改修による対応は >> 困難でしょうか?) >> >> 上記、アドバイスなどがありましたら、ご回答をお願いいたします。 >> 以上、よろしくお願いします。 >> > ----Original Message---- >> > Sun, 18 Jul 2010 21:26:01 +0900 >> > From: Sugano <ganos****@gmail*****> >> > To: fess-****@lists***** >> > Cc: >> > Subject: Re: [fess-user 297] Re:インデックスの作成が停止し >> > ます >> > >> >> > お世話になってます。 >> > すがのです。 >> > >> > 本件、了解です! >> > 連休明けにでも試してみます! >> > >> > ご回答ありがとうございました! >> > > ----Original Message---- >> > > Sun, 18 Jul 2010 07:48:35 +0900 >> > > From: Shinsuke Sugaya <shins****@yahoo*****> >> > > Reply-To: fess-****@lists***** >> > > To: fess-****@lists***** >> > > Subject: [fess-user 297] Re:インデックスの作成が停止します >> > > >> > >> > > 菅谷です。 >> > > >> > > > (CPU:Core 2 Duo 2GHz、メモリ:1.5GB) >> > > >> > > この環境ですと、Fess 的には mx を 512m くらいが >> > > 上限な気がしますので、1 回あたりの Solr に送る >> > > ドキュメント数を下げるのが良い気がします。 >> > > webapps/fess/WEB-INF/cmd/resources/app.dicon >> > > で >> > > >> > > <component name="indexUpdater" >> > > class="jp.sf.fess.solr.IndexUpdater" instance="prototype"> >> > > <property name="maxDocumentCacheSize">5</property> >> > > </component> >> > > >> > > というように maxDocumentCacheSize を下げることが >> > > できます。デフォルトでは 1 回で 10 ドキュメントを >> > > Solr に送ります。 >> > > >> > > shinsuke >> > > >> > > 2010年7月17日11:21 Sugano <ganos****@gmail*****>: >> > > > お世話になってます。 >> > > > すがのです。 >> > > > >> > > >> > ご質問があるのですが、クロールで集めた情報(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 >> > > > >> > > > >> > > > _______________________________________________ >> > > > 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 >