[DOGFOOD] FTP OnDataAvailable starving UI thread

VERIFIED FIXED in M12

Status

()

Core
Networking
P1
blocker
VERIFIED FIXED
18 years ago
18 years ago

People

(Reporter: dveditz, Assigned: Judson Valeski)

Tracking

Trunk
All
Other
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: [PDT+]Valeski/Dougt may have fix already (12/14), URL)

(Reporter)

Description

18 years ago
Downloading XPI files over FTP starves the UI thread, or else doesn't download.
The current code calls the stream Read() until there is no more, which loops
and rarely gets out to give the rest of the UI thread time. If I limit my read
to the amount the OnDataAvailable() call says is available then I never get
called again with more data and thus don't get my file downloaded.

The code is in mozilla/xpinstall/src/nsXPInstallManagager.cpp

To trigger it download any reasonably large XPI file. One easy way is to go to
the URL above (NSCP only, unfortunately) and select one of the files for
download. I recommend "FullCircle" or "Spell Checker" so you don't overwrite
the mozilla you are debugging.

Updated

18 years ago
Severity: normal → blocker
Priority: P3 → P1
Summary: FTP OnDataAvailable starving UI thread → DOGFOOD - FTP OnDataAvailable starving UI thread
Target Milestone: M12

Comment 1

18 years ago
marking the bug as dogfood.  need PDT+ status quickly.
(Reporter)

Updated

18 years ago
Summary: DOGFOOD - FTP OnDataAvailable starving UI thread → [DOGFOOD] FTP OnDataAvailable starving UI thread
Whiteboard: Valeski/Dougt may have fix already (12/14)
(Reporter)

Comment 2

18 years ago
For a product-sized download over a modem, this means the product "hangs" for
the length of the download. 30 minutes on a modem? 10 minutes for PSM? Users
will just kill mozilla thinking it's dead.

Updated

18 years ago
Whiteboard: Valeski/Dougt may have fix already (12/14) → [PDT+]Valeski/Dougt may have fix already (12/14)

Comment 3

18 years ago
Putting on PDT+ radar.
(Assignee)

Updated

18 years ago
Status: NEW → ASSIGNED
(Assignee)

Comment 4

18 years ago
I'll be getting my changes code reviewed in the next 6 hours.
(Assignee)

Comment 5

18 years ago
My code review ETA is probably off. might be until tomorrow AM until this is in.
(Assignee)

Updated

18 years ago
Status: ASSIGNED → RESOLVED
Last Resolved: 18 years ago
Resolution: --- → FIXED
(Assignee)

Comment 6

18 years ago
fix checked in 12/14/99 7:40 pac time.

Verification test would be to test FTP dir listings and downloads on win, linux,
and mac.

Comment 7

18 years ago
Jud, trying to use ftp view (specificly when clicking on the 'twisties') causes
all platforms to die.  Is this an problem unrelated to your fix?

Also, when using the url described above, here's what happens:
1) Click on the 'Launch XPInstall' button
2) Dialog indicating which component(s) will be installed appears. Click 'Ok;
button.
3) 'Downloading' dialog appears.  When dialog is finished, 'XPInstall Results'
appears in a new browser window with the text "FullCircle Successful".
4) Both the trobber and progress thermometer (candycane, barberpole, whatever)
are still active.

This happens for:
	- Linux6 1999121411 mozilla
	- MacOS86 1999121408 commercial
	- Win98 1999121408 mozilla

Adding self to cc list.
(Assignee)

Comment 8

18 years ago
The twisty problem is a known issue (I think hyatt's working on it, cc'ing him).
One way to confirm that it is not FTP is to try a file url (say file:///c). If
you see the same behavior, it's a tree widget problem. Let me know.

Comment 9

18 years ago
The barber pole is still active in today's build as well
tested on Windows 1999121508 - but the download of the xpi files went thru fine.

Updated

18 years ago
Status: RESOLVED → VERIFIED

Comment 10

18 years ago
verified 1999122208
You need to log in before you can comment on or make changes to this bug.