Commit Graph

360 Commits

Author SHA1 Message Date
Patrick McManus
dd0c0a9a27 Bug 613977 - Intermittent invalid certificate error prompt (partial) r=honzab a=blocking-beta9
Bug 614677 - Connection is reset message appears intermittently
Bug 614950 - Connections stall occasionally after 592284 landed

A couple of follow-on changes to 592284 rolled together to prevent
diff conflicts

1] Set the securitycallback information for unused speculative
connections in the connection manager to be the new cloned connection
rather than the one they originated on. (613977)

2] When adding unused speculative connections to the connection
manager, due so with a short timeout (<= 5 seconds) as some servers
get grumpy if they haven't seen a request in that time. Most will
close the connection, but some will just sit there quietly and RST
things when the connection is used - so if you don't use the
connection quickly don't use it at all. This is probably a L4 load
balancer issue, actually. Mozillazine illustrates the
problem. Connections are made in bursts anyhow, so the reuse optimization is
likely still quite useful. (614677 and 614950)

3] mark every connection in the connection manager persistent
conneciton pool as "reused". This allows the transaction to be
restarted if a RST is recvd upon sending the requests (see #2) - with
the conservative timeout this is now a rare event, but still possible
so recovery is the right thing to do. (614677 and 614950)

4] obtain an nshttpconnection object from the connection manager,
subject to the max connection constraints, at the same time as
starting the backup conneciton. If we defer that until recycling time
the exceeded limits of the SocketService can cause problems for other
connections.

also re-enables the syn retry feature by default.

