Skip to content

Conversation

@kinyoklion
Copy link
Member

@kinyoklion kinyoklion commented Nov 10, 2025

Next PR for #161

When redis wasn't available during application start it would cause the redis process to crash even in daemon mode.

There are a few factors that contributed to this:

  • We tried to write to redis even in daemon mode. We attempted to pre-create features/segements buckets. We should only read in daemon mode.
  • When we failed to complete any redis operation we would crash the redis storage process.
  • When the redis storage process crashed it didn't restart.

This PR makes adjustments to each of these behaviors.

There is some additional logic for ETS which will trigger a reconnection if there was an attempt at a store update during a store outage. We may want to consider something like this for redis as well. It will not affect daemon mode.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

More lenient supervision strategy.

Copy link
Member Author

@kinyoklion kinyoklion Nov 10, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This one isn't directly part of the initial issue as it applies to the update processor.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Only pre-create buckets when not in daemon mode.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Handle errors from eredis calls. This just logs and doesn't crash the process.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The supervision strategy being updated that is relevant to the original issue.

@kinyoklion
Copy link
Member Author

bugbot review

@kinyoklion kinyoklion marked this pull request as ready for review November 10, 2025 20:55
@kinyoklion kinyoklion requested a review from a team as a code owner November 10, 2025 20:55
@kinyoklion kinyoklion merged commit 9dbe853 into main Nov 12, 2025
6 checks passed
@kinyoklion kinyoklion deleted the rlamb/redis-supervision-write-error-handling branch November 12, 2025 17:11
kinyoklion pushed a commit that referenced this pull request Nov 12, 2025
🤖 I have created a release *beep* *boop*
---


##
[3.8.1](v3.8.0...v3.8.1)
(2025-11-12)


### Bug Fixes

* Handle connection errors during read operations.
([#163](#163))
([5838c2b](5838c2b))
* Handle redis errors during mutations.
([#165](#165))
([9dbe853](9dbe853))
* Prevent uninitialized SDK warning in daemon mode.
([#162](#162))
([0961922](0961922))
* Redact SDK in gen_server descriptions and network errors.
([#166](#166))
([3a4e005](3a4e005))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
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.

3 participants