Commit Graph

2327 Commits

Author SHA1 Message Date
Ms2ger
aab2ba895f Backout bug 742805, 742778, 742775, 740974, 742765, 742761, 742092, 722197 for leaks. 2012-04-06 13:10:30 +02:00
Vivien Nicolas
a43515208a Bug 722197 - Add a preference to map some domain names to localhost. r=mcmanus 2012-04-06 03:12:18 -07:00
Brian Smith
d938d31bab Bug 742610 - Remove opportunistic caching support from nsHttpChannel, r=honzab
--HG--
extra : source : 8b98023b89ddef6e7b0bbed25463c68142877d8e
2012-04-05 00:14:35 -07:00
Patrick McManus
28a4a4e674 bug 742827 - fix problem with landing of bug 671591 r=honzab 2012-04-05 18:37:57 -04:00
Daniel Holbert
b1e2d31e5b backout 118c07dc56f9 (bug 742179) for windows build bustage 2012-04-05 10:56:10 -07:00
Doug Turner
928ff8444e Bug 742179 - Move MakeRandomString to xpcom/ds. r=bsmedberg 2012-04-05 09:50:55 -07:00
Brian Smith
e34bab8946 Bug 736903: nsHttpChannel wraps the aOffset value it passes to its stream listener instead of clamping it, r=cbiesinger
--HG--
extra : rebase_source : 28bc8bdddea0cac6a41482920d059b523197ef03
2012-04-04 18:57:22 -07:00
Brian Smith
a1f4a19633 Bug 736895: Suppress warning warning C4355: 'this' : used in base member initializer list in nsHttpChannel::nsHttpChannel, r=cbiesinger
--HG--
extra : rebase_source : bbcacf34a97671cb4750888a2468f6563c52b99a
2012-04-04 18:55:21 -07:00
Brian Smith
e808e67215 Bug 736887: Fix compiler warning in nsHttpChannel.cpp: warning C4244: 'argument' : conversion from 'double' to 'PRTime', possible loss of data, r=cbiesinger
--HG--
extra : rebase_source : 7c100821353b77133108e08f6bf0fd53195c0f9a
2012-04-04 18:54:03 -07:00
Patrick McManus
a68d7584b3 bug 739023 nightly crash in nshttpchannel::OnDataAvailable() from Restart r=honzab
--HG--
extra : rebase_source : ccb196fc38394d9ef5e0a4bdf51ea714a57e7224
2012-04-04 21:19:20 -04:00
Patrick McManus
5e33fbff0d bug 741056 - nightly crash https sites with authenticated proxy r=honzab 2012-04-04 09:39:21 -04:00
Veeraya Pupatwibul
1bdf9d9923 Bug 741333 - Remove PRBool/PR_TRUE/PR_FALSE that crept in r=Ms2ger 2012-04-04 11:15:10 +02:00
Ryan VanderMeulen
e30ff35d31 Backout 17deb5f61b4d (bug 150073) due to build bustage. a=shouldausedtryfirst 2012-04-03 20:22:42 -04:00
Shriram Kunchanapalli
05c95fc3b7 Bug 150073 - Remove nsCRT:: in nsCRT::strlen. f=sgautherie, r=dougt 2012-02-18 19:17:01 +05:30
Patrick McManus
f91dd06576 bug 739617 - cannot upload large files r=honzab
--HG--
extra : rebase_source : 5ea85a021233cf79a539980efc859a2d5372fe53
2012-04-02 20:36:11 -04:00
Ryan VanderMeulen
0c2f2d9626 Backout bug 674728 part 3 due to missing reviews. 2012-03-31 18:18:08 -04:00
Sinker Li
954be9a5df Bug 674728 - Part 3: Evict cache asynchronized. r=honzab 2012-03-30 20:52:07 -04:00
Sinker Li
ebdd132bdd Bug 674728 - Part 2: Testcase for pinned application caches. r=honzab 2012-03-30 20:52:07 -04:00
Sinker Li
f140262449 Bug 674728 - Part 1: Pinned apps get higher priority for cache. r=honzab 2012-03-30 20:52:06 -04:00
Nick Hurley
5774cb1a09 bug 712914 - add some sanity checking when (de)serializing security info in the disk cache. r=michal 2012-03-30 11:21:01 +02:00
Patrick McManus
f18af8f9eb Bug 739023 - Disabling the Restart-in-progess logic temporarily since suspected of causing crashes, r=honzab 2012-03-30 00:40:42 +02:00
Michal Novotny
2c0b811cfe Bug 649194 - Abort when the cache IO thread can't be created 2012-03-27 10:20:54 +02:00
Michael Wu
ecf90b6e1a Bug 737196 - Make camera code build on gonk-ics, r=cjones 2012-03-23 15:45:47 -04:00
Ms2ger
01c6973dbd No bug - Remove always-true comparison. 2012-03-24 09:18:09 +01:00
Patrick McManus
a7669f6540 bug 717759 - negative pipeline feedback on img decode problem r=bz r=jdrew r=honzab 2012-03-22 19:39:32 -04:00
Patrick McManus
e8210a8959 bug 717350 doom cache entry on last-modified mismatch r=honzab 2012-03-22 19:39:31 -04:00
Patrick McManus
2c1b0520f1 bug 671591 - restart partial http transaction (in progress) r=honzab 2012-03-22 19:39:31 -04:00
Patrick McManus
b42fe35654 bug 603514 - http stalled read detection r=honzab
When a connection that involves a pipelined transaction has been stalled (i.e.
idle with an open transaction, not an idle persistent connection) for a
second move any transactions that are pipelined after the current one onto
different connections (and implicitly close this connection when done with the
current transaction).

