OPEN - BATCH-550: Add skipCount in BATCH_STEP_EXECUTION table
added readSkipCount and writeSkipCount to StepExecution class and db table
This commit is contained in:
@@ -72,6 +72,7 @@ public abstract class AbstractStepExecutionDaoTests extends AbstractTransactiona
|
||||
}
|
||||
|
||||
public void testSaveExecutionAssignsIdAndVersion() throws Exception {
|
||||
|
||||
assertNull(stepExecution.getId());
|
||||
assertNull(stepExecution.getVersion());
|
||||
dao.saveStepExecution(stepExecution);
|
||||
@@ -80,12 +81,17 @@ public abstract class AbstractStepExecutionDaoTests extends AbstractTransactiona
|
||||
}
|
||||
|
||||
public void testSaveAndFindExecution() {
|
||||
|
||||
stepExecution.setStatus(BatchStatus.STARTED);
|
||||
stepExecution.setReadSkipCount(7);
|
||||
stepExecution.setWriteSkipCount(5);
|
||||
dao.saveStepExecution(stepExecution);
|
||||
|
||||
StepExecution retrieved = dao.getStepExecution(jobExecution, step);
|
||||
assertEquals(stepExecution, retrieved);
|
||||
assertEquals(BatchStatus.STARTED, retrieved.getStatus());
|
||||
assertEquals(stepExecution.getReadSkipCount(), retrieved.getReadSkipCount());
|
||||
assertEquals(stepExecution.getWriteSkipCount(), retrieved.getWriteSkipCount());
|
||||
|
||||
assertNull(dao.getStepExecution(jobExecution, new StepSupport("not-existing step")));
|
||||
}
|
||||
|
||||
@@ -76,6 +76,7 @@ public class ItemSkipPolicyItemHandlerTests extends TestCase {
|
||||
handler.setItemSkipPolicy(new AlwaysSkipItemSkipPolicy());
|
||||
assertEquals(new Holder("1"), handler.read(contribution));
|
||||
assertEquals(new Holder("3"), handler.read(contribution));
|
||||
contribution.combineSkipCounts();
|
||||
assertEquals(1, contribution.getReadSkipCount());
|
||||
assertEquals(new Holder("4"), handler.read(contribution));
|
||||
}
|
||||
|
||||
@@ -73,8 +73,11 @@ public class SkipLimitStepFactoryBeanTests extends TestCase {
|
||||
StepExecution stepExecution = new StepExecution(step.getName(), jobExecution);
|
||||
step.execute(stepExecution);
|
||||
|
||||
|
||||
assertEquals(2, stepExecution.getSkipCount());
|
||||
|
||||
assertEquals(1, stepExecution.getReadSkipCount());
|
||||
assertEquals(1, stepExecution.getWriteSkipCount());
|
||||
|
||||
// only write exception caused rollback
|
||||
assertEquals(1, stepExecution.getRollbackCount().intValue());
|
||||
|
||||
@@ -99,6 +102,8 @@ public class SkipLimitStepFactoryBeanTests extends TestCase {
|
||||
step.execute(stepExecution);
|
||||
|
||||
assertEquals(2, stepExecution.getSkipCount());
|
||||
assertEquals(1, stepExecution.getReadSkipCount());
|
||||
assertEquals(1, stepExecution.getWriteSkipCount());
|
||||
|
||||
// no rollbacks
|
||||
assertEquals(0, stepExecution.getRollbackCount().intValue());
|
||||
@@ -183,6 +188,8 @@ public class SkipLimitStepFactoryBeanTests extends TestCase {
|
||||
}
|
||||
|
||||
assertEquals(3, stepExecution.getSkipCount());
|
||||
assertEquals(2, stepExecution.getReadSkipCount());
|
||||
assertEquals(1, stepExecution.getWriteSkipCount());
|
||||
|
||||
// writer did not skip "2" as it never made it to writer, only "4" did
|
||||
assertTrue(reader.processed.contains("4"));
|
||||
@@ -211,6 +218,8 @@ public class SkipLimitStepFactoryBeanTests extends TestCase {
|
||||
|
||||
step.execute(stepExecution);
|
||||
assertEquals(4, stepExecution.getSkipCount());
|
||||
assertEquals(3, stepExecution.getReadSkipCount());
|
||||
assertEquals(1, stepExecution.getWriteSkipCount());
|
||||
|
||||
// skipped 2,3,4,5
|
||||
List expectedOutput = Arrays.asList(StringUtils.commaDelimitedListToStringArray("1,6"));
|
||||
@@ -240,6 +249,8 @@ public class SkipLimitStepFactoryBeanTests extends TestCase {
|
||||
System.err.println(writer.written);
|
||||
System.err.println(reader.processed);
|
||||
assertEquals(4, stepExecution.getSkipCount());
|
||||
assertEquals(2, stepExecution.getReadSkipCount());
|
||||
assertEquals(2, stepExecution.getWriteSkipCount());
|
||||
|
||||
// skipped 2,3,4,5
|
||||
List expectedOutput = Arrays.asList(StringUtils.commaDelimitedListToStringArray("1,6,7"));
|
||||
|
||||
Reference in New Issue
Block a user