7.5.2
This is a maintenance release focused on improving the stability of the Automatic Failover feature (MultiDbClient). Recommended for any deployment using MultiDbClient / multi-database failover.
- Fixes a connection pool leak in experimental multi-database failover when ping() fails during acquisition. https://github.com/redis/jedis/pull/4546
- CommandObjects refactoring Part 4: Backport deprecations to 7.5.x by @uglide in https://github.com/redis/jedis/pull/4517
8.0.0-beta1
Jedis 8.0.0-beta1 is the first pre-release of the upcoming 8.0 major line. It focused on completing the client class consolidation, modernizing protocol defaults, tightening security defaults, and adding support for new Redis 8.8 commands.
- RESP3 auto-negotiation on by default for all UnifiedJedis-based clients (with graceful RESP2 fallback)
- Final removal of legacy JedisPooled / JedisSentineled classes in favor of the RedisClient family introduced in 7.0.0
- Removal of deprecated UnifiedJedis public constructors
- Internal refactoring that affects users of low-level extension points (custom CommandExecutor, Transaction subclasses, ClusterPipeline, CommandObjects) — protocol and connection wiring is now explicit at construction time
- Search modernization — the low-level cursor APIs are superseded by ftAggregateIterator(), and the manual broadcast API is removed (Redis 8.0+ broadcasts FT.CREATE server-side)
- New Redis 8.8 command coverage — XNACK, JSON.SET FPHA, Array commands, INCREX, COUNT aggregator on ZINTER / ZUNION(STORE) and their *STORE variants, multi-aggregator TS.RANGE / TS.MRANGE, plus an experimental COLLECT parameter for FT.AGGREGATE
- TLS hostname verification enforced by default in DefaultJedisSocketFactory
For step-by-step upgrade instructions, see the v7 → v8 migration guide: https://redis.github.io/jedis/migration-guides/v7-to-v8/
- CommandObjects refactoring : Enforce protocol (#4515, #4514, #4513)
- Bump org.apache.commons:commons-pool2 from 2.12.1 to 2.13.1 (#4409)
- Fix Connection Close Exception Handling for commons-pool2 2.13.1 (#4439)
- Switch to RESP3 as default protocol version (#4468)
- Drop deprecated classes and constructors (#4488)
- Align Search APIs and behaviour with Redis 8.0+ (#4173)
- refactor: decouple Transaction from Jedis (#4440)
- Introduce request & response policy support (#4411)
- Remove unused leftovers from JedisSharding (#4348)
- Add new COLLECT parameter for FT.AGGREGATE (#4534)
- TimeSeries: reduce overhead on single-aggregator TSElement path (follow-up to #4504) (#4537)
- Introduce INCREX command (#4526)
- Support for 'Array' commands (Redis 8.8) (#4532)
- Add new COLLECT parameter for FT.AGGREGATE (#4534)
- Add support for CONFIG GET and SET commands in UnifiedJedis (#4518)
- Add out-of-band push notification handling (#4489)
- Add
COUNTaggregator support forZINTER/ZINTERSTORE/ZUNION/ZUNIONSTORE(Redis 8.8) (#4506) - TimeSeries: support multiple aggregators in TS.RANGE/TS.MRANGE (CAE-792) (#4504)
- Redis 8.8: Add XNACK support (#4494)
- Add support for FPHA argument with JSON.SET (Redis 8.8) (#4478)
- #4469 The connection pool cannot be accessed from the RedisSentinelClient (#4470)
- fix : [ClusterPipeline] ExecutorService/thread is created and destroyed too frequently in ClusterPipeline (#4479)
- Enforce hostname verification by default for TLS connections (#4495)
- fix: validate URI scheme in isValid() to reject non-Redis URIs (#4486)
- Add v7-to-v8 migration guide (#4541)
- Bump org.json:json from 20251224 to 20260522 (#4540)
- test: verify CSC NULL invalidation clears 10k cached entries (CAE-2930) (#4521)
- Bump org.apache.commons:commons-pool2 from 2.12.1 to 2.13.1 (#4409)
- Fix Connection Close Exception Handling for commons-pool2 2.13.1 (#4439)
- Improve CI pipeline stability (#4512)
- Bump com.google.code.gson:gson from 2.13.2 to 2.14.0 (#4507)
- Bump jackson.version from 2.21.2 to 2.21.3 (#4508)
- fix: stabilize flaky failover attempts test (#4482)
- test: fix flaky testPolicy_AllSuccess_StopsOnFirstFailure test (#4503)
- fix: test fail with Redis Search v8.7.90+ (#4502)
- Bump org.apache.httpcomponents.client5:httpclient5-fluent from 5.6 to 5.6.1 (#4492)
- Bump org.junit:junit-bom from 5.14.3 to 5.14.4 (#4501)
- test added for SslOptions.defaults() (#4498)
- Refactor Search tests (#4461)
- Refactor Bloom, JSON and RTS tests (#4462)
- Fix flaky
MultiDbClientfailback test (#4491) - Bump jackson.version from 2.21.1 to 2.21.2 (#4471)
- Extract unit tests into separate workflow (#4472)
- Update javadoc for health check probing delay (#4467)
- Bump snapshot version to 8.0.0 (#4464)
- Add mTLS tests (#4458)
Full Changelog: https://github.com/redis/jedis/compare/v7.5.0...v8.0.0-beta1
We'd like to thank all the contributors who worked on this release!
@Ra9huvansh, @a-TODO-rov, @arpitjain099, @atakavci, @dependabot, @dependabot[bot], @eddieran, @ggivo, @martin-nagy, @stellhub, @tishun and @uglide
7.5.0
This release refines TLS behaviour to enhance security and begins consolidating TLS configuration on SslOptions. The introduction of hostname verification by default significantly improves the safety of TLS connections. For further details, see #4497.
- The legacy
ssl(true)TLS path now enables hostname verification by default (#4497). It now rejects certificates whose SAN/CN does not match the target host, making TLS connections safer. TheSslOptions-based configuration remains unchanged. - Deprecate legacy SSL configuration in favor of
SslOptions(#4497).
@ggivo
Full Changelog: https://github.com/redis/jedis/compare/v7.4.1...v7.5.0
v7.4.1
Jedis 7.4.1 (Patch Release)
*[ClusterPipeline] ExecutorService/thread is created and destroyed too frequently in ClusterPipeline by @ggivo in https://github.com/redis/jedis/pull/4480
Full Changelog: https://github.com/redis/jedis/compare/v7.4.0...v7.4.1
7.4.0
The Jedis 7.4.0 release introduces enhancements to the Client-side geographic failover API, improves transaction support, and deprecates sendCommand() to improve compatibility with the Redis Cluster API.
- Add long index support to ZRangeParams (#4445) (#4446)
- Client-side geographic failover: Add Runtime Weight Management for MultiDbClient Endpoints (#4435)
- fix: Fix out-of-order responses in manual transactions with commands before MULTI (#4441)
- Fix resp2 parsing of LibraryInfo (#4436)
- Client-side geographic failover:
- Make MultiDbConfig.DatabaseConfig.Builder agnostic to call order (#4456)
- Add documentation for "Dynamic Database Management" (#4457)
- Add documentation for dynamic weight management#3678 (#4447)
- Deprecate sendCommand() methods not compatible with OSS Cluster API (#4451)
- Bump jackson.version from 2.21.0 to 2.21.1 (#4453)
- Make integration tests compatible with RE (#4387)
- maintenace: fix hotkeys info test for 8.6.1+ (#4443)
- Bump maven.surefire.version from 3.5.4 to 3.5.5 (#4442)
We'd like to thank all the contributors who worked on this release!
@a-TODO-rov, @atakavci, @dependabot, @dependabot[bot], @ggivo and @uglide
7.3.0
Jedis 7.3.0 introduces support for Redis 8.6, including new commands and features for streams idempotent production, and HOTKEYS.
- [streams] Preserve field insertion order in stream entries (CAE-2341) (#4419)
- [automatic failover] Add support for initialization policy for multidb connection (#4427)
- feat: Add support for FT.HYBRID command (#4342) (#4405)
- feat: Add support for HOTKEYS command (#4421) (#4417)(#4426)
- feat: [TS] Add support for NaN values and new aggregations (#4415)
- Add support for XADD idempotency (at-most-once guarantee) with new IDMPAUTO and IDMP arguments. (#4422) (#4413)
- Add DELEX and DIGEST commands to pipeline interfaces (#4414)
- Add configurable retry delay for Sentinel reconnection (#2864) (#4379)
- RedisClient builder does not use credentials from JedisClientConfig (#4424)
- Calculate maxTotalRetriesDuration from socketTimeout * maxAttempts if not set (#4396)
- Bump org.junit:junit-bom from 5.14.2 to 5.14.3 (#4433)
- Refactor TLS tests (#4431)
- Bump org.apache.httpcomponents.client5:httpclient5-fluent from 5.5.1 to 5.6 (#4380)
- Bump org.apache.maven.plugins:maven-compiler-plugin from 3.14.1 to 3.15.0 (#4418)
- Add 8.6 pre to test matrix (#4410)
- Bump jackson.version from 2.20.1 to 2.21.0 (#4408)
- Add missing command deprecations (#4397)
- Fix flaky cluster tests by accepting either retry limit error (maxAttempts or maxTotalRetriesDuration) (#4399)
- Use endpoint instead of env variable in module tests (#4398)
- Fix flaky AccessControlListCommandsTest (#4394)
- Bump org.sonatype.central:central-publishing-maven-plugin from 0.9.0 to 0.10.0 (#4390)
- Bump org.json:json from 20250517 to 20251224 (#4391)
- Bump org.junit:junit-bom from 5.13.4 to 5.14.2 (#4392)
- Remove hard-coded endpoints from the tests and rely solely on endpoints.json (#4385)
- Fix ClusterTopologyRefreshIT (#4389)
- Bump org.apache.maven.plugins:maven-jar-plugin from 3.4.2 to 3.5.0 (#4383)
- Bump org.apache.maven.plugins:maven-release-plugin from 3.3.0 to 3.3.1 (#4381)
We'd like to thank all the contributors who worked on this release!
@Dgramada, @Peter-Sh, @a-TODO-rov, @atakavci, @dependabot, @dependabot[bot], @ggivo, @uglide and @viktoriya-kutsarova
7.2.0
Jedis 7.2.0 introduces new client classes that simplify client creation while providing builder-based configuration for advanced use cases.
RedisClient- Standalone Redis client (replacesJedisPooledandJedisPool)RedisClusterClient- Redis Cluster client (replacesJedisCluster)RedisSentinelClient- Redis Sentinel client (replacesJedisSentineledandJedisSentinelPool)
- Introduce new client classes (#4355)
- Expose method to add upstream driver libraries to CLIENT SETINFO payload (#4373)
- Fix formatting in toString method of TagField (#4372)
- Add helpers to Jedis pool (#4366)
- Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.11.3 to 3.12.0 (#4378)
- Bump org.sonatype.central:central-publishing-maven-plugin from 0.8.0 to 0.9.0 (#4376)
- Bump org.apache.maven.plugins:maven-release-plugin from 3.1.1 to 3.2.0 (#4359)
- Bump jackson.version from 2.20.0 to 2.20.1 (#4368)
- DOC-5842 modified index/query example to support runnable notebook (#4335)
We'd like to thank all the contributors who worked on this release!
@andy-stark-redis, @dependabot, @dependabot[bot], @ggivo, @oscar-besga-panel, @senocak, @uglide and @viktoriya-kutsarova
7.1.0
Jedis 7.1.0 release adds support for Redis 8.4, including new commands and features
- Add support for CLAIM arg in XREADGROUP (#4344)
- Add MSETEX command support (#4361)
- Add support for CAS/CAD, DELEX, DIGEST commands (#4363)
- Adding a registry that maps command names to their flags (#4332)
- Reduce log level to warn on reconnect in JedisSentinelPool (#4336)
- Fix connection leak in scanIteration with JedisSentineled #4323 (#4328)
- Bump org.jacoco:jacoco-maven-plugin from 0.8.13 to 0.8.14 (#4327)
- Bump org.apache.httpcomponents.client5:httpclient5-fluent from 5.5 to 5.5.1 (#4325)
- Increase timeout for countDownLatch await (#4333)
- docs: Correct builder to use hostAndPort method (#4322)
- docs: document required optional dependency
resilience4j-all(#4321) - Enable code highlighting in the docs (#4319)
We'd like to thank all the contributors who worked on this release!
@ChrisMcD1, @a-TODO-rov, @dependabot, @dependabot[bot], @ggivo and @uglide
7.0.0
Jedis 7.0.0 is a major release that modernizes the API, removes deprecated features, and introduces enhanced failover/failback behavior.
The main focus areas of this release are:
- Automatic Failover and Failback API update - The automatic failover client has been refactored and stabilized.
- Builder pattern introduction - New fluent builders are now available for
JedisPooled,JedisCluster, andJedisSentinel. - Removal of deprecated sharding features -
JedisShardingand related classes have been removed. - Base class consolidation - Pipeline and Transaction base classes have been renamed for consistency.
- API cleanup - Deprecated constructors and methods have been removed to streamline the API.
For detailed migration guidance, refer to Jedis 7.0.0 Migration Guide.
- Add builders for classes based on UnifiedJedis (#4263)
- Automatic Failover and Failback (#4317, #4310, #4308, #4306, #4297, #4228) Jedis 7.0.0 significantly refactors the automatic failover and failback API.
- Removed deprecated constructors, classes, and
JedisSharding(#4311) - Automatic Failover and Failback API changes (#4317, #4310, #4308, #4306, #4297, #4228)
MultiCluster*classes and methods have been renamed and improved.
Users upgrading from v6.x should consult the Automatic Failover and Failback Migration Guide.
More details on breaking changes
- Bump eu.rekawek.toxiproxy:toxiproxy-java from 2.1.7 to 2.1.11 (#4288)
- Bump com.google.code.gson:gson from 2.13.1 to 2.13.2 (#4290)
- Bump org.apache.maven.plugins:maven-compiler-plugin from 3.14.0 to 3.14.1 (#4296)
- [automatic failover] Fix misleading timing information for AA scenario test (#4303)
- Add v6 and v7 migration guides (#4315)
- [automatic failover] Update failover docs (#4314)
- Fix #4147: Broken links at https://redis.github.io/jedis/ (#4285)
- Bump maven.surefire.version from 3.5.3 to 3.5.4 (#4289)
- Fix docs on how to consume snapshots (#4283)
- Bump ch.qos.logback:logback-classic from 1.2.12 to 1.2.13 (#4266)
- Bump jackson.version from 2.19.2 to 2.20.0 (#4265)
- DOC-5076 vector set doc examples (#4281)
We'd like to thank all the contributors who worked on this release!
@SwapnaliY16, @andy-stark-redis, @atakavci, @dependabot, @dependabot[bot], @ggivo and @uglide