You introduce a race between multiple listening threads attempting
to initialize the scoreboard together.  post_config or child_init
should solve the problem, no?

At 03:16 AM 9/10/2004, [EMAIL PROTECTED] wrote:
>mturk       2004/09/10 01:16:26
>
>  Modified:    modules/proxy proxy_balancer.c proxy_util.c mod_proxy.h
>  Log:
>  Move the shared scoreboard data initization to the balancer module.
>  The initialization is done like for the worker, on first request.
>  This is done because during config phase we don't have a scoreboard
>  to allocate from. Thanks to Chritian von Roques for spotting that.
>  
>  @@ -273,6 +343,10 @@
>       if (!(*balancer = ap_proxy_get_balancer(r->pool, conf, *url)))
>           return DECLINED;
>       
>  +    /* Initialize shared scoreboard data */ 
>  +    if (!((*balancer)->status))
>  +        init_runtime_score(conf->pool, *balancer);
>  +
>       /* Step 2: find the session route */
>       
>       runtime = find_session_route(*balancer, r, &route, url);


Reply via email to