envoyproxy/envoy

Redis cluster never removes hosts that are PENDING_DYNAMIC_REMOVAL

Open

#14 630 ouverte le 11 janv. 2021

Voir sur GitHub
 (2 commentaires) (0 réactions) (0 assignés)C++ (5 373 forks)batch import
area/redisbughelp wanted

Métriques du dépôt

Stars
 (27 997 stars)
Métriques de merge PR
 (Merge moyen 8j) (378 PRs mergées en 30 j)

Description

Description: When a host is removed from a Redis cluster, and health checks are enabled, then the host will remain in PENDING_DYNAMIC_REMOVAL even after it fails health checks.

A test for this bug can be found (commented out) in this commit: https://github.com/envoyproxy/envoy/pull/14483/commits/cc8729f9bcd219bc8f016f21d90f086e63e02b39

It seems likely that this is also true of the strict DNS cluster type too.

Repro steps: Create a Redis cluster with health checks enabled. Remove a host from the cluster in a way that causes the health check to still pass. Check that the host has moved to pending dynamic removal. Fail the health check.

Expected result: The host is removed from the cluster.

Actual result: The host remains in pending dynamic removal state.

Guide contributeur