본문 바로가기
프로그래밍/SpringBatch

[Spring Batch] Duplicate entry '0' for key 'PRIMARY' 오류

by 노잼인간이라불립니다 2022. 7. 22.

h2 db에서 테스트할 때는 잘만 실행되던 배치잡이 mysql로 db를 변경하여 실행 했더니 처음에만 정상적으로 실행이 되고, 2번째 배치잡 작업부터는 제목과 같은 오류가 발생했다.

 

알고보니 배치잡 테이블을 생성할때 create문을 통해 메타 테이블만 만들어지고 아래와 같은 기본적으로 들어가야 하는 데이터들 즉 seq값이 입력이 안되었던 것이다.

 

INSERT INTO BATCH_STEP_EXECUTION_SEQ values(0, '0');
INSERT INTO BATCH_JOB_EXECUTION_SEQ values(0, '0');
INSERT INTO BATCH_JOB_SEQ values(0, '0');

 

이렇게 insert 문을 수동으로 실행해주니 그 이후로 부터는 batchjob이 아무런 이상 없이 정상 동작 하였다.