A force-reload now clears persistent connections to the server related
to the force-reloaded resource. This will allow renogitation of DNS or
server load balancing.
--HG--
extra : rebase_source : 5c55e90ea64039b9cdc0a2d85a51086d2b1d40df
We now store two independent locations for an omni.jar, allowing GRE/XRE and
XUL application to each have their own omni.jar. And since xulrunner setups
are very independent from the XUL applications, we implement support for both
omni.jar and non omni.jar cases in the same runtime, with the side effect of
allowing to switch from one to the other manually without rebuilding the
binaries.
We let the mozilla::Omnijar API handle both cases, so that callers don't need
too much work to support them.
We also make the preferences service load the same set of preferences in all
the various cases (unified vs. separate, omni.jar vs. no omni.jar).
The child process launcher for IPC is modified to pass the base directories
needed for the mozilla::Omnijar API initialization in the child process.
Finally, the startupcache file name canonicalization is modified to separate
APP and GRE resources.
don't send the keep-alive request header. It is redundant to
connection: keep-alive and we don't send the right syntax anyhow.
--HG--
extra : rebase_source : c6d9cb95d2d1cac30bc718884eb3b909db0d6a43
* instead of making (dis)-allow 0.9 a property of connection info,
work off a state machine that engages in the liberal skipping of
junk before response headers only immediately after a no-content
response on the same connection.
* when scanning for response headers in a large amount of junk place a
non infinite limit on that (128KB).. the only known use case for
this is skipping illegal message bodies in 304's and those just
aren't that big.
--HG--
extra : rebase_source : 433fd6aae237d29a9957b1a70cf1e756af5a8af0
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