Mark Paluch

Mark Paluch

Mark is Software Craftsman, Spring Data Project Lead at Pivotal, and Lead of the Lettuce Redis driver. His focus is now on reactive data integrations and R2DBC.

Recent Blog posts by Mark Paluch

Spring Data Moore RC2, Lovelace SR10, and Ingalls SR23 released

Releases | August 05, 2019 | ...

On behalf of the team, I'm pleased to announce Spring Data releases Moore RC2, Lovelace SR10, and Ingalls SR23. All releases pick up the most recent Spring Framework releases and will be picked up by Spring Boot 2.2 RC1, 2.1.7, and 1.5.22 respectively.

Amongst many dependency upgrades, we migrated almost all of our Spring Data core project to use AssertJ assertions. As per our previous annoucement, Ingalls SR23 is the last release of the Spring Data 1.x line to reach its end of life. We highly recommend migrating to Spring Data Lovelace SR10 for all users who still use Spring Data 1.x.

The…

Reactive Transactions with Spring

Engineering | May 16, 2019 | ...

Back in 2016, our reactive journey started with Spring Framework 5 accompanied by a couple of reactive integrations. Throughout our journey, other projects joined the reactive movement. With R2DBC, we now also provide a reactive integration for SQL databases. With the growth of transaction-capable integrations, we constantly got asked:

Does Spring Framework support Reactive @Transaction?

At the time our journey began, we had no reactive form of transactional integrations, so this question was simple to answer: There’s no need for reactive transaction management.

Over time, MongoDB started to support multi-document transactions with MongoDB Server 4.0. R2DBC (the specification for reactive SQL database drivers) started to emerge, and we decided to pick up on R2DBC with Spring Data R2DBC. Both projects wanted to expose transactional behavior, so they eventually provided inTransaction(…)

Spring Data R2DBC 1.0 M2 and Spring Boot starter released

Releases | May 15, 2019 | ...

Spring Data R2DBC

On behalf of the community and everyone who contributed, I'm delighted to announce the availability of the second milestone of Spring Data R2DBC 1.0. It is based on the recently released Moore M4 release and R2DBC 0.8.0.M8 release. Please note that Spring Data R2DBC is released outside of the Moore release train and it will be part of the next release train Neumann.

Spring Data R2DBC ships with 32 tickets fixed. The most notable features are:

  • Support for MySQL by using jasync-sql.
  • Reactive transaction manager.
  • Fluent API for insert/update/delete operations.
  • Coroutine extensions.
  • Support for custom conversions.
  • Named parameters that are translated to native bind markers by using Dialect instances.
  • Support for single-column projections for simple types.
  • Refactored package structure.

Spring Data Moore M4, Lovelace SR8 and Ingalls SR22 released

Releases | May 14, 2019 | ...

I am pleased to announce the availability of Spring Data releases Moore M4, Lovelace SR8, and Ingalls SR22. Our releases build on the most recent Spring Framework releases and are going to be picked up by Spring Boot 2.2 M3, 2.1.5 and 1.5.21 respectively.

Moore M4 is also a pre-requisite for Spring Data R2DBC 1.0 M2. It ships with 70 tickets fixed. There are a few notable new features amongst these:

  • Support for reactive transaction management for MongoDB
  • Annotation-based Collation support for MongoDB
  • Reactive Index Operations in Elasticsearch and delete by query

Please find a high-level overview of what has been added in our release wiki

Spring Vault 2.1.2.RELEASE available

Releases | February 27, 2019 | ...

On behalf of the community, I’d like to announce the availability of the Spring Vault service release 2.1.2 available from Maven Central.

This release ships with bug fixes and dependency version updates. Spring Vault 2.1.2 is going to be picked up by Spring Cloud Vault 2.1.2 with the Spring Cloud Greenwich SR1 release in the next days.

For a complete list of changes see the changelog.

End of Life for 1.1.x and 2.0.x Lines

With this release cycle, we have stopped backporting changes to the earlier Spring Vault 2.0.x line. The 2.0.x line has already reached its end of life. For the 1.1.x line, we’re going to backport fixes until Aug 1st, 2019, in alignment with Spring Boot 1.5.x and Spring Cloud Edgware

Spring Data Lovelace SR5 released

Releases | February 13, 2019 | ...

On behalf of the Spring Data team, I'd like to announce the availability of the Lovelace SR5 maintenance release. This release ships on top of the just-released Spring Framework 5.1.5. Spring Boot 2.1.3 is going to pick up Lovelace SR5, for your convenience.

The service releases ship with mostly bug fixes and a few dependency upgrades addressing about 40 tickets.

Last but not least, here's the laundry list:

Spring Data Lovelace SR4, Kay SR13, and Ingalls SR18 released

Releases | January 10, 2019 | ...

On behalf of the Spring Data team, I'd like to announce the availability of the Lovelace SR4, Kay SR13, and Ingalls SR18 maintenance releases. Today's releases pick up the latest Spring Framework maintenance releases: 5.1.4, 5.0.12, and 4.3.22, respectively. The upcoming Spring Boot releases (2.1.2, 2.0.8, and 1.5.19) are going to pick up Lovelace SR4, Kay SR13, and Ingalls SR18, for your convenience.

The service releases ship with bug fixes and dependency upgrades and address over 170 tickets in total. You can find the complete list of tickets by following the links below:

Spring Data R2DBC 1.0 M1 released

Releases | December 12, 2018 | ...

It’s my pleasure to announce the first milestone of Spring Data R2DBC. Spring Data R2DBC is Spring's client project for R2DBC. With Spring Data R2DBC you get end to end reactive ad-hoc query execution and Spring Data repositories for relational databases.

Spring Data R2DBC embraces functional-reactive integration of relational databases by providing DatabaseClient as its central abstraction. The following example shows how to bootstrap DatabaseClient without spinning up a Spring context:

PostgresqlConnectionFactory connFactory = new PostgresqlConnectionFactory…

Reactive Programming and Relational Databases

Engineering | December 07, 2018 | ...

Imperative code eats threads at the pace of incoming requests while Software is eating the world. This post discusses the assumptions for reactive programming on the JVM and what this means for integrations – in particular, relational databases.

The motivation to come up with a post is the constant increase in reactive programming adoption while some major building blocks are not yet available – in particular, the question: What about relational databases?

What is Reactive Programming

There are a lot of answers about what Reactive Programming is and how this compares to Reactive Systems. I see Reactive Programming as a programming model that facilitates scalability and stability by creating event-driven non-blocking functional pipelines that react to availability and processability of resources. Deferred execution, concurrency and asynchronicity

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