Fix retrieval of job parameters in SimpleJobExplorer#getJobExecutions

Before this commit, SimpleJobExplorer#getJobExecutions returned
job executions with wrong job parameters, ie a job execution could
have the parameter of another execution.

This commit fixes the implementation so that each returned job
execution has its own parameters.

Resolves #4246
This commit is contained in:
jinwoo-Bae
2023-05-02 20:14:08 +09:00
committed by Mahmoud Ben Hassine
parent 4a4c822274
commit e329b61d18
2 changed files with 42 additions and 6 deletions

View File

@@ -71,6 +71,7 @@ import org.springframework.util.Assert;
* @author Mahmoud Ben Hassine
* @author Dimitrios Liapis
* @author Philippe Marschall
* @author Jinwoo Bae
*/
public class JdbcJobExecutionDao extends AbstractJdbcBatchMetadataDao implements JobExecutionDao, InitializingBean {
@@ -492,8 +493,6 @@ public class JdbcJobExecutionDao extends AbstractJdbcBatchMetadataDao implements
private JobInstance jobInstance;
private JobParameters jobParameters;
public JobExecutionRowMapper() {
}
@@ -505,9 +504,7 @@ public class JdbcJobExecutionDao extends AbstractJdbcBatchMetadataDao implements
public JobExecution mapRow(ResultSet rs, int rowNum) throws SQLException {
Long id = rs.getLong(1);
JobExecution jobExecution;
if (jobParameters == null) {
jobParameters = getJobParameters(id);
}
JobParameters jobParameters = getJobParameters(id);
if (jobInstance == null) {
jobExecution = new JobExecution(id, jobParameters);