Closed Bug 117893 Opened 23 years ago Closed 9 years ago

Existing Page Still Downloading Blocks New Page From Same Site

Categories

(Core :: Networking, defect)

x86
Windows 2000
defect
Not set
normal

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: david, Unassigned)

References

()

Details

Using the most recent nightly build, Mozilla does not allow me to open a new
page on a website at the same time as an existing page is downloading a series
of elements from the same website. I have many pictures in various
subdirectories of my website; I noticed that as long as I had a Mozilla page
open in the background that was still downloading all the thumbnails, I could
not open a new page on the site, no matter how small.

To reproduce:
 1) Open two blank windows
 2) Open http://david.weekly.org/pictures/wedding/ in one
 3) Quickly open http://david.weekly.org/news/ (a very small page) in the other.
 4) Note that the news page will not begin to load until the wedding pictures
are finished downloading!

I tested this behavior with Internet Explorer 5.5 and it properly downloaded the
page right away.

It seems that perhaps when a page is visited from a site, a global list of URLs
to download is created -- then when another page from the site is requested, the
new page is appended to the end of this list? Perhaps, for sake of
interactivity, this approach should be reconsidered? This behavior makes Mozilla
appear very unresponsive and prevents a user from aggressively exploring a site
with dense pages.
Is that what it's doing? I've been noticing this for a number of builds, but
thought it was just a window opening problem. With the 20011228 nightly, I see
the problem exactly as described (2 windows already open, start one downloading,
alt+tabbed and started second downloading from the same site. The first has to
complete before the second does anything), but I know I've been seeing behavior
similar to this for a while. 

Loading pages from a different site while one is downloading is slower, but
eventually completes. Perhaps I'm seeing bug 91643 in addition to this one.

Confirming because I couldn't find a duplicate.
Status: UNCONFIRMED → NEW
Ever confirmed: true
it might be simple enough to load balance between browser windows... currently,
we do just have a simple first-in-first-out queue of pending http requests.  we
could instead have N queues... one for each page... and then always make the
next request be from the next queue.

-> future

this probably won't be fixed anytime soon.
Severity: normal → minor
Summary: Existing Page Still Downloading Blocks New Page From Same Site → [RFE] Existing Page Still Downloading Blocks New Page From Same Site
Target Milestone: --- → Future
[RFE] is deprecated in favor of severity: enhancement.  They have the same meaning.
Severity: minor → enhancement
I experienced a similar thing this morning but in a much more severe case. Using
build 2003031108, I was trying to load a slashdotted site
(http://minnow.cc.gatech.edu/squeak/2901). While that page "spun" waiting to
load, so did all other windows *even when accessing different sites*. As soon as
I hit stop on the stuck page, everything else loaded in a second or two. Hitting
shift-reload on the slashdotted site again made further browsing impossible. 
This may be because I'm going through a proxy, so in a sense everything is
coming from one server -- the site is now responding quickly for me and I can't
find another quick test case.

Anyway, if someone can find a good way to reproduce this, I suggest that this
bug get bumped up in priority. Many people access the web through proxies and if
Mozilla can't load other pages while one is "stuck", that's a pretty serious
issue -- a real bug and not just a RFE.
Actually, I got that site to be stuck again and *can* still reproduce the
behavior, even after going to about:config and changing all the
network.http.max-connections / .max-persistant-connections values to "50". That
one page spinning brings everything to a halt if I have the proxy enabled; if I
don't, everything continues as normal.
2003-04-20-03, Commercial, Mac OS X.

still happens. 

From a modular view of surfing vs. downloading, perhaps it would make sense to
allow them their own request queues?

While re-working tever's old testcases, I found that when this does happen it is
very confusing, there is no user feedback. If you are downloading a really big
file, the browser looks like it has gone deaf.
 
QA Contact: tever → httpqa
Can we remove the RFE/enhancement bit from this bug? It's not really a feature
request, it's a genuine serious and annoying bug.
Severity: enhancement → normal
Summary: [RFE] Existing Page Still Downloading Blocks New Page From Same Site → Existing Page Still Downloading Blocks New Page From Same Site
Mozilla firebird 0.61 still has it.

And it IS an annoying bug (definately not RFE!).
It seriously hurts the advantages of tabbed browsing because every
new tab has to wait for all of its predecessor to _finish_ loading before it
will _begin_ to load.

Opening just one slow page in a tab renders all following tabs useless
until that one slow page has finished loading.
This is especially bad because it defeats the biggest advantage of tabs (and
multiple browser instances in general): When encountering a slow loading page
you want to open a new tab (or window) to browse other, faster sites until
the slow page has loaded. This bug bites you in exactly that situation
because the new tabs will be blocked and there's nothing you can do about it.
You're forced to sit there and wait for the slow page to finish loading
before you may continue browsing - wasted lifetime.

The impact is obvious:
Everyday-browsing with tabs is significantly slower than it could be
and the overall "browser-performance" as perceived by the user seriously
suffers from that.

The solution is simple:
Each tab should have it's own download-queue so that multiple tabs
don't interfere with each other and load independently.

-m
IMO bug 167584 is related.
moe: This doesn't make tabbed browsing any less useless than having support for
multiple windows.
-> default owner
Assignee: darin → nobody
Component: Networking: HTTP → Networking
QA Contact: networking.http → networking
Target Milestone: Future → ---
e10s is going to help here.. also general work on prioritization (that has been going on).. but at the extreme, there are global limits that will always devolve to this - so while general work around the edges continues, I'm going to close this specific bug.
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.