|
Home > Archive > Perlbal > December 2006 > ClientProxy detection fix
You are viewing an archived Text-only version of the thread.
To view this thread in it's original format and/or if you want to reply to
this thread please [click here]
| Author |
ClientProxy detection fix
|
|
| dormando 2006-10-25, 1:16 pm |
| Yo,
The attached patch has stopped perlbal from crashing on me. It's run
overnight without further issues on my test instance, so I'm rolling it
out to the other 23.
This isn't a real fix... It's more ineffecient and doesn't really fix
the actual problem. I think what needs to happen is ClientHTTPBase.pm's
http_response_close needs to actually undef itself out of an attached
backend if one exists. However, I'm not 100% positive that's a good fix
either, so I'll wait for some feedback if possible 
It might still be possible that the issue's the adopt_base_client not
getting called right in some circumstances, but I'm doubting it...
-Dormando
| |
| Brad Fitzpatrick 2006-12-04, 1:12 am |
|
On Wed, 25 Oct 2006, dormando wrote:
> Yo,
>
> The attached patch has stopped perlbal from crashing on me. It's run
> overnight without further issues on my test instance, so I'm rolling it
> out to the other 23.
>
> This isn't a real fix... It's more ineffecient and doesn't really fix
> the actual problem. I think what needs to happen is ClientHTTPBase.pm's
> http_response_close needs to actually undef itself out of an attached
> backend if one exists. However, I'm not 100% positive that's a good fix
> either, so I'll wait for some feedback if possible 
I just independently arrived at the same conclusion, so I think that _is_
the correct fix.
I think what happens is a request comes in to a service selector, goes to
proxy, then http_response_sent happens, gets blessed back to base, then
backend times out or whatever, and boom.
The hard thing here will be writing a test case for this.
- Brad
| |
| dormando 2006-12-04, 7:12 pm |
|
> I just independently arrived at the same conclusion, so I think that _is_
> the correct fix.
>
> I think what happens is a request comes in to a service selector, goes to
> proxy, then http_response_sent happens, gets blessed back to base, then
> backend times out or whatever, and boom.
>
> The hard thing here will be writing a test case for this.
>
> - Brad
>
Ahhah, I got halfway there! While tracing code that was my hunch of the
bug. I couldn't figure out how to make the code actually *go* that way
though. I'll give it some thought later and ping back if I can think of
a test case, there's another very minor perlbal bug I found that might
be hitting the same path.
-Dormando
|
|
|
|
|