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:
robokaso
2008-04-30 12:59:17 +00:00
parent 471948a824
commit 0396023d33
15 changed files with 500 additions and 420 deletions

View File

@@ -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")));
}

View File

@@ -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));
}

View File

@@ -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"));