Skip to content

Conversation

@leachdaniel-clark
Copy link

When connecting to a Redis Cluster and enabling the HeartbeatConsistencyChecks this prevents CheckInfoReplication() from ever being called and ConfigCheckSeconds is no longer respected.

This change will do the replication check but adds the RecordConnectionFailed like the TracerProcessor was doing for HeartbeatConsistencyChecks.

I haven't been able to run all the tests locally so I'm not sure if this change breaks anything, but was able to build the package and use it successfully.

The main thing I would be concerned about is if there are scenarios that AutoConfigureProcessor shouldn't parse anything, this would be recorded as a protocol failure.

This should fix the issue mentioned in #2778.

NickCraver added a commit that referenced this pull request Sep 3, 2024
This is an issue identified in ##2778 and #2779 where we're not updating replication topology if heartbeat consistency checks are enabled because we exit the `if` structure early. This still runs that check if it's due in both cases, without changing the behavior of the result processor.
@NickCraver
Copy link
Collaborator

We looked at this in the weekly call - I agree with the issue, but am very hesitant to change the result processor behavior. I've pitched an alternative solution in #2784.

The problem with failing on the result processor is that we get some invalid responses from some servers and proxies that today would fall back to using the configured state, but this would change that situation into looping on connection fails, so I'd rather not shift any on that front :)

NickCraver added a commit that referenced this pull request Sep 3, 2024
…cks (#2784)

* Fix #2778: Run CheckInfoReplication even with HeartbeatConsistencyChecks

This is an issue identified in ##2778 and #2779 where we're not updating replication topology if heartbeat consistency checks are enabled because we exit the `if` structure early. This still runs that check if it's due in both cases, without changing the behavior of the result processor.

* Add release notes
@NickCraver
Copy link
Collaborator

Closing this out as a PR, but will be fixed in a release we're cutting shortly.

Thanks a ton for raising this to our attention, and included you in the release notes on this as well (can remove if you'd rather not, but we're big on credit for things).

Cheers!

@NickCraver NickCraver closed this Sep 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants