Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Oct 19, 2025

This PR contains the following updates:

Package Change Age Confidence
github.com/redis/go-redis/v9 v9.14.0v9.17.3 age confidence

Release Notes

redis/go-redis (github.com/redis/go-redis/v9)

v9.17.3: 9.17.3

Compare Source

🐛 Bug Fixes

  • Connection Pool: Fixed zombie wantConn elements accumulation in wantConnQueue that could cause resource leaks in high concurrency scenarios with dial failures (#​3680) by @​cyningsun
  • Stream Commands: Fixed XADD and XTRIM commands to use exact threshold (=) when Approx is false, ensuring precise stream trimming behavior (#​3684) by @​ndyakov
  • Connection Pool: Added ConnMaxLifetimeJitter configuration to distribute connection expiration times and prevent the thundering herd problem when many connections expire simultaneously (#​3666) by @​cyningsun
  • Client Options: Added DialerRetries and DialerRetryTimeout fields to ClusterOptions, RingOptions, and FailoverOptions to allow configuring connection retry behavior for cluster, ring, and sentinel clients (#​3686) by @​naveenchander30

Contributors

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

@​cyningsun, @​naveenchander30, and @​ndyakov


Full Changelog: redis/go-redis@v9.17.2...v9.17.3

v9.17.2: 9.17.2

Compare Source

🐛 Bug Fixes

  • Connection Pool: Fixed critical race condition in turn management that could cause connection leaks when dial goroutines complete after request timeout (#​3626) by @​cyningsun
  • Context Timeout: Improved context timeout calculation to use minimum of remaining time and DialTimeout, preventing goroutines from waiting longer than necessary (#​3626) by @​cyningsun

🧰 Maintenance

  • chore(deps): bump rojopolis/spellcheck-github-actions from 0.54.0 to 0.55.0 (#​3627)

Contributors

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

@​cyningsun and @​ndyakov

v9.17.1: 9.17.1

Compare Source

🐛 Bug Fixes

🧰 Maintenance

  • chore(deps): bump golangci/golangci-lint-action from 9.0.0 to 9.1.0 (#​3609)
  • chore(deps): bump actions/checkout from 5 to 6 (#​3610)
  • chore(script): fix help call in tag.sh (#​3606) by @​ndyakov

Contributors

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

@​marcoferrer and @​ndyakov

v9.17.0: 9.17.0

Compare Source

🚀 Highlights

Redis 8.4 Support

Added support for Redis 8.4, including new commands and features (#​3572)

Typed Errors

Introduced typed errors for better error handling using errors.As instead of string checks. Errors can now be wrapped and set to commands in hooks without breaking library functionality (#​3602)

New Commands
  • CAS/CAD Commands: Added support for Compare-And-Set/Compare-And-Delete operations with conditional matching (IFEQ, IFNE, IFDEQ, IFDNE) (#​3583, #​3595)
  • MSETEX: Atomically set multiple key-value pairs with expiration options and conditional modes (#​3580)
  • XReadGroup CLAIM: Consume both incoming and idle pending entries from streams in a single call (#​3578)
  • ACL Commands: Added ACLGenPass, ACLUsers, and ACLWhoAmI (#​3576)
  • SLOWLOG Commands: Added SLOWLOG LEN and SLOWLOG RESET (#​3585)
  • LATENCY Commands: Added LATENCY LATEST and LATENCY RESET (#​3584)
Search & Vector Improvements
  • Hybrid Search: Added EXPERIMENTAL support for the new FT.HYBRID command (#​3573)
  • Vector Range: Added VRANGE command for vector sets (#​3543)
  • FT.INFO Enhancements: Added vector-specific attributes in FT.INFO response (#​3596)
Connection Pool Improvements
  • Improved Connection Success Rate: Implemented FIFO queue-based fairness and context pattern for connection creation to prevent premature cancellation under high concurrency (#​3518)
  • Connection State Machine: Resolved race conditions and improved pool performance with proper state tracking (#​3559)
  • Pool Performance: Significant performance improvements with faster semaphores, lockless hook manager, and reduced allocations (47-67% faster Get/Put operations) (#​3565)
Metrics & Observability
  • Canceled Metric Attribute: Added 'canceled' metrics attribute to distinguish context cancellation errors from other errors (#​3566)

✨ New Features

🐛 Bug Fixes

⚡ Performance

  • Connection state machine with race condition fixes (#​3559) by @​ndyakov
  • Pool performance improvements: 47-67% faster Get/Put, 33% less memory, 50% fewer allocations (#​3565) by @​ndyakov

🧪 Testing & Infrastructure

👥 Contributors

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

@​12ya, @​ajax16384, @​cxljs, @​cyningsun, @​destinyoooo, @​dragneelfps, @​htemelski-redis, @​manisharma, @​ndyakov, @​ofekshenawa, @​pvragov


Full Changelog: redis/go-redis@v9.16.0...v9.17.0

v9.16.0: 9.16.0

Compare Source

🚀 Highlights

Maintenance Notifications Support

This release introduces comprehensive support for Redis maintenance notifications, enabling applications to handle server maintenance events gracefully. The new maintnotifications package provides:

  • RESP3 Push Notifications: Full support for Redis RESP3 protocol push notifications
  • Connection Handoff: Automatic connection migration during server maintenance with configurable retry policies and circuit breakers
  • Graceful Degradation: Configurable timeout relaxation during maintenance windows to prevent false failures
  • Event-Driven Architecture: Background workers with on-demand scaling for efficient handoff processing

For detailed usage examples and configuration options, see the maintenance notifications documentation.

✨ New Features

  • Trace Filtering: Add support for filtering traces for specific commands, including pipeline operations and dial operations (#​3519, #​3550)
    • New TraceCmdFilter option to selectively trace commands
    • Reduces overhead by excluding high-frequency or low-value commands from traces

🐛 Bug Fixes

  • Pipeline Error Handling: Fix issue where pipeline repeatedly sets the same error (#​3525)
  • Connection Pool: Ensure re-authentication does not interfere with connection handoff operations (#​3547)

🔧 Improvements

  • Hash Commands: Update hash command implementations (#​3523)
  • OpenTelemetry: Use metric.WithAttributeSet to avoid unnecessary attribute copying in redisotel (#​3552)

📚 Documentation

  • Cluster Client: Add explanation for why MaxRetries is disabled for ClusterClient (#​3551)

🧪 Testing & Infrastructure

  • E2E Testing: Upgrade E2E testing framework with improved reliability and coverage (#​3541)
  • Release Process: Improved resiliency of the release process (#​3530)

📦 Dependencies

  • Bump rojopolis/spellcheck-github-actions from 0.51.0 to 0.52.0 (#​3520)
  • Bump github/codeql-action from 3 to 4 (#​3544)

👥 Contributors

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

@​ndyakov, @​htemelski-redis, @​Sovietaced, @​Udhayarajan, @​boekkooi-impossiblecloud, @​Pika-Gopher, @​cxljs, @​huiyifyj, @​omid-h70


Full Changelog: redis/go-redis@v9.14.0...v9.16.0

v9.15.1: Retract v9.15.0 and v9.15.1

v9.14.1: 9.14.1

Compare Source

Changes

  • fix(otel): Add support for filtering traces for certain commands (#​3519)
  • fix(pool): remove conn from idleConns if present (#​3546)

Contributors

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

@​Sovietaced, @​ndyakov


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot force-pushed the renovate/go-modules branch from 16daf7c to 6bf6e6b Compare October 23, 2025 18:23
@renovate renovate bot changed the title fix(deps): update module github.com/redis/go-redis/v9 to v9.14.1 fix(deps): update module github.com/redis/go-redis/v9 to v9.16.0 Oct 23, 2025
@renovate renovate bot force-pushed the renovate/go-modules branch from 6bf6e6b to 4ae9961 Compare November 19, 2025 18:26
@renovate renovate bot changed the title fix(deps): update module github.com/redis/go-redis/v9 to v9.16.0 fix(deps): update module github.com/redis/go-redis/v9 to v9.17.0 Nov 19, 2025
@renovate renovate bot force-pushed the renovate/go-modules branch from 4ae9961 to 398f849 Compare November 26, 2025 12:40
@renovate renovate bot changed the title fix(deps): update module github.com/redis/go-redis/v9 to v9.17.0 fix(deps): update module github.com/redis/go-redis/v9 to v9.17.1 Nov 26, 2025
@renovate renovate bot force-pushed the renovate/go-modules branch from 398f849 to 7674011 Compare December 1, 2025 19:53
@renovate renovate bot changed the title fix(deps): update module github.com/redis/go-redis/v9 to v9.17.1 fix(deps): update module github.com/redis/go-redis/v9 to v9.17.2 Dec 1, 2025
@renovate renovate bot force-pushed the renovate/go-modules branch from 7674011 to 50f3e05 Compare January 25, 2026 14:02
@renovate renovate bot changed the title fix(deps): update module github.com/redis/go-redis/v9 to v9.17.2 fix(deps): update module github.com/redis/go-redis/v9 to v9.17.3 Jan 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants