# DefaultCrawlerが途中で終了した

**URL:** <https://discuss.codelibs.org/t/defaultcrawler/2171>\
**Category:** Japanese:Fess\
**Created:** [June 1, 2023, 8:02am UTC](https://discuss.codelibs.org/t/defaultcrawler/2171 "2023-06-01T08:02:23Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![HAHA](https://discuss.codelibs.org/letter_avatar_proxy/v4/letter/h/59ef9b/32.png) [@HAHA](https://discuss.codelibs.org/u/HAHA)\
**Post date:** [June 1, 2023, 8:02am UTC](https://discuss.codelibs.org/t/defaultcrawler/2171/1 "2023-06-01T08:02:23Z")

</div>

【環境】  
windows  
elasticserch-8.6.0  
fess-14.6.1

①DefaultCrawlerでファイルシステムクロールの全量が終わる前に完了してしまった。  
■経緯  
ファイルシステムクローラをディレクトリ毎に作成（合計22件）。  
DefaultCrawlerで実行→完了していたがクローラログを見ると、全量のクロールが終了していない。

■ログ中身（抜粋）  
クロール中下記のようなメッセージが多発しておりました。  
調査しても内容が判断できず、ご教示いただけますと幸いです。

> 2023-05-31 17:39:14,198 [Crawler-20230531162312-4-5] WARN Command offset 19 past end of data at 3  
> 2023-05-31 17:39:14,199 [Crawler-20230531162312-4-5] INFO Command of type 31 not processed!

■クロール終了前  
Exceptionが発生しておりました。

> 2023-05-31 17:40:08,725 [Crawler-20230531162312-3-10] ERROR Crawling Exception at file:/D:/filename.xlsx  
> java.lang.OutOfMemoryError: Java heap space  
> 2023-05-31 17:40:09,150 [Crawler-20230531162312-8-18] ERROR Crawling Exception at file:/D:/filename  
> org.codelibs.fess.crawler.exception.EsAccessException: Failed to insert [UrlQueueImpl [id=, depth=6, lastModified=null, createTime=1685522374919], UrlQueueImpl [id=, sessionId=20230531162312-8, method=GET, url=file:/D:/.xlsx, encoding=null, parentUrl=file:/D:/, depth=6, lastModified=null, createTime=1685522374919], UrlQueueImpl [id=, sessionId=20230531162312-8, method=GET, url=file:/D:/.xlsx, encoding=null, parentUrl=file:/D:/, depth=6, lastModified=null, createTime=1685522374919]]  
> at org.codelibs.fess.crawler.service.impl.AbstractCrawlerService.doInsertAll(AbstractCrawlerService.java:305) ~[fess-crawler-es-14.6.1.jar:?]  
> at org.codelibs.fess.crawler.service.impl.AbstractCrawlerService.lambda$insertAll$6(AbstractCrawlerService.java:247) ~[fess-crawler-es-14.6.1.jar:?]  
> at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625) ~[?:?]  
> at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:762) ~[?:?]  
> at org.codelibs.fess.crawler.service.impl.AbstractCrawlerService.insertAll(AbstractCrawlerService.java:244) ~[fess-crawler-es-14.6.1.jar:?]  
> at org.codelibs.fess.crawler.service.impl.EsUrlQueueService.offerAll(EsUrlQueueService.java:185) ~[fess-crawler-es-14.6.1.jar:?]  
> at org.codelibs.fess.crawler.CrawlerThread.storeChildUrls(CrawlerThread.java:316) ~[fess-crawler-14.6.1.jar:?]  
> at org.codelibs.fess.crawler.CrawlerThread.run(CrawlerThread.java:177) ~[fess-crawler-14.6.1.jar:?]  
> at java.lang.Thread.run(Thread.java:833) ~[?:?]  
> Caused by: org.codelibs.core.exception.InterruptedRuntimeException: java.lang.InterruptedException: sleep interrupted  
> at org.codelibs.core.lang.ThreadUtil.sleep(ThreadUtil.java:38) ~[corelib-0.5.5.jar:?]  
> at org.codelibs.fess.crawler.client.FesenClient.get(FesenClient.java:196) ~[fess-crawler-es-14.6.1.jar:?]  
> at org.codelibs.fess.crawler.service.impl.AbstractCrawlerService.doInsertAll(AbstractCrawlerService.java:292) ~[fess-crawler-es-14.6.1.jar:?]  
> … 8 more  
> Caused by: java.lang.InterruptedException: sleep interrupted  
> at java.lang.Thread.sleep(Native Method) ~[?:?]  
> at org.codelibs.core.lang.ThreadUtil.sleep(ThreadUtil.java:36) ~[corelib-0.5.5.jar:?]  
> at org.codelibs.fess.crawler.client.FesenClient.get(FesenClient.java:196) ~[fess-crawler-es-14.6.1.jar:?]  
> at org.codelibs.fess.crawler.service.impl.AbstractCrawlerService.doInsertAll(AbstractCrawlerService.java:292) ~[fess-crawler-es-14.6.1.jar:?]  
> … 8 more  
> 2023-05-31 17:40:09,267 [Crawler-20230531162312-3-16] INFO Could not serialize object  
> 2023-05-31 17:40:09,341 [Crawler-20230531162312-3-11] ERROR Crawling Exception at file:/D:/filename.xlsx  
> org.codelibs.fess.crawler.exception.EsAccessException: Failed to check if 20230531162312-3:file:/D:/filename.xlsx exists.  
> at org.codelibs.fess.crawler.service.impl.AbstractCrawlerService.exists(AbstractCrawlerService.java:315) ~[fess-crawler-es-14.6.1.jar:?]  
> at org.codelibs.fess.crawler.service.impl.EsUrlQueueService.visited(EsUrlQueueService.java:272) ~[fess-crawler-es-14.6.1.jar:?]  
> at org.codelibs.fess.crawler.service.impl.EsUrlQueueService.visited(EsUrlQueueService.java:53) ~[fess-crawler-es-14.6.1.jar:?]  
> at org.codelibs.fess.crawler.processor.impl.DefaultResponseProcessor.processResult(DefaultResponseProcessor.java:116) ~[fess-crawler-14.6.1.jar:?]  
> at org.codelibs.fess.crawler.processor.impl.DefaultResponseProcessor.process(DefaultResponseProcessor.java:79) ~[fess-crawler-14.6.1.jar:?]  
> at org.codelibs.fess.crawler.CrawlerThread.processResponse(CrawlerThread.java:291) ~[fess-crawler-14.6.1.jar:?]  
> at org.codelibs.fess.crawler.FessCrawlerThread.processResponse(FessCrawlerThread.java:249) ~[classes/:?]  
> at org.codelibs.fess.crawler.CrawlerThread.run(CrawlerThread.java:162) ~[fess-crawler-14.6.1.jar:?]  
> at java.lang.Thread.run(Thread.java:833) ~[?:?]  
> Caused by: org.codelibs.core.exception.InterruptedRuntimeException: java.lang.InterruptedException: sleep interrupted  
> at org.codelibs.core.lang.ThreadUtil.sleep(ThreadUtil.java:38) ~[corelib-0.5.5.jar:?]  
> at org.codelibs.fess.crawler.client.FesenClient.get(FesenClient.java:196) ~[fess-crawler-es-14.6.1.jar:?]  
> at org.codelibs.fess.crawler.service.impl.AbstractCrawlerService.exists(AbstractCrawlerService.java:312) ~[fess-crawler-es-14.6.1.jar:?]  
> … 8 more  
> Caused by: java.lang.InterruptedException: sleep interrupted  
> at java.lang.Thread.sleep(Native Method) ~[?:?]  
> at org.codelibs.core.lang.ThreadUtil.sleep(ThreadUtil.java:36) ~[corelib-0.5.5.jar:?]  
> at org.codelibs.fess.crawler.client.FesenClient.get(FesenClient.java:196) ~[fess-crawler-es-14.6.1.jar:?]  
> at org.codelibs.fess.crawler.service.impl.AbstractCrawlerService.exists(AbstractCrawlerService.java:312) ~[fess-crawler-es-14.6.1.jar:?]  
> … 8 more  
> 2023-05-31 17:40:09,870 [WebFsCrawler] INFO [EXEC TIME] crawling time: 4610155ms  
> 2023-05-31 17:40:09,870 [main] INFO Finished Crawler  
> 2023-05-31 17:40:09,995 [main] INFO [CRAWL INFO] DataCrawlEndTime=2023-05-31T16:23:19.673+0900,CrawlerEndTime=2023-05-31T17:40:09.870+0900,WebFsCrawlExecTime=4610155,CrawlerStatus=true,CrawlerStartTime=2023-05-31T16:23:19.585+0900,WebFsCrawlEndTime=2023-05-31T17:40:09.870+0900,WebFsIndexExecTime=4340399,WebFsIndexSize=20928,CrawlerExecTime=4610285,DataCrawlStartTime=2023-05-31T16:23:19.653+0900,WebFsCrawlStartTime=2023-05-31T16:23:19.652+0900  
> 2023-05-31 17:44:05,389 [main] INFO Disconnected to [http://localhost:9200](http://localhost:9200)  
> 2023-05-31 17:44:05,397 [main] INFO Destroyed LaContainer.

直接的な原因が分からず、ご教示いただけますと幸いです。

②クロール実施後、同じセグメント内の別サーバから接続できなくなった。  
クロール実施前は、違うサーバからHTTP通信でFESSのブラウザ表示が可能でしたが、  
クロール実施中から接続できない事象が発生しました。  
ping確認  
別サーバA→FESS用サーバ OK  
FESS用サーバ→別サーバA OK

windowsファイアウォールの設定など確認しておりますが、FESSクロール実行直後の事象だったため、関連したご知見があればご教示いただけますと幸いです。

---

<div class="post-metadata">

**Author:** ![shinsuke](https://discuss.codelibs.org/user_avatar/discuss.codelibs.org/shinsuke/32/6_2.png) [@shinsuke](https://discuss.codelibs.org/u/shinsuke)\
**Post date:** [June 2, 2023, 12:17pm UTC](https://discuss.codelibs.org/t/defaultcrawler/2171/2 "2023-06-02T12:17:13Z")

</div>

> java.lang.OutOfMemoryError: Java heap space

Javaのヒープメモリが不足したためだと思います。  
クロール設定で、スレッド数を増やしすぎたなどが考えられます。  
ヒープメモリーの設定を変更したい場合は、[システム関連の設定](https://fess.codelibs.org/ja/14.8/config/system.html)を参照して、 クローラ側のヒープメモリー最大値を変更するなども可能です。

---

<div class="post-metadata">

**Author:** ![HAHA](https://discuss.codelibs.org/letter_avatar_proxy/v4/letter/h/59ef9b/32.png) [@HAHA](https://discuss.codelibs.org/u/HAHA)\
**Post date:** [June 5, 2023, 2:10am UTC](https://discuss.codelibs.org/t/defaultcrawler/2171/3 "2023-06-05T02:10:21Z")

</div>

ご回答いただきありがとうございます。  
設定を変更し、再度クロールを実施してみます。

> ②クロール実施後、同じセグメント内の別サーバから接続できなくなった。

上記についていかがでしょうか。  
お忙しいところっ申し訳ございませんが、ご知見等ございましたらご教授いただけますと幸いです。

---

<div class="post-metadata">

**Author:** ![HAHA](https://discuss.codelibs.org/letter_avatar_proxy/v4/letter/h/59ef9b/32.png) [@HAHA](https://discuss.codelibs.org/u/HAHA)\
**Post date:** [June 5, 2023, 6:08am UTC](https://discuss.codelibs.org/t/defaultcrawler/2171/4 "2023-06-05T06:08:34Z")

</div>

> ②クロール実施後、同じセグメント内の別サーバから接続できなくなった。

こちらですが、クロールによる影響ではなさそうです。  
windowsサービスへの登録後であることが判明しました。  
windowsサービスを停止し、bin配下のbatファイルを手動で実行したところ、外部PCから接続できることを確認しました。

ファイアウォールの設定方法を調査していますが、もしご知見ありましたらご教示いただけますと幸いです。

---

<div class="post-metadata">

**Author:** ![shinsuke](https://discuss.codelibs.org/user_avatar/discuss.codelibs.org/shinsuke/32/6_2.png) [@shinsuke](https://discuss.codelibs.org/u/shinsuke)\
**Post date:** [June 5, 2023, 8:23pm UTC](https://discuss.codelibs.org/t/defaultcrawler/2171/5 "2023-06-05T20:23:26Z")

</div>

状況がわかりませんが、Windowsサービス登録関連だと、javaコマンドがパスに通っていないので、起動しないみたいなことはあると思います。
