The DB restart happened during the execution of a spring batch job and it got stuck at the 'Started' state. I marked the job as failed and tried resuming the same. Instead of resuming the failed job it created a new instance and executed the job from the beginning. During analysis, I found that due to the abrupt restart of the DB, the step context of the job was not stored in the BATCH_STEP_EXECUTION_CONTEXT table and hence it triggered a new instance instead of resuming the failed one. Is there a way to resume a failed batch job if the step context is empty?