> I think you need to screen out 4xx at least to prevent client errors
> from marking down your backends.

Seems like those responses never reach that code. Neither 400 nor 401 or
403 had an effect on the worker's error state, it always remained in state
'OK'. I'd like to say it's not an issue but until I know why it behaves
like this I would agree with you. Need to screen them out unless we can be
100% sure not to encounter those status codes at that point.

> Agreed... An "all or nothing" setting will likely create more
> trouble than not.

In my opinion this should not even be configurable, at least not when other
error related response codes lead to having workers set to state 'ERROR'. I
only added this so it could be applied to existing setups without causing
havoc. Ideally this should be part of the code just like the other worker
state changes (some lines above my suggested change). I really don't see
why some errors should cause the worker to display as such while others
don't. This of course includes Eric's reply regarding 4xx codes which
should not have the worker's state be changed.

This patch addresses corner cases (e.g. DNS resolution failure) but in
those cases mod_proxy should not just be silent about it. If such errors
occur let the system know about so it can be fixed / worked around. It
really does not matter whether this is done as directive via the suggested
patch, via failonstatus or some other way as long as it's there.


On Wed, May 8, 2013 at 1:18 AM, Daniel Ruggeri <drugg...@primary.net> wrote:

> On 5/7/2013 2:00 PM, Jim Jagielski wrote:
> > Agreed... An "all or nothing" setting will likely create more
> > trouble than not.
> >
> > On May 7, 2013, at 8:08 AM, Eric Covener <cove...@gmail.com> wrote:
> >
> >> On Tue, May 7, 2013 at 6:24 AM, Thomas Eckert
> >> <thomas.r.w.eck...@gmail.com> wrote:
> >>> Attached patch contains a directive to improve the error marking of
> workers.
> >>> Basically, some errors will cause a worker to be marked as "in error"
> while
> >>> others don't. I can't see a reason for this so I added a directive to
> have
> >>> all errors mark the error correctly - especially useful for automated
> >>> systems using mod_proxy to check if the system is healthy.
> >> I think you need to screen out 4xx at least to prevent client errors
> >> from marking down your backends.
> >>
>
> There is also failonstatus which, granted, could probably be enhanced to
> accept ranges instead of just a list to accommodate this need.
>
> --
> Daniel Ruggeri
>
>

Reply via email to