github redis/jedis v8.1.0-beta2
8.1.0-beta2

pre-release2 hours ago

Changes

Jedis 8.1.0-beta2 is the second pre-release of the upcoming 8.1.0. It extends Smart Client Handoffs (SCH), introduced for RedisClient in 8.1.0-beta1, to Redis Cluster via RedisClusterClient.

Smart client handoffs is a feature of Redis Cloud and Redis Software that notifies clients about planned maintenance shortly before it happens, so the client can respond gracefully instead of hitting command timeouts and dropped connections. SCH requires RESP3 and is enabled by default on RESP3 connections; see the Jedis SCH guide for configuration options.

  • Standalone (RedisClient): relaxed timeouts and pre-handoffs.
  • Redis Cluster (RedisClusterClient): relaxed timeouts and in-place slot map updates, so migrated slots are re-routed without a topology refresh. See the Redis Cluster section of the guide.

This is a pre-release: APIs introduced here may change before 8.1.0 GA.

🚀 New Features

  • [maintenance events - cluster] Smart Client Handoffs (SCH): maintenance notifications support for cluster client (#4747)
  • Add missing plain overloads for experimental vector-set commands (#4693)
  • JSON.NUMINCRBY add overload method to return number responses (#4758)
  • JSON.ARRPOP add overload method to return raw JSON responses (#4750)
  • Pre-size CommandArguments for collection-built commands (#4737)
  • [maintenance events] Smart Client Handoffs (SCH): maintenance notifications support (#4668)

🐛 Bug Fixes

  • do not cache commands without recorded keys in AbstractCache (#4794)
  • Accept HOTKEYS COUNT below 10 and DURATION 0 (#4804)
  • Scan only primary nodes in scanIteration on cluster (#4798)
  • Iterations on MultiDbClient return their pooled connections (#4800)
  • Unregister the MultiDb health status listener when a database is removed (#4791)
  • Pipeline sync() reports read failures to the caller (#4761)
  • Client-side cache keeps serving an invalidated value when a binary key buffer is reused (#4769)
  • Fail over to a recovered database when the active one is inoperable (#4765)
  • Clear post-authentication hooks properly with pool.destroy (#4749)
  • Keep MultiDbClient health checks alive when failover has no candidate (#4756)
  • Fix equality for GEO responses without coordinates (#4742)
  • Fix user/password split for percent-encoded Redis URI credentials (#4617)
  • Preserve Sentinel listener shutdown during startup (#4739)
  • Fix cluster slot mismatch between String and byte[] keys under non-UTF-8 charsets (#4685) (#4686)
  • Encode infinity arguments with SafeEncoder (#4735)
  • Do not deliver pub/sub push messages as replies outside an active subscription (#4701)
  • Cluster primary node map is not refreshed on slot renewal, so primary-only commands go to demoted nodes after failover (#4692)
  • Accept null VAddParams in vaddFP32 with reduceDim (#4684)
  • Fix TSAddParams emitting DUPLICATE_POLICY twice (#4683)
  • ZRANGESTORE, GEOSEARCHSTORE and EVAL source keys bypass the key pre-processor (#4675)

🧰 Maintenance

  • chore(deps-dev): bump jackson.version from 2.22.3 to 2.22.4 (#4814)
  • chore(deps-dev): bump org.sonatype.central:central-publishing-maven-plugin from 0.11.0 to 0.12.0 (#4796)
  • [maintenance events] Add maintenance-notification scenario tests driven by the fault injector (#4707)
  • chore(deps-dev): bump org.apache.httpcomponents.client5:httpclient5-fluent from 5.6.4 to 5.6.5 (#4786)
  • Document that automatic recovery is not guaranteed after the permanent failure (#4771)
  • Add Redis 8.12 milestone to test matrix (#4757)
  • Stabilize search-on-timeout FAIL tests against worker-thread race (#4721)
  • chore(deps-dev): bump jackson.version from 2.22.2 to 2.22.3 (#4754)
  • Update failover.md and some javadoc (#4745)
  • chore(deps-dev): bump org.codehaus.mojo:build-helper-maven-plugin from 3.6.1 to 3.6.2 (#4744)
  • chore(deps-dev): bump org.codehaus.mojo:exec-maven-plugin from 3.6.3 to 3.6.4 (#4743)
  • chore(deps-dev): bump org.apache.maven.plugins:maven-compiler-plugin from 3.15.0 to 3.16.0 (#4727)
  • chore(deps-dev): bump com.kohlschutter.junixsocket:junixsocket-core from 2.11.0 to 2.11.1 (#4726)
  • Fix flaky sentinel failover test: align replica master host with sentinel monitor (#4730)
  • [scenario tests stability] Pipeline ClusterTopologyRefreshIT verification to fit the test timeout (#4713)
  • chore(deps): bump org.json:json from 20260719 to 20260814 (#4699)
  • chore(deps-dev): bump jackson.version from 2.22.1 to 2.22.2 (#4698)
  • chore(deps-dev): bump org.apache.httpcomponents.client5:httpclient5-fluent from 5.6.3 to 5.6.4 (#4678)
  • Bump redis-authx dependencies 1.0.1-beta2 -> version 0.2.0 (#4712)
  • Stabilize integration tests against auth-required, high-latency environments (#4700)
  • chore(deps-dev): bump com.kohlschutter.junixsocket:junixsocket-core from 2.10.1 to 2.11.0 (#4687)
  • Bump snapshot version to 8.1.0 (#4680)

Contributors

We'd like to thank all the contributors who worked on this release!

@CCCLL, @Dgramada, @HDPark95, @Rainmemery, @RaphaelFakhri, @atakavci, @bobymicroby, @dependabot[bot], @dlwhdgus0810, @ggivo, @insaf021, @jakezwang, @kalayciburak, @kdelay, @kimsanhaa, @uglide and dependabot[bot]

Don't miss a new jedis release

NewReleases is sending notifications on new releases.