On behalf of the Spring Batch team, I am pleased to announce that Spring Batch 4.3.0-M2 is now available from our milestone repository.
This release comes with a number of new features and enhancements that you can find in the release notes, but here are the major highlights:
By default, the
KafkaItemReader reads a topic from the beginning. When we initially introduced this reader in v4.2, it was not possible to configure it to read records from a custom offset. In this release, we added this feature. As a result of this addition, it is now possible to configure the reader to start from the offset stored in Kafka.
Micrometer support has been introduced in v4.2 last year, and we got a lot of feedback since then. One of the requested features is the ability to know the currently active jobs. Spring Batch provides a metric called
spring.batch.job.active that gives the number of currently active jobs. However, until now, this metric did not let you know which specific jobs are currently active. In this release, we enriched the metric tags to make this possible.
RunIdIncrementer serves its purpose well in most cases: It increments a job parameter called
run.id, which is typically used as job instance discriminator. However, in some circumstances (such as un-ordered database sequences, concurrent access to the incrementer, and others), this incrementer might generate non-unique values, which prevents new job instances from being launched.
In this release, we introduced a new
JobParametersIncrementer that is based on a
DataFieldMaxValueIncrementer from Spring Framework. This incrementer provides stronger guarantees on the uniqueness of generated values compared to the
This release upgrades Spring projects dependencies to the following versions:
- Spring Framework 5.3.0-M2
- Spring Data 2020.0.0-M2
- Spring Integration 5.4.0-M2
- Spring AMQP 2.3.0-M2
- Spring for Apache Kafka 2.6.0-M1
Spring Batch v4.3.0-M2 can be consumed with Spring Boot 2.4.0-M2, which is planned to be released soon. Stay tuned!