RepoJournal
Spring

@spring-projects

Spring Framework, Spring Boot, and the JVM enterprise layer

What actually shipped in Spring, written up every day — commits, pull requests, releases, and security advisories.

One email a day. Unsubscribe in one click.

Pick a date

Topics: Java Full archive →

The Wire · Showcase

SPRING AI HARDENS ERROR HANDLING, REDIS VECTORSTORE SHEDS BANDWIDTH BLOAT

By RepoJournal · Filed · About Spring

Spring AI is tightening its security posture on two fronts: MCP server transports now strip exception messages from error responses, while RedisVectorStore cuts network waste by 37 KB per embedding lookup.

The MCP server transport fix [1] closes a gap where exception messages could leak from session initialization, deletion, and response serialization failures. Those tool-level errors still surface normally through the callback pipeline, so legitimate debugging information stays intact; this just hardens the wire protocol. Meanwhile, RedisVectorStore search responses [2] were shipping unused embeddings back to clients on every query, burning roughly 37 KB per result for 3072-dimensional vectors multiplied by topK. The fix removes the embedding field from getReturnFields() and eliminates redundant inline return clauses, cutting unnecessary bandwidth without changing the API surface. On the messaging side, Spring AMQP merged a critical concurrency fix [3] for RabbitAmqpListenerContainer.ConsumerBatch, where releaseInternal() could fire simultaneously from scheduled tasks and batch fulfillment, creating duplicate release calls. The patch adds a lock and a released flag to serialize those operations safely. Spring GraphQL also tightened WebSocket ordering [4] to match the spec: connection_init handling now completes entirely before other messages are processed, eliminating a race condition that could violate protocol sequence guarantees. Spring Boot landed a handful of housekeeping fixes across 4.0.x and 4.1.x branches [5], [6], including servlet-API scope correction for h2-console and support for NestedConfigurationProperty on record accessors.

One email a day. Unsubscribe in one click.

Action items

References

  1. [1] Omit exception messages from error response bodies in the MCP server transports ↗ spring-projects/spring-ai
  2. [2] Omit unused embeddings from RedisVectorStore search responses spring-projects/spring-ai
  3. [3] GH-3529: Fix concurrency in RabbitAmqpListenerContainer.ConsumerBatch ↗ spring-projects/spring-amqp
  4. [4] Defer the setting of connection init flag in WebSocket handlers spring-projects/spring-graphql
  5. [5] Fix servlet-api dependency scope for spring-boot-h2-console spring-projects/spring-boot
  6. [6] Allow NestedConfigurationProperty to be set on a record accessor spring-projects/spring-boot

Quick answers

What shipped in Spring on July 23, 2026?
Spring AI is tightening its security posture on two fronts: MCP server transports now strip exception messages from error responses, while RedisVectorStore cuts network waste by 37 KB per embedding lookup. In total, 10 commits and 2 pull requests landed.
Who contributed to Spring on July 23, 2026?
5 developers shipped this update, including dimitarproynov, Taewoong Kim, artembilan, Brian Clozel, and Stéphane Nicoll.
What were the notable Spring updates?
Omit exception messages from error response bodies in the MCP server transports, Omit unused embeddings from RedisVectorStore search responses, and GH-3529: Fix concurrency in RabbitAmqpListenerContainer.ConsumerBatch.

More from @spring-projects

Daily updates, in your inbox

Follow Spring

What actually shipped in Spring, written up every day — commits, pull requests, releases, and security advisories.

or

One email a day. Unsubscribe in one click. Read a past issue →

Elsewhere on the wire

Want every project, not just this one?