리커버리 수정
This commit is contained in:
@@ -102,8 +102,8 @@ public class JobRecoveryOnStartupService {
|
|||||||
} else {
|
} else {
|
||||||
|
|
||||||
// 3-3) 산출물이 부족하면 중단처리
|
// 3-3) 산출물이 부족하면 중단처리
|
||||||
// 산출물이 부족하면 "실패 확정"이 아니라 "중단/보류"로 처리해서
|
// 산출물이 부족하면 "중단/보류"로 처리
|
||||||
// 운영자가 재시작(재개)할 수 있게 한다.
|
// 운영자가 재시작 할 수 있게 한다.
|
||||||
log.warn(
|
log.warn(
|
||||||
"[RECOVERY] outputs incomplete. mark PAUSED/STOP for restart. jobId={} reason={}",
|
"[RECOVERY] outputs incomplete. mark PAUSED/STOP for restart. jobId={} reason={}",
|
||||||
job.getId(),
|
job.getId(),
|
||||||
@@ -124,14 +124,13 @@ public class JobRecoveryOnStartupService {
|
|||||||
|
|
||||||
// 4) 컨테이너는 존재하고, 아직 running=true
|
// 4) 컨테이너는 존재하고, 아직 running=true
|
||||||
// - 서버만 재기동됐고 컨테이너는 그대로 살아있는 케이스
|
// - 서버만 재기동됐고 컨테이너는 그대로 살아있는 케이스
|
||||||
// - 실행중 docker 를 stop 하고 이어하기를 한다,
|
// - 실행중 docker 를 kill 하고 이어하기를 한다,
|
||||||
if (state.running()) {
|
if (state.running()) {
|
||||||
log.warn("[RECOVERY] container still running. force kill. container={}", containerName);
|
log.warn("[RECOVERY] container still running. force kill. container={}", containerName);
|
||||||
|
|
||||||
try {
|
try {
|
||||||
// ============================================================
|
// ============================================================
|
||||||
// 1) docker kill (SIGKILL) 바로 전송
|
// 1) docker kill (SIGKILL) 바로 전송
|
||||||
// - stop은 grace period가 있지만
|
|
||||||
// - kill은 즉시 종료
|
// - kill은 즉시 종료
|
||||||
// ============================================================
|
// ============================================================
|
||||||
ProcessBuilder pb = new ProcessBuilder("docker", "kill", containerName);
|
ProcessBuilder pb = new ProcessBuilder("docker", "kill", containerName);
|
||||||
|
|||||||
Reference in New Issue
Block a user