Asakusa FrameworkのWindGateで発生したエラーのメモ。
2015/11/24 20:09:42 ERROR [WG-BOOTSTRAP-E00001] Failed to configure gate task [HogeBatch|HogeJob] java.io.IOException: Failed to prepare session directory: /home/hoge/asakusa/windgate/var/session/mydb at com.asakusafw.windgate.file.session.FileSessionProvider.prepareDirectory(FileSessionProvider.java:115) ~[asakusa-windgate-core-0.7.4-hadoop2.jar:na] at com.asakusafw.windgate.file.session.FileSessionProvider.configure(FileSessionProvider.java:73) ~[asakusa-windgate-core-0.7.4-hadoop2.jar:na] at com.asakusafw.windgate.file.session.FileSessionProvider.configure(FileSessionProvider.java:43) ~[asakusa-windgate-core-0.7.4-hadoop2.jar:na] at com.asakusafw.windgate.core.BaseProfile.createProvider(BaseProfile.java:135) ~[asakusa-windgate-core-0.7.4-hadoop2.jar:na] at com.asakusafw.windgate.core.GateTask.loadSessionProvider(GateTask.java:138) ~[asakusa-windgate-core-0.7.4-hadoop2.jar:na] at com.asakusafw.windgate.core.GateTask.<init>(GateTask.java:120) ~[asakusa-windgate-core-0.7.4-hadoop2.jar:na] at com.asakusafw.windgate.bootstrap.WindGate.execute(WindGate.java:128) [asakusa-windgate-bootstrap-0.7.4-hadoop2.jar:na] at com.asakusafw.windgate.bootstrap.WindGate.main(WindGate.java:116) [asakusa-windgate-bootstrap-0.7.4-hadoop2.jar:na] 2015/11/24 20:09:42 INFO [WG-BOOTSTRAP-I00999] Exiting WindGate: code=1, elapsed=438ms [HogeBatch|HogeJob]
WindGateは、実行するときにロックする。
(何かの障害によってプロセスが生き残っているような場合に、同時に実行されないようにする為)
これにより、同じWindGateプロファイルを使う処理(バッチ)が同時に動かないようになっている。
ロックされているときに同じWindGateプロファイルを使うバッチを動かすと、上記のような例外が発生する。
ロックされているかどうかは、デフォルトでは、ロックファイルが存在しているかどうかで判定される。
ログに出ている「/home/hoge/asakusa/windgate/var/session/mydb」がロックファイルを作るディレクトリー。
(
ロックファイルを作るディレクトリーは、プロファイルの「session.directory
」で指定できる)