RepoJournal
Spring

@spring-projects

Spring Framework, Spring Boot, and the JVM enterprise layer

Keep up with Spring in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.

One email a day. Unsubscribe in one click.

Pick a date

Topics: Java Full archive →

The Wire · Showcase

SPRING-AI PATCHES SILENT PRECISION LOSS IN MILVUS METADATA

By RepoJournal · Filed · About Spring

Spring AI fixed a critical bug where large integer identifiers in Milvus search results were silently truncated to doubles, losing data for any ID exceeding 2^53.

The Milvus vector store was deserializing JSON metadata using Gson's default strategy, which treats all numbers as doubles [1]. This caused precision loss for large integer IDs like external references and counts, potentially corrupting data without warning. The fix switches Gson to preserve integer types, protecting identifiers that exceed double's precision ceiling [1]. Spring AI also documented this numeric behavior in reference docs [2] and extracted the Gson instance to a static field to eliminate repeated instantiation on every search call, cutting allocation overhead [3]. Across the portfolio, Spring Boot merged multiple copyright header corrections and Spring Framework extended annotation discovery to transitive interfaces [4], both foundation-level improvements that shore up edge cases.

One email a day. Unsubscribe in one click.

Action items

References

  1. [1] Fix Milvus metadata integer values returned as Long instead of Double spring-projects/spring-ai
  2. [2] Document Milvus metadata numeric type behavior in reference docs spring-projects/spring-ai
  3. [3] Extract METADATA_GSON as a static field in MilvusVectorStore spring-projects/spring-ai
  4. [4] Find transitive interface annotations in findAllLocalMergedAnnotations() spring-projects/spring-framework

Quick answers

What shipped in Spring on July 1, 2026?
Spring AI fixed a critical bug where large integer identifiers in Milvus search results were silently truncated to doubles, losing data for any ID exceeding 2^53. In total, 11 commits landed.
What were the notable Spring updates?
Fix Milvus metadata integer values returned as Long instead of Double, Document Milvus metadata numeric type behavior in reference docs, and Extract METADATA_GSON as a static field in MilvusVectorStore.

More from @spring-projects

Daily updates, in your inbox

Follow Spring

Keep up with Spring in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.

or

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

Elsewhere on the wire

Want every project, not just this one?

We use privacy-friendly analytics (Google Analytics, IP-anonymized) to see which pages help readers. No ads, and we never sell your data. See our Privacy Policy.