when it has been stalled for 10 seconds (pref configurable), cancel the current
transaction itself too - depending on its state it can hopefully be restarted
on a clean connection.
2012-03-22 19:39:31 -04:00
Patrick McManus
f04f8c8cf1 bug 603512 - large objects block pipelines r=honzab
the type and state patch tries hard not to form pipelines behind resources that
could become head of line blockers. But of course that requires the ability to
predict the future, and won't be perfect.

This patch reacts to a transaction that has a large response body (defined by
either a large content-length header or actually reading a large number of
chunked bytes) by cancelling any transactions that have been pipelined down the
same connection and rescheduling them elsewhere. It also changes the type of
the connection to "solo", which prevents new transactions from being pipelined
onto this one and provides class-specific negative feedback to the pipeline
manager so that near-future requests to the same host of the same type (e.g.
general) will not be pipelined but other types (e.g. img or js/css) can still
do that.

Content-Length is ideal, because it allows us to identify the problem so early.
But even actually reading the document for a fairly long time gives it a fairly
high probability of not ending soon. (i.e. long document sizes are spread over
a larger range than small ones. duh.)

The pref network.http.pipelining.maxsize controls the threshold. I set the
default at 300KB, which is roughly the bandwidth delay product of a 2mbit 120ms
rtt connection and 1 rtt is mostly what you are giving up by canceling it on
one connection and sending it on another. (modulo maybe needing a handshake).
2012-03-22 19:39:31 -04:00
Patrick McManus
6642e5f564 bug 665885 respect keepalive: "max=" attribute r=honzab 2012-03-22 19:39:31 -04:00
Patrick McManus
665466cf6f bug 737155 - httpconnectionmgr::processPendingQ allow more than 1 with pipeline r=honzab 2012-03-22 19:39:31 -04:00
Patrick McManus
dd00f9250a bug 599164 pipeline with type and state r=honzab 2012-03-22 19:39:31 -04:00
Patrick McManus
69d6b34474 bug 597684 Implement HTTP Assoc-req and Banned Pipelines on nsHttpConnectionInfo r=honzab 2012-03-22 19:39:31 -04:00
Patrick McManus
2f6e970bde bug 447866 http pipelining is bursty r=honzab
--HG--
extra : rebase_source : 87370228074eaff2615b8dcef9b3c0c9b919b3c3
2012-03-22 19:39:31 -04:00
Patrick McManus
18371ac44a bug 447866 - patch pre.1 for empty nsHttpPipeline::TakeSubTransactions r=honzab
--HG--
extra : rebase_source : 5c21007525883fc74dc70332cf74d8d0bacd9147
2012-03-22 19:39:28 -04:00
Michal Novotny
fc7977fd47 Bug 722033 - Invalidate cache entry in nsHttpChannel::DoInvalidateCacheEntry() asynchronously 2012-03-22 23:54:20 +01:00
Michal Novotny
351c4791da Bug 722033 - Use asyncOpenCacheEntry() in nsHttpChannel::OpenOfflineCacheEntryForWriting() 2012-03-22 23:53:55 +01:00
Michal Novotny
df4890a620 Bug 722033 - Use asyncOpenCacheEntry() in nsHttpChannel when flag LOAD_BYPASS_LOCAL_CACHE_IF_BUSY is set 2012-03-22 23:53:10 +01:00
Henri Sivonen
f2d3f89eb7 Bug 737417 part 1 - Split charset source constants out of nsIParser.h. r=smaug. 2012-03-22 16:42:42 +02:00
Jim Mathies
f5f2cba030 Bug 737986 - win8 dev kit fixup for win wifi includes, r=dougt 2012-03-22 09:18:43 -05:00
julian.reschke@gmx.de
0b667bf265 Bug 714302: add suport for HTTP status code 308 r=mcmanus
--HG--
extra : rebase_source : 2e4a46ac5ebe89a36fb4b12b1985d07d674db5e8
2012-03-21 16:13:42 -04:00
julian.reschke@gmx.de
7ff75c5406 Bug 384571: RFC 2231 parameters not decoded when appearing in reversed order. r=jduell 2012-03-20 14:08:30 -07:00
Matt Brubeck
51ba20bc98 Back out 1bbe7ea3a01e through 672cc4ee2dd9 because of mochitest-browser-chrome leaks 2012-03-20 12:53:10 -07:00
Patrick McManus
25a5bea7c6 bug 717759 - negative pipeline feedback on img decode problem r=bz r=jdrew r=honzab
--HG--
extra : rebase_source : cb9795b5442102a777602f59c225ab9572e06cea
2012-03-20 13:11:32 -04:00
Patrick McManus
c07a1b4659 bug 717350 doom cache entry on last-modified mismatch r=honzab
--HG--
extra : rebase_source : 5c8692c94bf7e5dcb2d381a85e06bddbabffe22c
2012-03-20 13:11:32 -04:00
Patrick McManus
e8168a4277 bug 671591 - restart partial http transaction (in progress) r=honzab
--HG--
extra : rebase_source : 9f71e1803e25c10f6be5f48f324eb47fa8d707c3
2012-03-20 13:11:32 -04:00
Patrick McManus
bf6b2073a4 bug 603514 - http stalled read detection r=honzab
When a connection that involves a pipelined transaction has been stalled (i.e.
idle with an open transaction, not an idle persistent connection) for a
second move any transactions that are pipelined after the current one onto
different connections (and implicitly close this connection when done with the
current transaction).

