TEMP→fessTmpDir_xxxxxxx フォルダ内apache-tika-xxxxx.tmpが大量に残存する問題

(from osdn.net/users/xfedora)
いつも大変お世話になっております。

表題の件ですが、apache-tika-xxxxx.tmpが綺麗に削除されず、2~5分置きに1つずつファイルが溜まっていく状態となっておりますが、想定される原因はございませんでしょうか?

ちなみに、Solrでクローリング結果を早く反映させるためにsolrconfig.xmlで、
でのをtrueに、も1秒間隔に行うように設定をしております。もしかして、上記設定が原因でしょうか?

以上、よろしくお願い申し上げます。

(from osdn.net/users/shinsuke)
クロールがひと通り終了したときにtemp内の一時ファイルは削除されると思います。

(from osdn.net/users/xfedora)
[メッセージ #74353 への返信]

クロールがひと通り終了したときにtemp内の一時ファイルは削除されると思います。

お返事ありがとうございます。そうなると仕様上避けられないことですね~
TEMPをRamDisk上に置いているので、常にドキドキしております。
取りあえず、今までの4GBから8GBにRamDiskサイズを変え様子を見てみます。

数日後クロールが終わればご報告いたします。

以上、どうもありがとうございました。

(from osdn.net/users/xfedora)
[メッセージ #74353 への返信]

クロールがひと通り終了したときにtemp内の一時ファイルは削除されると思います。

いつも大変お世話になっております。

ファイルサーバーの約60万件に対するクローリングが5日かかりで終了しました。
しかし、Tempファイルが計165個、5GBほど残留したままです。
apache tika 1.6も出ていましたが、そこでは直されているでしょうか?或いは、別の問題でしょうか?

以上、よろしくお願いします。

(from osdn.net/users/shinsuke)

  • Fessのバージョンは最新のリリースバージョンでしょうか?
  • OSは何をご利用でしょうか?
  • クロールはFessのジョブとして実行していますでしょうか?
  • tempのfessTempDir_*が複数残っているような状況でしょうか?
  • fessTempDir_*以下にはどのようなファイル名のファイルが残っているでしょうか?

(from osdn.net/users/xfedora)
[メッセージ #74366 への返信]

お返事ありがとうございます。m(__)m

  • Fessのバージョンは最新のリリースバージョンでしょうか?
    9.2.0 MySQLを使用しております。
  • OSは何をご利用でしょうか?
    Windows7 x64です。
  • クロールはFessのジョブとして実行していますでしょうか?
    はい。以前教わった、ファイルサーバー指定のジョブです。
    コードは:
    return container.getComponent(“crawlJob”).execute(executor, [] as String[],[“11”,“12”,“13”,“14”,“15”,“16”,“17”,“18”,“19”] as String[],[] as String[],“commit”);
  • tempのfessTempDir_*が複数残っているような状況でしょうか?
    上記ジョブは自動執行にしておりませんので、fessTempDirフォルダは
    一つで完結されておりました。
  • fessTempDir_以下にはどのようなファイル名のファイルが残っているでしょうか?
    先頭のcrawler_
    .properties一つとapache-tika-xxxxx.tmpが160個程度(ファイルサーバクローリングでしたので、大きいもので100Mbございます。<クローリング対象ファイルサイズを100MBに拡張しておりますので~>)

ジョブのログは以下のようにOKが出ております。

ジョブ名
自動パイロット 社内限定

ステータス
ok

対象
all

開始時刻
2014/09/08 18:03:56

完了時刻
2014/09/12 09:18:45

実行方法
groovy

スクリプト
return container.getComponent(“crawlJob”).execute(executor, [] as String[],[“11”,“12”,“13”,“14”,“15”,“16”,“17”,“18”,“19”] as String[],[] as String[],“commit”);

結果
Session Id: 20140908180355
Web Config Id:
File Config Id: 11 12 13 14 15 16 17 18 19
Data Config Id:

以上、よろしくお願い致します。

(from osdn.net/users/xfedora)
セッション情報も添付いたします。
ハードは i7 + 32GB + 1T SSD となります。

セッション ID
20140908180355

名前
20140908180355

開始時刻 (クロール)
2014-09-08T18:04:01.301+0900

開始時刻 (ウェブ/ファイル)
2014-09-08T18:04:01.328+0900

実行時間 (ウェブ/ファイル)
313767195

インデックス化実行時間 (ウェブ/ファイル)
35482895

インデックスサイズ (ウェブ/ファイル)
605334

終了時刻 (ウェブ/ファイル)
2014-09-12T09:13:29.313+0900

開始時刻 (コミット)
2014-09-12T09:13:29.375+0900

終了時刻 (コミット)
2014-09-12T09:18:43.635+0900

実行時間 (コミット)
314260

クロールステータス
T

終了時刻 (クロール)
2014-09-12T09:18:43.682+0900

実行時間 (クロール)
314082381

(from osdn.net/users/shinsuke)
ありがとうございます。
fess.outに
Could not delete a temp dir: ~
というような警告は出ていませんでしょうか?

おそらく、Windowsの問題だと思います。
クロール終了後にクロールで利用した一時ディレクトリを削除するのですが、
Windowsの場合、プロセス終了直後だとファイルが開放されていない場合もあるので
それでディレクトリが消せていないと思います。次のバージョンでは一時ディレクトリの
削除方法を変更することにしたいと思います。現行バージョンについては、
申し訳ありませんが、クロール後に消えていないものがあれば削除するような
運用で対応していただくしかないかと思います。