Tomcat 7.0.39 のjsvcの問題
思いっきり嵌まったので備忘録。
Tomcatを運用する際デーモンとして運用することがあります。
でテスト環境を作成するのに最新の状態を作っていたのですが、通常のcatalina.shでは起動するのに、jsvcをコンパイルしてdaemon.shから起動したら、セグメントエラーで動かない。
1日かかって調べてみたところ、何のことはない、ソースに間違いがあった。
/commons-daemon-1.0.14-native-src/unix/native/jsvc-unix.c ファイル
Re: (was: Re: [VOTE] Release Apache Tomcat 7.0.39)
↑では1167行目になっているが、調べたところ1166行目です。
tmp = strchr(oldpath,'/'); ←この行
if (tmp == NULL) {
log_error("JSVC re-exec requires execution with an absolute or relative path");
return 1;
}
oldpath → argv[0] に変更。
同梱の「commons-daemon-1.0.14-native-src」はこの通りですが、siteに単品である「commons-daemon-1.0.15-native-src」は直っているので次のリリースは直るでしょう。
一応環境
OS )RedHat6.4 Server x64
Java)Java SE 7u17