What's Changed
This release focuses on improving correctness and stability in time handling and node health management, addressing edge cases that could lead to incorrect date decoding and excessive node backoff under high concurrency.
Bug Fixes
-
64-bit Timestamp Overflow: Fixed an issue where
validStartandexpirationTime(Unix seconds represented as 64-bit values) were incorrectly converted usingLong.toInt(). For timestamps greater than2^32−1seconds (e.g., year 2125), this caused overflow and incorrect decoding (e.g., decoding as 1988).ExchangeRateandExpirationTimenow correctly preserve 64-bit values. #3641 -
Node Health Backoff Race Condition: Fixed a race condition in node health handling where concurrent failures could repeatedly increase backoff and mark a node unhealthy for an excessive duration. Backoff is now only increased when the node is healthy, preventing runaway backoff under high concurrency. #3647
Full Changelog: v2.79.0...v2.80.0