proxy.pac failover does not work, if proxy computer is unreachable

RESOLVED FIXED

Status

()

Core
Networking
--
major
RESOLVED FIXED
14 years ago
14 years ago

People

(Reporter: Martin Cheatle, Assigned: Darin Fisher)

Tracking

({helpwanted})

Trunk
helpwanted
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(4 attachments)

(Reporter)

Description

14 years ago
User-Agent:       Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4.2) Gecko/20040220
Build Identifier: Mozilla 1.4.2 & Firefox0.8

In solris 8/9 either mozilla any rev up to 1.4.2 or firefox 0.8, proxy.pac with
failover proxy settings does not fallover if the server has disappeared of the
network. if the server is running but the proxy daemon is stoped the browser
will fallover. the browser keeps trying to connect to the first proxy in the
list during the first scenario.

Reproducible: Always
Steps to Reproduce:
1.New build of solris 8/9
2.latest recomended patch bundle
3.any chose of broswer from above
4.2 proxy squid proxy servers
5.proxy.pac file with output of "PROXY proxy1:3128; PROXY proxy2:3128"
6.remove the network cable for proxy1 browser continues to use proxy1
7.stop the daemon on proxy1 network cable in. browser failsover happily.
(Assignee)

Comment 1

14 years ago
Hi Martin,

Can you please post a Mozilla HTTP log using the steps described here:

http://www.mozilla.org/projects/netlib/http/http-debugging.html

Thanks!

Looks like part of this bug might depend on bug 224237.
Depends on: 224237
(Reporter)

Comment 2

14 years ago
Created attachment 150414 [details]
firefox proxy server down log file as requested

Mozilla/5.0 (X11; U; SunOS sun4u; en-US; rv:1.6) Gecko/20040214 Firefox/0.8
(Reporter)

Comment 3

14 years ago
Created attachment 150415 [details]
Firefox proxy service stoped on server log file as requested

Mozilla/5.0 (X11; U; SunOS sun4u; en-US; rv:1.6) Gecko/20040214 Firefox/0.8
(Reporter)

Comment 4

14 years ago
This problem only affects the browsers on the Solaris OS 8/9 sparc, Linux works
perfectly OK.
I have not tried this under Solaris 8/9 x86.
the browser I used for the log files above is
Mozilla/5.0 (X11; U; SunOS sun4u; en-US; rv:1.6) Gecko/20040214 Firefox/0.8
though this does happen in any of the mozilla bred upto 1.4.2 I don't know about
latter editions because I have not downloaded them yet for the Solaris/SPARC
enviroment.

Comment 5

14 years ago
I can reproduce this in Windows ME, in Mozilla 1.6 and Mozilla 1.7. I can not
reproduce this in Linux x86 with Mozilla Debian Package 1.6-7.
(Assignee)

Updated

14 years ago
Keywords: helpwanted
[Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.8a1) Gecko/20040520] (W98SE)

Confirmed:
{{
return "PROXY localhost:8181; DIRECT"; // Go direct :-)
return "PROXY 1.1.1.1:8080; DIRECT"; // "Failed to load" :-(
}}

'All' OS: actually, Windows and Solaris, but not Linux...
Mozilla and FireFox: common/core component involved !?

I didn't try to look at the (requested) attached logs so far.

Darin:
Is it enough to wait for bug 224237 for now ?
Or do you think of a possible cumulative issue here ? (Which one ?)
Status: UNCONFIRMED → NEW
Ever confirmed: true
OS: other → All
Hardware: Other → All
(Assignee)

Comment 7

14 years ago
> return "PROXY 1.1.1.1:8080; DIRECT";

That should work.  Can you provide a HTTP log so we can see what's going on in
that case?  There might be additional bugs.  Logging instructions are here:

http://www.mozilla.org/projects/netlib/http/http-debugging.html
Created attachment 151737 [details]
Mv18a1_nsHttp:5_WorkingCase
Created attachment 151738 [details]
Mv18a1_nsHttp:5_FailingCase

I noticed |nsHttpChannel::ProxyFailover| seems to be missing here: is that a
hint !?
(In reply to comment #7)
> That should work.  Can you provide a HTTP log so we can see what's going on in
> that case?  There might be additional bugs.

[Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.8a1) Gecko/20040520] (release) (W98SE)

Done.
Tell me if you need more data.
Summary: proxy.pac failover does not work → proxy.pac failover does not work, if proxy computer is unreachable
(Assignee)

Comment 11

14 years ago
Ok, the problem is that we are getting the error NS_ERROR_NET_TIMEOUT, and we do
not treat that as a reason to failover to the next proxy server.  We currently
only failover if we receive NS_ERROR_PROXY_CONNECTION_REFUSED or
NS_ERROR_UNKNOWN_PROXY_HOST.

This shouldn't be very difficult to fix.  See nsHttpChannel::OnStartRequest
where ProxyFailover is called.

We should probably combine the patch for this bug with the patch for bug 224237.
fixed by bug 224237 (last part of attachment 152146 [details] [diff] [review])
Status: NEW → RESOLVED
Last Resolved: 14 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.