2007年5月7日月曜日

Tomcatクラッシュ

Windows2003+Tomcat5.5+jk_modで構築しているシステムで
Tomcatがクラッシュする問題が出て、しばらく悩んだ・・・

#
# An unexpected error has been detected by HotSpot Virtual Machine:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x6d6a4390, pid=1100, tid=348
#
# Java VM: Java HotSpot(TM) Client VM (1.5.0_11-b03 mixed mode)
# Problematic frame:
# V [jvm.dll+0x64390]
#

--------------- T H R E A D ---------------

Current thread (0x008aaf50): VMThread [id=348]

siginfo: ExceptionCode=0xc0000005, reading address 0x00000005

---
原因はなんて事無く、Javaのheapサイズの不足によるもの。
XmlのSAXパース処理でメモリを食っている様子で
検索結果を大量に返す場合に発生していたみたい。

Heap
def new generation total 960K, used 960K [0x02cf0000, 0x02df0000, 0x031d0000)

-Xms512m -Xmx1024m
を起動オプションに追加して
とりあえず、解決。
(でもデフォルトでheapが960Kしか無いのは何故???)