[CS/데이터처리] 스프링 배치 - 10부

황제연·2025년 8월 29일
0

CS학습

목록 보기
182/193
post-thumbnail

StepExecution

Step에 대한 한번의 시도를 의미하는 객체로서 Step 실행 중에 발생한 정보들을 저장하고 있는 객체를 말합니다
시작시간, 종료시간, 상태, commit count, rollback count 등의 속성을 갖비니다

Step이 매번 시도될 떄마다 생성되며, 각 Step 별로 생성됩니다
Job이 재시작하더라도 이미 성공적으로 완료된 Step은 재실행되지 않고 실패한 Step만 실행됩니다

이전단계 Step이 실패해서 현재 Step을 실행하지 않았다면 StepExecution을 생성하지 않습니다
Step이 실제로 시작됐을 때만 StepExecution을 생성합니다

JobExecution과의 관계

Step의 StepExecution이 모두 정상적으로 완료되어야 JobExecution이 정상적으로 완료됩니다
Step의 StepExecution중 하나라도 실패하면 JobExecution은 실패합니다

BATCH_STEP_EXECUTION 테이블과 매핑

JobExecution과 StepExecution은 1:M 관계이며,
하나의 Job에 여러개의 Step으로 구성했을 경우 각 StepExecution은 하나의 JobExecution을 부모로 가집니다

참고

  • 스프링 배치 - 정수원 인프런 강의
profile
Software Developer

0개의 댓글