close

Mahmoud Ben Hassine

Mahmoud Ben Hassine

Spring Batch Lead

Lille, France

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!
Blog Posts by Mahmoud Ben Hassine

Spring Batch 5.0.0-M5 is available now!

I am pleased to announce that Spring Batch 5.0.0-M5 is now available from our milestone repository. The main theme of this milestone is improving testing support in Spring Batch. This post walks through the major changes in this area as well as other changes introduced in this milestone release. For the complete list of changes, see the release notes.

Test utilities configuration updates

Up to version 4.3, the JobLauncherTestUtils used to autowire the job under test with the goal of facilitating the test setup. But what if multiple jobs are defined in the test context? And what if no Job beans are defined at all? So while this autowiring was convenient for most cases, it turned out to cause several issues in the aforementioned situations. In this release, and based on community feedback, we have decided to remove the autowiring of any job in JobLauncherTestUtils.

Read more...

Spring Batch 5.0.0-M4 available now!

On behalf of the team and everyone who has contributed, I am pleased to announce that Spring Batch 5.0.0-M4 is now available from our milestone repository.

This fourth milestone introduces several improvements for Java Records support. It also comes with a number of enhancements, bug fixes, dependency upgrades, and documentation updates. For more details about all the changes, see the release notes.

Java Records Support Improvement

The support for Java records as items in a chunk-oriented step was initially introduced in v4.3, but that support was limited, due to the fact that v4 has Java 8 as a baseline. In Java 8, records were not even in preview yet. That initial support was based on reflection tricks to create Java records and populate them with data, without having access to the java.lang.Record API, which was finalized in Java 16.

Read more...

Spring Batch 4.3.6 and 5.0.0-M3 available now

On behalf of the team and everyone who has contributed, I am pleased to announce that Spring Batch 4.3.6 has been released to Maven Central and that Spring Batch 5.0.0-M3 is now available from our milestone repository.

Spring Batch 4.3.6 is a patch release that comes with a number of bug fixes, enhancements, and dependency updates. For more details about the changes, see the change log.

This blog post is more about 5.0.0-M3, which comes with three major features:

  • Native support improvements
  • UTF-8 by default
  • New Maven Bill of Materials
Read more...

Spring Batch 5.0 M2 available now

On behalf of the team and everyone who has contributed, I am pleased to announce that Spring Batch 5.0.0-M2 is now available from our milestone repository.

This second milestone comes with two major features:

  • Introduction of the new Observation API from Micrometer 2.0 which gives you both metrics and tracing for your batch jobs!
  • Addition of SAP HANA as a supported database for the job repository

Moreover, this release comes with a number of enhancements and dependencies updates. For more details about all the changes, please check the change log.

Read more...

Spring Batch 4.3.5 available now

On behalf of the team and everyone who has contributed, I am pleased to announce that Spring Batch 4.3.5 has been released to Maven Central repository. This patch release comes with a number of bug fixes, enhancements and dependency updates. You can find the complete change logs here: 4.3.5.

I would like to thank all contributors who had a role in this release!

Spring Batch Home | Source on Github | Reference Documentation

Read more...

Spring Batch 5.0 M1 released

On behalf of the team and everyone who contributed, I am pleased to announce that the first milestone release of Spring Batch 5.0 is available now from https://repo.spring.io/milestone. This first milestone includes a number of major changes such as requiring Java 17+, migrating to Jakarta EE 9 APIs as well as upgrading our dependencies across the portfolio to major versions such as Spring Framework 6.0. For a complete list of changes, please check the change log.

We also took the opportunity of this major version to remove deprecated APIs and fix some issues that require non backward compatible changes. The migration guide contains more details about these changes and provides the upgrade instructions.

Read more...

Spring Batch 4.2.7 and 4.3.3 are out!

On behalf of the team and everyone who contributed, I am pleased to announce that Spring Batch 4.2.7 and 4.3.3 have been released and are available now from Maven Central repository. These patch releases come with a number of bug fixes, improvements and dependency updates. You can find the complete change logs here: 4.2.7 and 4.3.3.

I would like to thank all contributors who had a role in these releases!

Spring Batch Home | Source on GitHub | Reference Documentation

Read more...

Spring Batch on Kubernetes: Efficient batch processing at scale

Introduction

Batch processing has been a challenging area of computer science since its inception in the early days of punch cards and magnetic tapes. Nowadays, the modern cloud computing era comes with a whole new set of challenges for how to develop and operate batch workload efficiently in a cloud environment. In this blog post, I introduce some of the challenges a batch developer or architect may face when designing and running batch applications at scale and show how Spring Batch, Spring Boot and Kubernetes can tremendously simplify this task.

Read more...