- PR -

TOMCAT終了時のエラー

1
投稿者投稿内容
きよあや
会議室デビュー日: 2008/08/29
投稿数: 2
投稿日時: 2008-08-29 11:44
最近、TOMCATの負荷が高くなってからか、以下のようなエラーが出て、TOMCATが終了できなくなりました。毎回ではなく、時々で、長時間(2か月ぐらい)稼働すると発生しています。
・Red Hat Enterprise Linux ES release 4
・Javaは1.5.0_05-b05
・Tomcat/5.5.12
・以前は問題なく動いていた。(最近負荷が高くなってきたのが影響?)
・Probeを導入。Oracleとの接続するシステムが稼働
・Apache停止→PSで停止を確認→TOMCAT停止を行っているが下記エラー
・エラー後にPSで数分監視したが、正常停止するわけではない。
・最終的にはKILLで終了している。その後起動は問題なく行われる。

Apacheとのコネクション周りかな?と思って調査しましたが、Apache側でのエラーは出てなく、正常終了でした。
複数環境を作っていますが、どの環境でも時々発生しています。
今後の方針としてはVMのバージョンあげたり、TOMCATバージョンを変えて調査しようと思っています。
同様の現象が出た方などおられるとご教授ください。


情報: サービス Catalina を停止します
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:275)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
Caused by: java.lang.NullPointerException
at org.apache.catalina.core.ContainerBase.removeChild(ContainerBase.java:883)
at org.apache.catalina.startup.HostConfig.undeployApps(HostConfig.java:1159)
at org.apache.catalina.startup.HostConfig.stop(HostConfig.java:1131)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:312)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1053)
at org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1065)
at org.apache.catalina.core.StandardEngine.stop(StandardEngine.java:447)
at org.apache.catalina.core.StandardService.stop(StandardService.java:512)
at org.apache.catalina.core.StandardServer.stop(StandardServer.java:714)
at org.apache.catalina.startup.Catalina.stop(Catalina.java:586)
at org.apache.catalina.startup.Catalina.start(Catalina.java:561)
... 6 more

[ メッセージ編集済み 編集者: きよ 編集日時 2008-08-29 11:48 ]

[ メッセージ編集済み 編集者: きよあや 編集日時 2008-08-29 11:56 ]
わたなべ
大ベテラン
会議室デビュー日: 2007/12/09
投稿数: 123
お住まい・勤務地: 札幌
投稿日時: 2008-08-29 12:30
負荷が増えてからというならば、JConsoleを使ってメモリの使用状況(遷移)やデットロックがないかなど、まずは測定するべきかな、と思います。
また、Probeは導入したことがないので詳しくは解りませんが、先に停止しなければならないなどの制限もないか確認したほうがいいと思います。
山本 裕介
ぬし
会議室デビュー日: 2003/05/22
投稿数: 2415
お住まい・勤務地: 恵比寿
投稿日時: 2008-08-29 20:21
バグデータベースを検索してみてはいかがでしょう。
https://issues.apache.org/bugzilla/buglist.cgi?query_format=specific&order=relevance+desc&bug_status=__open__&product=Tomcat+5&content=InvocationTargetException+nullpointerexception

メモリの利用状況にギモンがあるようであれば -XX:+PrintGCDetails と -XX:+PrintGCTimeStamps オプションを付けて標準/標準エラー出力をリダイレクトしておくことをお勧めします。

[ メッセージ編集済み 編集者: インギ 編集日時 2008-08-29 23:03 ]
きよあや
会議室デビュー日: 2008/08/29
投稿数: 2
投稿日時: 2008-09-01 11:41
ご回答ありがとうございます。
>わたなべ様
>インギ様

まずはメモリ回りの状況を把握してみるようにします。
JConsole導入及び、起動オプションの変更で対応および、MRTGあたりでOS
のメモリ遷移も把握しておこうと思います。

助言ありがとうございます。
unibon
ぬし
会議室デビュー日: 2002/08/22
投稿数: 1532
お住まい・勤務地: 美人谷        良回答(20pt)
投稿日時: 2008-09-03 09:30
引用:

きよあやさんの書き込み (2008-08-29 11:44) より:
最近、TOMCATの負荷が高くなってからか、以下のようなエラーが出て、TOMCATが終了できなくなりました。毎回ではなく、時々で、長時間(2か月ぐらい)稼働すると発生しています。


引用:

きよあやさんの書き込み (2008-08-29 11:44) より:
Caused by: java.lang.NullPointerException
at org.apache.catalina.core.ContainerBase.removeChild(ContainerBase.java:883)
at org.apache.catalina.startup.HostConfig.undeployApps(HostConfig.java:1159)



良くは知りませんが、あてずっぽうで答えると、まずスタックトレースに NullPointerException がありますので、内部状態がおかしくなっていると考えられます。
おっしゃる2か月の間にほかのエラーはまったく出ていないことは確認されましたか?もしなにか出ていたら、この終了時のエラーはそれの副次的なエラーにすぎないのかもしれません。
1

スキルアップ/キャリアアップ(JOB@IT)