Mahmoud Ben Hassine

Mahmoud Ben Hassine

I am a software engineer at VMware, currently working as the project lead of Spring Batch.

I am an OSS advocate and I have contributed to several open source projects. I enjoy spending time with my family and friends, reading, running and playing chess!

Recent Blog posts by Mahmoud Ben Hassine

Spring Batch 4.2.2 and 4.1.4 available now!

Releases | April 01, 2020 | ...

I am pleased to announce the release of Spring Batch 4.2.2 and 4.1.4 with bug fixes and documentation updates. Please find the complete list of changes in the release notes: 4.2.2 and 4.1.4.

As we announced earlier, version 4.1.4 is the last release of the 4.1 line. Please upgrade to version 4.2.2 at your earliest convenience as this is the primary active branch for the moment and which will be supported until the end of 2020.

The next feature release will be 4.3, with a GA planned for October 2020, aligned with Spring Framework 5.3 and Spring Boot 2.4. This release is expected to be the last…

Spring Batch 4.0.4, 4.1.3 and 4.2.1 available now!

Releases | December 04, 2019 | ...

I am pleased to announce the release of Spring Batch 4.0.4, 4.1.3 and 4.2.1 with bug fixes as well as documentation and dependencies updates. Please find the complete list of changes in the release notes: 4.0.4, 4.1.3, 4.2.1.

As we announced earlier this year, version 4.0.4 is the last release of the 4.0 line. The 4.1.x line will get another bug fix release next year and 4.1.4 will be the last release for this line. Please upgrade to v4.2+ at your earliest convenience as this is the primary active branch for the moment.

The next feature release will be 4.3, with a GA planned for October 202…

Spring Batch 4.2 in now GA!

Releases | October 02, 2019 | ...

On behalf of the Spring Batch team, I am pleased to announce the general availability of Spring Batch 4.2, which includes a number of new features and performance improvements!

New Features

Spring Batch 4.2 includes the following new features:

Batch Metrics with Micrometer

Spring Batch has always provided users with various metrics through the job repository. However, the ability to consume these metrics and react to them in real time has been muted by the use of a database as the metrics store. This release introduces a new feature that lets you monitor your batch jobs by using a true metrics store through Micrometer. By default, Spring Batch collects metrics (such as job duration, step duration, item read and write throughput, and others) and registers them in Micrometer’s global metrics registry under the spring.batch

Spring Batch 4.2.0.RC1 is released!

Releases | September 17, 2019 | ...

On behalf of the Spring Batch team, I am pleased to announce the release of Spring Batch 4.2.0.RC1. We have been working on some performance improvements in the core framework, and this post highlights the major changes.

Major Performance Improvements

We have made some performance improvements, including:

Enhanced Step Partitioning

Starting a partitioned step is an area where the framework wasn't well optimized. In this version, we have dug deep into…

Spring Batch 4.2.0.M2 available now!

Releases | May 13, 2019 | ...

I am pleased to announce that Spring Batch 4.2.0.M2 is available now from our milestone repository.

What’s new?

This release adds a new item reader and a new item writer for Apache Kafka:

  • KafkaItemReader can read messages from a single partition or multiple partitions of the same topic. This reader stores message offsets in the ExecutionContext to support restart.
  • KafkaItemWriter uses a KafkaTemplate from the Spring for Apache Kafka project to send messages to a given topic.

I would like to thank Mathieu Ouellet for his amazing contribution in adding support for Apache Kafka in Spring Batch!

Spring Batch 4.2.0.M1 available now

Releases | April 24, 2019 | ...

I am pleased to announce that the first milestone of Spring Batch 4.2 has been released and is available from our milestone repository.

The major feature of this release is the addition of batch metrics with Micrometer.

Batch Metrics with Micrometer

This release introduces a new feature that lets you monitor your batch jobs by using Micrometer. By default, Spring Batch collects metrics (such as job duration, step duration, item read and write throughput, and others) and registers them in Micrometer's global metrics registry under the spring.batch prefix. These metrics can be sent to any monitoring system supported by…

Spring Batch 4.1.1, 4.0.2, and 3.0.10 available now

Releases | January 11, 2019 | ...

We are pleased to announce that Spring Batch 4.1.1, 4.0.2, and 3.0.10 are available from repo.spring.io and Maven Central.

These releases contain security and bug fixes as well as dependencies updates. We recommend users upgrade to one of these versions. Please find the change log for each version in the following links: 4.1.1 | 4.0.2 | 3.0.10

As we announced earlier, please note that v3.0.10 is the last planned release for the 3.x line, so we highly recommend users to upgrade to the latest possible version.

P.S.: We have started work on v4.2, which will focus on performance++ ! Stay tuned!

Project Page | GitHub | Issues | Documentation | Stack Overflow |

Spring Batch 4.1 goes GA!

Releases | October 29, 2018 | ...

I am pleased to announce that Spring Batch 4.1.0.RELEASE is now available.

What's New in Spring Batch 4.1 GA

This release adds the following features:

  • A new @SpringBatchTest annotation to simplify testing batch components
  • A new @EnableBatchIntegration annotation to simplify remote chunking and partitioning configuration
  • Support for reading and writing data in JSON format
  • Support for validating items with the Bean Validation API
  • Support for JSR-305 annotations
  • Enhancements to the FlatFileItemWriterBuilder API

@SpringBatchTest Annotation

Spring Batch provides some nice utility classes (such as the JobLauncherTestUtils and JobRepositoryTestUtils) as well as test execution listeners (StepScopeTestExecutionListener and JobScopeTestExecutionListener) to test batch components. However, in order to use these utilities, you must configure them explicitly. This release introduces a new annotation named @SpringBatchTest

Spring Batch 4.1.0.RC1 is now available

Releases | September 26, 2018 | ...

On behalf of the Spring Batch team, I’m pleased to announce that Spring Batch 4.1.0.RC1 is now available on Github and the Pivotal download repository.

What’s new?

In this release, we worked mainly on making Spring Batch build and run correctly on Java 8, 9, 10 and 11! This release is based on Spring Framework 5.1 GA as well as the latest versions of Spring Integration, Spring AMQP and Spring Data. For a complete list of changes, please refer to the change log.

What’s next?

Our plan is to release Spring Batch 4.1 GA by the end of October right in time for Spring Boot 2.1 GA. The focus will be on making this release candidate as stable as possible so please help us by testing new features and submitting your feedback on JIRA, StackOverflow or Gitter. You can consume Spring Batch 4.1.0.RC1 with Spring Boot 2.1.0.M4

Spring Batch 4.1.0.M3 Released!

Releases | August 31, 2018 | ...

We are pleased to announce that Spring Batch 4.1.0.M3 is now available on Github and the Pivotal download repository. What's new in this milestone? Here is a list of new features and enhancements:

JSR-305 support

The main theme of this milestone is adding support for JSR-305 annotations. We leveraged Spring Framework's Null-safety annotations and added them where appropriate in all public APIs of Spring Batch.

These annotations will not only enforce null-safety when using Spring Batch APIs, but also can be used by IDEs to provide useful information related to nullability. For example, if a user wants to implement the ItemReader interface, any IDE supporting JSR-30…

Get ahead

VMware offers training and certification to turbo-charge your progress.

Learn more

Get support

Tanzu Spring offers support and binaries for OpenJDK™, Spring, and Apache Tomcat® in one simple subscription.

Learn more

Upcoming events

Check out all the upcoming events in the Spring community.

View all