diff --git a/src/router/registry.go b/src/router/registry.go
index <HASH>..<HASH> 100644
--- a/src/router/registry.go
+++ b/src/router/registry.go
@@ -301,6 +301,7 @@ func (r *Registry) Unregister(m *registryMessage) {
 
 func (r *Registry) pruneStaleDroplets() {
 	if r.isStateStale() {
+		r.resetTracker()
 		return
 	}
 
@@ -318,6 +319,12 @@ func (r *Registry) pruneStaleDroplets() {
 	}
 }
 
+func (r *Registry) resetTracker() {
+	for r.staleTracker.Len() > 0 {
+		r.staleTracker.Delete(r.staleTracker.Front().(*Backend))
+	}
+}
+
 func (r *Registry) PruneStaleDroplets() {
 	r.Lock()
 	defer r.Unlock()
reset stale tracker state when it becomes stale

[#<I>]