When you disable a backend, it can still receive requests that are already "stuck" to the backend. Which is fine, that's what I would prefer as well.
However, the comment in svc.c is wrong, around line 572: disable_only == 1: mark as disabled, remove sessions Since it does not remove sessions. In addition, the get_backend call does not do the right thing if all backends are dead or disabled. Because the tot_pri of the service is <=0, it always returns svc->emergency. Which is fine, UNLESS one of the backends is disabled, and a session exists for that connection. In that case, it should return the disabled backend. I moved the svc->tot_pri check to a ternary check around each hash_backend or rand_backend to resolve the issue. See http://users.k12system.com/mrwizard/pound/pound_2.5_disabled_backend_fix.patch.bz2 Joe -- To unsubscribe send an email with subject unsubscribe to [email protected]. Please contact [email protected] for questions.