when it has been stalled for 10 seconds (pref configurable), cancel the current
transaction itself too - depending on its state it can hopefully be restarted
on a clean connection.

--HG--
extra : rebase_source : 58377c9eab2f8a81b7a2d3b9a5f12e1134da4031
2012-03-20 13:11:32 -04:00
Patrick McManus
61c180c7e4 bug 603512 - large objects block pipelines r=honzab
the type and state patch tries hard not to form pipelines behind resources that
could become head of line blockers. But of course that requires the ability to
predict the future, and won't be perfect.

This patch reacts to a transaction that has a large response body (defined by
either a large content-length header or actually reading a large number of
chunked bytes) by cancelling any transactions that have been pipelined down the
same connection and rescheduling them elsewhere. It also changes the type of
the connection to "solo", which prevents new transactions from being pipelined
onto this one and provides class-specific negative feedback to the pipeline
manager so that near-future requests to the same host of the same type (e.g.
general) will not be pipelined but other types (e.g. img or js/css) can still
do that.

Content-Length is ideal, because it allows us to identify the problem so early.
But even actually reading the document for a fairly long time gives it a fairly
high probability of not ending soon. (i.e. long document sizes are spread over
a larger range than small ones. duh.)

The pref network.http.pipelining.maxsize controls the threshold. I set the
default at 300KB, which is roughly the bandwidth delay product of a 2mbit 120ms
rtt connection and 1 rtt is mostly what you are giving up by canceling it on
one connection and sending it on another. (modulo maybe needing a handshake).

--HG--
extra : rebase_source : ebc44f8dfc3fa7bcee613ff3b74269d908ceac51
2012-03-20 13:11:32 -04:00
Patrick McManus
f6f141c893 bug 665885 respect keepalive: "max=" attribute r=honzab
--HG--
extra : rebase_source : ce4009c19bb786388338778d594ca8038a4398c1
2012-03-20 13:11:32 -04:00
Patrick McManus
fddbfef746 bug 737155 - httpconnectionmgr::processPendingQ allow more than 1 with pipeline r=honzab
--HG--
extra : rebase_source : 94c50c125fc66c9d5b4389e20b0187ee40c2e315
2012-03-20 13:11:32 -04:00