Skip to content

fix(redis): load Redis connection beans when Redis is used for queues#992

Merged
mp-orkes merged 2 commits into
conductor-oss:mainfrom
bulgarian-beast:fix/redis-queue-autoconfig
Apr 10, 2026
Merged

fix(redis): load Redis connection beans when Redis is used for queues#992
mp-orkes merged 2 commits into
conductor-oss:mainfrom
bulgarian-beast:fix/redis-queue-autoconfig

Conversation

@bulgarian-beast
Copy link
Copy Markdown
Contributor

Fixes #991

Summary

This fixes a startup regression where Conductor fails to boot when Redis is configured only as the queue backend, such as in the MySQL + Redis Docker Compose setup.

Root cause

Redis connection configuration classes were only activated when conductor.db.type matched a Redis mode, but queue autoconfiguration also requires these beans when conductor.queue.type is set to Redis.

Changes

  • make standalone Redis connection config load for queue usage as well
  • make cluster Redis connection config load for queue usage as well
  • make sentinel Redis connection config load for queue usage as well
  • add a sentinel condition class
  • add a regression test covering queue-only Redis activation

Validation

  • ./gradlew spotlessApply
  • ./gradlew :conductor-redis-configuration:test --tests com.netflix.conductor.redis.config.RedisConnectionConditionTest
  • docker compose -f docker/docker-compose-mysql.yaml up --build -d
  • verified http://localhost:8000/health returns healthy

@v1r3n v1r3n requested a review from mp-orkes April 8, 2026 19:44
Copy link
Copy Markdown
Contributor

@mp-orkes mp-orkes left a comment

Choose a reason for hiding this comment

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

@bulgarian-beast thank you! LGTM. Please rebase on top of main to fix the conflict with RedisSentinelConfiguration.java (caused by #951 landing after your branch point). Once done I'll approve and merge.

@bulgarian-beast bulgarian-beast force-pushed the fix/redis-queue-autoconfig branch from 549201d to 17743b5 Compare April 10, 2026 08:28
@bulgarian-beast
Copy link
Copy Markdown
Contributor Author

Hi @mp-orkes

Rebased on top of main and resolved the RedisSentinelConfiguration.java conflict in 17743b5.

Re-validated with:

  • ./gradlew spotlessApply
  • ./gradlew :conductor-redis-configuration:test --tests com.netflix.conductor.redis.config.RedisConnectionConditionTest
  • docker compose -f docker/docker-compose-mysql.yaml up --build -d
  • verified http://localhost:8000/health returns healthy

Could you please re-review and approve when you have a moment?

Copy link
Copy Markdown
Contributor

@mp-orkes mp-orkes left a comment

Choose a reason for hiding this comment

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

LGTM

@mp-orkes mp-orkes merged commit 665602d into conductor-oss:main Apr 10, 2026
3 checks passed
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.

Conductor fails to start when Redis is configured only as the queue backend

2 participants