build(deps): bump StackExchange.Redis from 3.2.1 to 3.3.0 - #194
Open
cosmin-staicu wants to merge 1 commit into
Open
cosmin-staicu wants to merge 1 commit into
cosmin-staicu wants to merge 1 commit into
Conversation
cosmin-staicu
requested review from
alinahornet,
cosminvlad,
litheon,
lucianaparaschivei and
razvalex
as code owners
September 19, 2026 09:06
2 tasks
2 tasks
There was a problem hiding this comment.
Copilot review overview
🟢 Approval recommended
The only noted issue is a minor changelog clarification.
Review effort: Lite
Findings: None
What changed in this PR
Updates StackExchange.Redis from 3.2.1 to 3.3.0 and removes an obsolete warning suppression.
Changes:
- Bumps the centrally managed Redis dependency.
- Removes the local
SER007suppression. - Documents upgrade impacts and verification.
| File | Description |
|---|---|
Directory.Packages.props |
Updates StackExchange.Redis to 3.3.0. |
tests/UiPath.Caching.Tests/Broadcast/RedisStreamSubjectWriterTests.cs |
Removes the obsolete SER007 suppression. |
CHANGELOG.md |
Records the dependency upgrade and related upstream changes. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
cosmin-staicu
force-pushed
the
chore/stackexchange-redis-3.3.0
branch
from
September 20, 2026 05:14
60fa6ec to
7620908
Compare
cosmin-staicu
force-pushed
the
fix/stream-maintainer-scan-all-shards
branch
from
September 20, 2026 13:53
07c37fe to
3992a5c
Compare
cosmin-staicu
force-pushed
the
chore/stackexchange-redis-3.3.0
branch
3 times, most recently
from
September 21, 2026 05:23
b396451 to
c53cdeb
Compare
cosmin-staicu
force-pushed
the
fix/stream-maintainer-scan-all-shards
branch
from
September 21, 2026 05:23
704b000 to
545a7f5
Compare
robert-mihaiAdam
approved these changes
Sep 21, 2026
The range covers 3.2.15 and 3.3.0. This repository calls no API either release altered, and the full suite passes on both target frameworks against a live server. Three items in the range are still worth writing down. SwitchPrimary retires the servers its rebuild drops (upstream #3225). Before that, a dropped node stayed in the server snapshot -- connected, selectable -- and the snapshot is what GetServers() reports, so on a Sentinel-managed connection IRedisConnector.GetPrimaries() could hand the stream maintainer a node that had left the service, and occasionally hand it the same address twice. IServer.Execute now supplies the configured default database instead of refusing a database-specific command (upstream #3237). The maintainer passes the database explicitly, so it neither leans on this nor breaks on the versions before it. Server-native maintenance notifications arrive as opt-in, and stay off here. RedisPlannedMaintenance is driven from ServerMaintenanceEvent/AzureMaintenanceEvent in this repository, which is unchanged, and switching to the native path is a behavioural decision rather than part of a version bump. Also drops the SER007 suppression in RedisStreamSubjectWriterTests: RedisErrorKind lost its [Experimental] marking in 3.3.0, so the pragma was silencing a diagnostic nothing raises any more. Signed-off-by: Cosmin Staicu <cosmin.staicu@uipath.com>
cosmin-staicu
force-pushed
the
fix/stream-maintainer-scan-all-shards
branch
from
September 21, 2026 19:36
545a7f5 to
61472a0
Compare
cosmin-staicu
force-pushed
the
chore/stackexchange-redis-3.3.0
branch
from
September 21, 2026 19:38
c53cdeb to
c6aad67
Compare
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Stacked on #193 — merge that first. This PR's base is its branch, so the diff shown here is the bump alone.
Summary
StackExchange.Redis3.2.1 → 3.3.0, which brings 3.2.15 along with it. This repository calls no API either release altered, and the full suite passes on both target frameworks against a live server.Dependabot proposed 3.2.1 (#192, merged); 3.3.0 landed on 2026-09-18, after that PR was opened.
What is in the range, and whether it reaches us
SwitchPrimaryretires the servers its rebuild dropsIServer.Executesupplies the default databaseRedisValue.EqualityComparerRedisValueRedisConnectionException#3225 is the one that touches our code. A dropped node used to stay in the server snapshot — connected and selectable — and
IConnectionMultiplexer.GetServers()reports that snapshot (ConnectionMultiplexer.cs:1608).RedisConnector.GetPrimaries()filters on!IsReplica && IsConnected, which a stale-but-connected primary passes. So on a Sentinel-managed connection the stream maintainer could be handed a node that had left the service, and per the upstream description occasionally the same address twice. Fixed upstream; our de-duplication already handled the second half.#3237 is upstream's fix for the bug corrected in #193 —
IServer.Executeno longer refuses a database-specific command. The maintainer passes the database explicitly, so it neither depends on this nor regresses on earlier versions. Probed on 3.1.31, 3.2.1, 3.2.15 and 3.3.0.Also
Drops the
SER007suppression inRedisStreamSubjectWriterTests—RedisErrorKindlost its[Experimental]marking in 3.3.0, so the pragma was silencing a diagnostic nothing raises any more. Confirmed by reflecting over both assemblies.Verification
RedisConnector.GetMasterPhysicalConnectionMetricsreflects into (RedisServer.server,ServerEndPoint.interactive,PhysicalBridge.physical,PhysicalConnection.lastWriteTickCount/_writeStatus/lastReadTickCount/_readStatus,GetSentAwaitingResponseCount) — all still resolve on 3.3.0. Green CI would not have caught a break here: that method is[ExcludeFromCodeCoverage]and only runs against a live multiplexer.IServer.ClusterConfigurationstill returns a fresh instance per refresh, so theReferenceEqualscontractRefreshClusterMembershipAsyncdepends on holds.Contributor declaration
git commit -s).