Spring Batch 2.0-m2 Release Notes



* Bugfixes:

  * [BATCH-682] - Use SoftReference and/or expiry to store entries in RetryContextCache implementation(s)
  * [BATCH-764] - Truncate flatfile in restart scenarios.
  * [BATCH-776] - StaxEventItemWriter headers should not have to be the same type as the T that the writer is parameterised with
  * [BATCH-782] - Synchronization issue in ItemOrientedStep if exception is throw in chunk processing
  * [BATCH-790] - SQL error caused by changes to JdbcExecutionContextDao
  * [BATCH-795] - JdbcJobExecutionDao output sorting
  * [BATCH-807] - Serialization bug in JobExecution
  * [BATCH-812] - StepExecutionResourceProxy should use a different JobParametersConverter
  * [BATCH-813] - SingleColumnJdbcKeyGeneratorIntegrationTests fails in Eclipse
  * [BATCH-814] - JobRepository should not require Step or Job (only their names)
  * [BATCH-822] - New WRITE_COUNT should count items instead of chunks
  * [BATCH-830] - DelegatingItemReader should be removed
  * [BATCH-831] - id counter in MapJobInstanceDao should be declared static
  * [BATCH-832] - DefaultTransactionAttribute is inappropriate for TaskletStep
  * [BATCH-833] - TransactionAttributes swallows Exceptions
  * [BATCH-835] - sql error "column ambiguously defined" in JdbcJobInstanceDao
  * [BATCH-838] - TimeoutTerminationPolicy does not terminate when eof is encountered
  * [BATCH-839] - Reference doc reference deprecated code: 'StatefulRetryStepFactoryBean'
  * [BATCH-843] - FlatFileItemWriter handling of failure in LineAggregator
  * [BATCH-847] - FaultTolerantChunkOrientedTasklet loses chunks when non-skippable exceptions thrown in read phase
  * [BATCH-856] - JobExecution status isn't being updated when Step fails.
  * [BATCH-865] - CompositeItemProcessor should handle null properly

* Improvements

  * [BATCH-401] - aspect-oriented handling of job interruption logic
  * [BATCH-453] - Killed batches cannot be restarted
  * [BATCH-592] - RFC: buffer read items in ItemHandler instead of ItemReader
  * [BATCH-640] - FieldSetMapper.mapLine() should contain the line number
  * [BATCH-719] - API should provide access to original input line in flat file outside of error scenario
  * [BATCH-755] - Include Javadocs in distribution
  * [BATCH-762] - Change ExecutionContext storage strategy
  * [BATCH-763] - Create callback for header and footer writing in xml and flat files
  * [BATCH-772] - Upgrade CommandLineJobRunner to use args4j
  * [BATCH-775] - Throw exception if ExecutionContext is modified during processing.
  * [BATCH-779] - RFC: make FieldSetMapper and LineAggregator extend ItemProcessor
  * [BATCH-785] - Fix Parallel Sample to use a batch update for process indicator
  * [BATCH-792] - Automatically detect database type in JobRepositoryFactoryBean
  * [BATCH-796] - typos in javadoc @links and comments
  * [BATCH-802] - Incorrect metadata in fixed-length file example
  * [BATCH-825] - Modify JobLauncher contract to not throw exception on job failure.
  * [BATCH-826] - Create callback for header and footer reading in xml and flat files
  * [BATCH-828] - org.springframework.batch.item.file.MultiResourceItemReader should allow for no resources
  * [BATCH-841] - insufficient logging in AbstractStep
  * [BATCH-844] - Lacking of DAO's property setting in JobRepositoryFactoryBean
  * [BATCH-863] - introduce LineMapper interface to encapsulate string-to-item mapping
  * [BATCH-864] - rename SkipLimitStepFactoryBean
  * [BATCH-774] - Split item count into read/write/filter
  * [BATCH-829] - add persistent processSkipCount to StepExecution
  * [BATCH-810] - Need to add DB2MainframeSequenceMaxValueIncrementer to DefaultDataFieldMaxValueIncrementerFactory
  * [BATCH-8] - Determine approach for handling file creation/update in restart scenarios
  * [BATCH-220] - Chunk-oriented approach to processing
  * [BATCH-575] - FlatFileItemReader default charset should mimic java's default charset behavior
  * [BATCH-675] - API Analysis
  * [BATCH-759] - ItemReader refactoring
  * [BATCH-773] - Refactor and extend ExportedJobLauncher to JobOperator
  * [BATCH-806] - Resurrect ResourceLineReader
  * [BATCH-821] - remove EventSerializer/Deserializer abstractions and use Marshaller/Unmarshaller directly
  * [BATCH-827] - Create Sample job for reading and writing headers and footers
  * [BATCH-845] - integration tests for database autodetection
  
  

* Documentation updates

  * [BATCH-767] - Update documentation for M2
  * [BATCH-823] - Confusing explanation
  * [BATCH-718] - Add section on FlatFileItemReader error handling
  * [BATCH-784] - Refactor testing chapter to reflect Spring Testing framework changes.
  * [BATCH-850] - Create documentation for JdbcPagingItemReader and related classes
