spring batch job 실행 오류 이럴 땐 이렇게

jaycee·2023년 11월 29일
0

step already complete or not restartable, so no action to execute

step already complete or not restartable, so no action to execute: StepExecution: id=522687, version=3, name=empStep, status=COMPLETED, exitStatus=COMPLETED, readCount=1, filterCount=0, writeCount=1 readSkipCount=0, writeSkipCount=0, processSkipCount=0, commitCount=1, rollbackCount=0, exitDescription=

→ job parameter가 잘 입력 되었는지 확인하자.

job parameter를 아예 입력하지 않거나 null로 입력 하는 경우 첫 회차에는 잘 실행 되지만 두 번째부터 실행이 안된다.

job parameter 가 null일 때 중복 실행과 job parameter 값이 있을 때의 중복 실행 오류 출력 메시지가 다르다.

에러메시지를 직역하자면 이미 완료되거나 재시작할 수 없는 상태기 때문에 실행을 할 수 없다..인데 실제론 job parameter를 확인해보자.

A job instance already exists and is complete for parameters

A job instance already exists and is complete for parameters={requestDate=20231127}. If you want to run this job again, change the parameters.

→ 파라미터를 변경 후 다시 실행한다.

직역하면 이미 종료된 잡이 있어서 파라미터를 변경 후 다시 변경하라는 것이다.

어떤 job param이 있는지 확인하려면 job param 메타 테이블batch_job_execution_params을 보면, 아래와 같이 동일한 파라미터로 실행 완료한 job이 존재한다.

테스트 환경이거나, 검증 배치 등 파라미터 변경 없이 중복 실행을 의도한 경우리면 중복 실행을 허용하도록 세팅할 수 있다.

중복을 허용하고 싶다면 📃spring batch job 중복 실행 세팅 방법 포스트 확인

profile
오늘도 하나 배웠다.

0개의 댓글

관련 채용 정보