You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by Plüm,
Rüdiger,
VIS <ru...@vodafone.com> on 2006/01/31 11:43:27 UTC
AW: proxy failover/load balance
-----Ursprüngliche Nachricht-----
Von: Robby Pedrica
Gesendet: Montag, 30. Januar 2006 09:27
Betreff: proxy failover/load balance
> wrt information provided by Mladen Turk, Jim Jagielski and Andreas Wieczorek:
>
> I'm having issues when using mod_proxy/mod_proxy_balancer and it appears these have been alluded to on the dev mailing list:
>
> 1. apache 220 doesn't appear to use the status=d value for a balancer member when loading ( status=disabled doesn't work as apache complains about the
This seems to be a bug in set_worker_param of mod_proxy.c. It should exit the for loop once it found a valid thing.
> syntax ); when starting with status=d, apache starts fine but balancer manager still indicates that host you set as disabled in config is actually
> available
This seems to be a bug in init_balancer_members of mod_proxy_balancer.c which seems to overwrite the status of the balancer members with
PROXY_WORKER_INITIALIZED.
> 2. when manually disabling a member in the balancer manager, it comes back online automatically after about a minute or 2
What do you mean with online? Is it enabled again? If yes, this might be related to the bug above as init_balancer_members is called
by child_init which runs in the child_init hook. So I think everytime httpd creates a new child process this gets reseted.
Regards
Rüdiger
Re: AW: proxy failover/load balance
Posted by Jim Jagielski <ji...@jaguNET.com>.
I mean, of course, having status be simple flags +d+s
for example, rather than the whole word. The code looks
to be designed with that in mind.
On Feb 1, 2006, at 8:57 AM, Jim Jagielski wrote:
>
> Why the breaks? Certainly we still want to continue the
> for loop even if we see a valid setting. For example,
> to set a worker in DISABLED and STOPPED mode.
>
> On Jan 31, 2006, at 4:32 PM, Ruediger Pluem wrote:
>>
>> Index: modules/proxy/mod_proxy.c
>> ===================================================================
>> --- modules/proxy/mod_proxy.c (Revision 371134)
>> +++ modules/proxy/mod_proxy.c (Arbeitskopie)
>> @@ -200,18 +200,21 @@
>> worker->status |= PROXY_WORKER_DISABLED;
>> else
>> worker->status &= ~PROXY_WORKER_DISABLED;
>> + break;
>> }
>> else if (*v == 'S' || *v == 's') {
>> if (mode)
>> worker->status |= PROXY_WORKER_STOPPED;
>> else
>> worker->status &= ~PROXY_WORKER_STOPPED;
>> + break;
>> }
>> else if (*v == 'E' || *v == 'e') {
>> if (mode)
>> worker->status |= PROXY_WORKER_IN_ERROR;
>> else
>> worker->status &= ~PROXY_WORKER_IN_ERROR;
>> + break;
>> }
>> else {
>> return "Unknow status parameter option";
>
Re: AW: proxy failover/load balance
Posted by Jim Jagielski <ji...@jaguNET.com>.
Why the breaks? Certainly we still want to continue the
for loop even if we see a valid setting. For example,
to set a worker in DISABLED and STOPPED mode.
On Jan 31, 2006, at 4:32 PM, Ruediger Pluem wrote:
>
> Index: modules/proxy/mod_proxy.c
> ===================================================================
> --- modules/proxy/mod_proxy.c (Revision 371134)
> +++ modules/proxy/mod_proxy.c (Arbeitskopie)
> @@ -200,18 +200,21 @@
> worker->status |= PROXY_WORKER_DISABLED;
> else
> worker->status &= ~PROXY_WORKER_DISABLED;
> + break;
> }
> else if (*v == 'S' || *v == 's') {
> if (mode)
> worker->status |= PROXY_WORKER_STOPPED;
> else
> worker->status &= ~PROXY_WORKER_STOPPED;
> + break;
> }
> else if (*v == 'E' || *v == 'e') {
> if (mode)
> worker->status |= PROXY_WORKER_IN_ERROR;
> else
> worker->status &= ~PROXY_WORKER_IN_ERROR;
> + break;
> }
> else {
> return "Unknow status parameter option";
Re: AW: proxy failover/load balance
Posted by Ruediger Pluem <rp...@apache.org>.
On 01/31/2006 08:13 PM, Robby Pedrica wrote:
> Hi Rudiger
>
> Thanks for the reply:
>
> a. any idea on when a fix will be available or whether there are patches
> available for these items?
> b. Yes, if you manually disable a member in balancer-manager, then it becomes
> enabled ( OK ) after a minute or 2
>
> Regards
>
> Robby
Could you please give the attached patch a try and let me know the results.
Regards
Rüdiger