envoyproxy/envoy

Redis cluster never removes hosts that are PENDING_DYNAMIC_REMOVAL

Open

#14,630 opened on 2021年1月11日

GitHub で見る
 (2 comments) (0 reactions) (0 assignees)C++ (5,373 forks)batch import
area/redisbughelp wanted

Repository metrics

Stars
 (27,997 stars)
PR merge metrics
 (平均マージ 8d) (30d で 378 merged PRs)

説明

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.

コントリビューターガイド