JPA Delete Queries and Optimistic Locking: Why Batching Fails

Discovered why JPA deleteAll wasn’t batching: @Version fields force entity loading for optimistic locking. The fix: explicit @Query annotation.

Spring Boot 4 Migration Analysis

A detailed analysis of the major changes in Spring Boot 4, including Jackson 3 migration, Java 17 baseline, and dependency updates.

Getting Observability Right with Spring AI and WebFlux

How I got observability working in my reactive Spring AI app using WebFlux, after hours debugging tracing and context propagation issues.

Why Task Snacking Feels Productive But Holds You Back

Task snacking feels productive but can keep you from meaningful work. Stay aware, balance small tasks with big ones, and make sure progress truly matters

Fixing Tracing Propagation in Spring WebFlux: A One-Line Solution

Upgrading to Spring Boot 3.2 revealed tracing issues in a WebFlux service. A single line of code fixed broken span propagation and improved debugging.

Enhance GitLab Release Notes with Automated Library Changelogs

Learn how to automate GitLab library changelogs for streamlined release notes, improving efficiency and consistency in your development workflow

Modified: November 13, 2024 · Created: September 16, 2024 · João Vieira (JV) · Software Engineering

Navigating a Major Spring Boot Upgrade: Key Takeaways

Learn key insights from upgrading Spring Boot from 2.7 to 3.2. Discover practical tips, challenges faced, and best practices for a smooth transition

Modified: November 13, 2024 · Created: August 27, 2024 · João Vieira (JV) · Software Engineering

Backwards compatible migration for Spring Batch 5 params table

From Spring Batch 4 to 5 there were changes in the rows on BATCH_JOB_EXECUTION_PARAMS we show an approach that makes the migration easy and backward-compatible

Modified: November 13, 2024 · Created: August 19, 2024 · João Vieira (JV) · Software Engineering

90% of distributed traces observability gone after Spring Boot upgrade

After upgrading Spring Boot version to 3.3.1 we notice that 90% of our distributed tracing in our observability tool were gone. In this post we tell the story

Modified: November 13, 2024 · Created: July 17, 2024 · João Vieira (JV) · Software Engineering

How upgrading from Spring Boot 3.2.5 to 3.3.1 broke our object mapper

After upgrading Spring Boot from version 3.2.5 to 3.3.1 we started to have a serialization issue with the Optional class. Check how to fix it in this post

Modified: November 13, 2024 · Created: July 15, 2024 · João Vieira (JV) · Software Engineering