r+ honzab
2010-12-16 08:50:36 -05:00
Boris Zbarsky
f1fcc1b6fd Bug 616591 followup to fix a comment., a=DONTBUILD 2010-12-08 21:01:17 -05:00
Honza Bambas
46efa72797 Bug 616591. Fix crash due to http transactions trying to get connection info from the http pipeline while it's being closed. r=bzbarsky, a=blocker 2010-12-08 20:57:14 -05:00
Ehsan Akhgari
92d0d78683 Bug 616591 - Firefox 4.0b8pre crash in [@ nsHttpPipeline::GetConnectionInfo(nsHttpConnectionInfo**]; r=bzbarsky a=blocking-beta8+ 2010-12-04 04:21:03 -05:00
Ehsan Akhgari
c204727f4a Bug 614286 followup - Reorder the constructor initializer list to prevent compiler warnings
--HG--
extra : rebase_source : 3ab3d1371f8d8b396e665cffb5c57dc96a7187f3
2010-12-03 09:56:13 -05:00
Michal Novotny
c61b9b37d9 bug 363109 - body of HTTP 304 response is treated as a HTTP/0.9 response to subsequent HTTP request. r=biesi, sr=bz, a=blocker 2010-12-01 02:02:52 +02:00
Ehsan Akhgari
65d254c5c6 Bug 614286 - Don't initialize the socket transport service unless we know that we're online; r=bzbarsky a=blocking-beta8+ 2010-11-25 00:20:11 -05:00
Ehsan Akhgari
fd067b7b7d Backed out changeset 630b08a7fe63 because of xpcshell test failures 2010-11-30 13:57:24 -05:00
Ehsan Akhgari
932c374a07 Bug 614286 - Don't initialize the socket transport service unless we know that we're online; r=bzbarsky a=blocking-beta8+ 2010-11-25 00:20:11 -05:00
Christian Biesinger
5f1420c073 Backed out changeset dd249f45dc3d
Clearly I don't know hg well enough, didn't mean to commit all this. a=I-messed-up
2010-11-29 15:34:30 -08:00
Christian Biesinger
1c2cfa92d1 Bug 614717 Make test_bug369787.js not hang when the test fails by ensuring
that do_test_finished is called even when an exception is thrown.
Also make the test work in the presence of PAC, where the channel changes
between asyncOpen and onStartRequest.

r=bz a=test-only
2010-11-29 15:28:40 -08:00
bjarne@runitsoft.com
11cc4ac3c8 Bug 468426 - improved support for "Vary: Cookie"-headers , r=biesi a=bsmedberg 2010-11-26 12:13:37 -05:00
Benjamin Smedberg
7a8f43edcd Bug 614229 - nsHttpHandler getting the private-browsing service can cause recursive initialization of layout, and I suspect can cause incorrect behavior in Firefox because we may end up creating HTTP URIs before we're finished with XPCOM registration, r=honza+ehsan a=blocking bug 581335 which blocks Fennec b3 2010-11-24 08:58:42 -05:00
Honza Bambas
4b0ec7f1c3 Bug 591707 - e10s: handle redirects from HTTP to a different protocol, r=jduell, a=blocking-fennec2.0b3+ 2010-11-23 23:56:06 +01:00
Michal Novotny
941be03f10 bug 599127 - Wyciwyg channel writes end up doing synchronous disk IO. r=jduell, a=betaN 2010-11-23 14:01:30 +02:00
Patrick McManus
b46439ff28 Bug 592284 - Accelerate TCP connection retries in HTTP. r=honzab a=blocking2.0
Losing a TCP SYN requires a long painful (typically 3 second) delay
before being retried. This patch creates a second parallel connection
attempt for any nsHttpConnection which has not become writable before
a timeout occurs.

If you assume .5% packet loss, this converts a full 3 second delay
from a 1 in 200 event into a 1 in 40,000 event.

Whichever connection establishes itself first is used. If another one
has been started and it does connect before the one being used is
closed then the extra one is handed to the connection manager for use
by a different transaction - essentially a persistent connection with
0 previous transactions on it. (Another way to think about is
pre-fetching a 3WHS on a high latency connection).

The pref network.http.connection-retry-timeout controls the amount of
time in ms to wait for success on the initial connection before beginning
the second one. Setting it to 0 disables the parallel connection, the
default is 250.
2010-11-21 09:50:36 +01:00
Michael Wu
30098037eb Backed out changeset 090046fc6891 bug 482935 due to a=orange 2010-11-10 19:29:51 -08:00
bjarne@runitsoft.com
b9e7d659bd Bug 482935 - Cancel() from OnStopRequest should not cause cache entry to be doomed;
(Av1f) Allow content to be cached if it was loaded successfully.
r=(dwitte, jduell) a2.0=benjamin.
2010-11-11 01:02:15 +01:00
Ehsan Akhgari
056fc8aba7 Backed out changeset c85c2f1b0566 because of oranges on mochitest-1 2010-11-10 17:46:32 -05:00
bjarne@runitsoft.com
c6a0351901 Bug 482935 - Cancel() from OnStopRequest should not cause cache entry to be doomed;
(Av1e) Allow content to be cached if it was loaded successfully.
r=(dwitte, jduell) a2.0=benjamin.
2010-11-10 22:28:54 +01:00
Mark Finkle
275d1802e2 Bug 608258 - Crash at visiting AMO [r=jdm a=blocking-fennecb2] 2010-10-29 11:38:26 -04:00
Kai Engert
d15be2e952 Bug 566478 - Invalid SSL cert error is not mobile-friendly [r=mayhemer a=blocking-fennecb2] 2010-10-28 11:46:00 -04:00
Patrick McManus
eff9996630 Bug 606719 - Browser stalls with connections left hanging in TCP close wait state. Part 2: fix it. r=dwitte, a=b7+ 2010-10-28 10:10:03 -07:00
Mark Finkle
e0a3cc5dd7 Backout bug 566478 due to test orange a=orangehurts 2010-10-28 12:17:01 -04:00
Honza Bambas
1d9f2bbd55 Bug 566478 - Invalid SSL cert error is not mobile-friendly [r=kaie a=blocking-fennecb2] 2010-10-27 14:35:00 -04:00
Honza Bambas
4d88c7dff6 Bug 597374 - Downloading of a file from a password protected directory fails, r=dolske, sr=bzbarsky, a=blocking2.0:betaN+ 2010-10-25 18:47:23 +02:00
Mark Banner
44f357ae3f Fix non-IPC bustage from bug 536289. Patch as agreed with jdm over irc. a=bustage-fix. 2010-10-21 22:01:38 +01:00
Alon Zakai
19b1465aaf Bug 536289 - Part 2: Make FTP work for fennec. r=jduell a=blocking-fennec 2010-08-10 14:47:00 -04:00
Josh Matthews
cfd2d775ff Bug 536289 - Part 1: Move IPC::InputStream to a more general location. r=jduell a=blocking-fennec 2010-10-14 14:21:48 -04:00
Jae-Seong Lee-Russo
6c6ab6aa0e Bug 564553 - e10s HTTP: Serialize nsInputStreams to support large file uploads. r=dwitte, a=blocking-fennec2.0b2+ 2010-10-21 11:36:13 -07:00
Honza Bambas
e618ce3cbb Bug 536295 - e10s HTTP: offline application cache, r=dwitte, sr=cbiesinger, a=fennec-2.0b2+
--HG--
rename : uriloader/prefetch/nsOfflineCacheUpdate.cpp => uriloader/prefetch/OfflineCacheUpdateChild.cpp
rename : uriloader/prefetch/nsOfflineCacheUpdate.cpp => uriloader/prefetch/nsOfflineCacheUpdateService.cpp
2010-10-20 19:12:32 +02:00
Dan Witte
353424c48f Bounce input stream and FTP patches for Windows test failure. a=bustage 2010-10-19 19:46:54 -07:00
Alon Zakai
7b7c9519a3 Bug 536289 - Part 2: Make FTP work for fennec. r=jduell a=blocking-fennec 2010-08-10 14:47:00 -04:00
Josh Matthews
796315a49f Bug 536289 - Part 1: Move IPC::InputStream to a more general location. r=jduell a=blocking-fennec 2010-10-14 14:21:48 -04:00
Jae-Seong Lee-Russo
59fe8fd6d5 Bug 564553 - e10s HTTP: Serialize nsInputStreams to support large file uploads. Part 1: serialize them. r=dwitte, a=blocking-fennec2.0b2+ 2010-10-19 17:24:52 -07:00
Josh Matthews
fcdd709275 Bug 536289 - Generalize IPDL event queue some more. r=jduell a=blocking-fennec 2010-10-16 01:26:14 -04:00
Patrick McManus
baa6ce418a Bug 593386 - HTTP Pipeline Blacklist annotations. r=jduell
Add EFAServer, Nestscape Enterprise 4/5/6, and Weblogic <=6 to
server pipeline blacklist, joining iis/4, iis/5, and nses/3.

The previous code did 3 strcasestr()s on every http transaction to check
the old blacklist - it did that even if pipelining was configured off.

The new code creates indexes to the lookups according to the first
char and changes the comparison to straight strncmp()s which are
totally fine for finding these signatures... Servers that begin with A
don't need any string operations now, and even servers that begin with
M have gone from 3 strcasestr()s to 2 strcncmp()s which is definitely
better.
2010-09-03 21:35:49 -04:00
Dão Gottwald
18d8144ca5 Bug 591573 - remove support for general.useragent.vendor & vendorSub. r=dwitte sr=dveditz a=jst 2010-10-15 11:11:19 +02:00
Alon Zakai
d83eb5d7d0 Bug 517584 - Fix orange in test for bug 480619. r=dwitte a=blocking-fennec 2010-10-14 17:28:45 -07:00
Jon Hemming
6d067a9e1a Bug 591881 - Suspend pruning of idle connections when possible. r=dwitte a=blocking-fennec 2010-10-14 17:28:43 -07:00
Honza Bambas
66f2a8369f Bug 586766 - e10s http: fix redirect/cancel race. r=jduell, a=blocking-fennec-b2 2010-10-08 22:07:58 -07:00
Honza Bambas
4f467cb08b Bug 586738 - e10s http: check HttpChannelChild::Redirect1Begin cancel logic. r=jduell, a=blocking-fennec-b2 2010-10-08 22:07:49 -07:00
Josh Matthews
35560153ae Bug 587171 - Pass SetPriority IPC messages to redirected channels. r=honzab a=blocking-fennec
--HG--
extra : rebase_source : ceffe93f7f98434db5b5c82350cfc7963bad7640
2010-09-15 13:12:38 -07:00
Josh Matthews
c14681a2e6 Bug 591708 - Initiate all PHttpChannel protocol deletion from the child to avoid races. r=honzab a=blocking-fennec
--HG--
extra : rebase_source : 76568dbe568345aaf276ef166407c9338bf8f477
2010-09-15 12:26:15 -07:00
Josh Matthews
a125b4f2db Bug 598076 - Update HTTPChannelChild to use new general event queueing infrastructure. r=jduell a=blocking-fennec
--HG--
extra : rebase_source : a6e12cbcf6a98139620f19590ada2cde583d70bd
2010-09-20 14:37:13 -04:00
Doug Turner
6a67b9bb7e Bug 558624 - e10s Cookies: Optimize implementation. Part 5. Mop up mRemoteChannel and its uses. r=dwitte. a=blocking-fennec
--HG--
extra : rebase_source : 1a9ca4b7e50588c556d1b290cca1c3c4546902d1
2010-10-01 21:17:27 -07:00
Doug Turner
8aed7e5306 Bug 558624 - e10s Cookies: Optimize implementation. Part 4. Remoeve cookies being set in the child by necko. r=dwitte. a=blocking-fennec
--HG--
extra : rebase_source : 2045bc83fcc7627f42f0820c781f2ad2bd10a261
2010-10-01 21:17:26 -07:00
Doug Turner
33b05df1a8 Bug 558624 - e10s Cookies: Optimize implementation. Part 3. Forward request head to child during OnStartRequest. r=dwitte. a=blocking-fennec
--HG--
extra : rebase_source : f7becf88a7e0daddf680e578b82b1e198c4d5437
2010-10-01 21:17:23 -07:00
Doug Turner
1650677c20 Bug 558624 - e10s Cookies: Optimize implementation. Part 1. Clean up warning in http. r=dwitte. a=blocking-fennec
--HG--
extra : rebase_source : 5cbdc4b4314575ba339bc6c663279deb8233e812
2010-10-01 15:18:55 -07:00
Jason Duell
bc3c0f9366 Bug 599122: Don't initialize PSM on child. r=honza a=blocking-fennec-2.0b2 2010-09-30 23:57:01 -07:00