Skip to content

server: allow memcache health checks to pass - #1287

Open
ajaykr0905 wants to merge 1 commit into
envoyproxy:mainfrom
ajaykr0905:fix/memcache-healthcheck-1284
Open

ajaykr0905 wants to merge 1 commit into
envoyproxy:mainfrom
ajaykr0905:fix/memcache-healthcheck-1284

Conversation

@ajaykr0905

Copy link
Copy Markdown

Summary

 health initialization
-  every backend waits for Redis readiness
+  Redis waits for a confirmed connection
+  memcache treats the nonexistent Redis dependency as ready
  • keep Redis startup health behavior unchanged
  • let memcache-backed servers report healthy without constructing a Redis client
  • cover the configured server's public HTTP health-check response

Fixes #1284.

Evidence

  • Before: go test ./test/server -run '^TestMemcacheServerStartsHealthy$' -count=1 failed with expected: 200, actual: 500.
    After: the regression passed 10 consecutive runs and go test -race ./test/server -count=1 passed.
  • make tests_unit
  • make check_format
  • go vet ./...
  • pre-commit run -a

Merge Danger

Door: Two-way

The change is isolated to initial health state and can be reverted without data migration or configuration changes.

Blast Radius: Readiness

Only BACKEND_TYPE=memcache startup health changes; Redis continues to start unhealthy until its connection is confirmed, and config readiness remains independently enforced.

Assisted-by: OpenAI Codex

Signed-off-by: Ajay Kumar <206070437+ajaykr0905@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.

/healthcheck always returns 500 with BACKEND_TYPE=memcache since #1144 (Redis health component starts unhealthy)

1 participant