Closed Bug 13850 Opened 25 years ago Closed 24 years ago

Info Screen/Dialog appears if not enough room to migrate

Categories

(Core Graveyard :: Profile: BackEnd, defect, P2)

defect

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: kevinyen, Assigned: racham)

References

Details

(Whiteboard: [nsbeta2+] ETA:7/13 (Fix in hand))

Attachments

(1 file)

If one or more profiles cannot be migrated due to insufficient disk space,
dialog should appear telling user that his or some of his profiles aren't
available due to lack of space, what the user might want to do, and to refer
user to Release Notes for more info.
Assignee: selmer → racham
Target Milestone: M11
Bhuvan, unfortunately we need this pre-beta too.
Status: NEW → ASSIGNED
Yes. NSFileSpec has a method to get the available disk space.
Don and I will communicate on the error code he needs to return
in this case and that error will be handled accordingly.
Component: Profile Migration → Profile Manager
Setting component to profile manager to get this on the right radar.
*** Bug 14070 has been marked as a duplicate of this bug. ***
Dogfood Candidate
Summary: Info Screen/Dialog appears if not enough room to migrate → [DOGFOOD]Info Screen/Dialog appears if not enough room to migrate
Steve, what happens when you are out of space....e.g. what happens after the
info screen?  We aren't sure if it's dogfood.  More info please
We need more info to assist in PDT+ vs. PDT- decision.  What happens? Thanks!
Here is what I think happens. Migration operation fails. No profilel information
will be set in the registry. After migration, the next command is to start the
apprunner with the migrated profile. This operation should fail and throw an
alert box, "failed to start communicator with the <profile name>".

Grace, will you please try to simulate this bug scenario ? You have to make one
of your drives really full and leave less than required space for profile
migration. Update the bug with the results.
Results from testing:
Migration progress bar is displayed then control returns to console prompt,
Migration operation fails, mozregistry.dat is create with 0 bytes, no message is
given the user as to what happened.
Whiteboard: [PDT-]RN
We will release note this for Dogfood. [PDT-]
Target Milestone: M11 → M13
More info,  I have a case where the user gets a partial migration.  Some of her
folders are missing and she wasn't getting any mail messages in her inbox.  This
scenario is for a POP account with 3000+ messages in inbox and 3000+ messages in
a subfolder of the inbox.  I'm still investigating...she cleaned up disk space
and migration seems to be taking too long.  See bug 20514
Assignee: racham → dbragg
Status: ASSIGNED → NEW
Target Milestone: M13 → M14
Don, we need to know when this has happened so we can put up a dialog.  Please
inform us how we can tell when this error has occured and then assign the bug
back.
Status: NEW → ASSIGNED
I haven't looked at the migration code in a LONG time.  Is this bug still the
same as when it was orignally logged?  There seems to be a lot of obfuscating
(ooh, big word) information.  I'm going to treat it as originally logged, i.e.
we're not returning a sufficient error code when there is a lack of space.
Ok. I looked at it.  The problem is that the ProcessPrefs function which is
called by Profile.cpp doesn't have an "out" parameter to return non-XPCOM
errors.  This will have to be added so that we can return a meaningful error.

There is another part of this that concerns me.  We are bailing out of the
migration code if there is not enough space but the code in Profile.cpp doesn't
do anything other than bail out as well.  There should at least be a generic
error handling condition in the profile.cpp code for the case where ProcessPrefs
fails.  All it does now is "return rv;".  All along we could have at least put
up a modal dialog that said, "Error during migration.  Please create a new
Profile" or something like that.  At least it would have prevented mysterious
"crash-like" behavior.
OS: Windows 95 → All
Hardware: PC → All
changing platform to all
Component: Profile Manager → Profile Migration
Fixing component to Profile Migration.

Don, your concern about our error handling is covered by bug 15037 since we'll
have to do something smart with the error returned to fix that bug.
This is on beta 1 PRD/QA beta status - adding beta1 for consideration
Keywords: beta1
Putting dogfood in the keyword field.
Keywords: dogfood
Summary: [DOGFOOD]Info Screen/Dialog appears if not enough room to migrate → Info Screen/Dialog appears if not enough room to migrate
Removing PDT- (from 10/26) 
Whiteboard: [PDT-]RN
Putting on PDT+ radar for beta1.  Not for dogfood, removing that keyword.
Keywords: dogfood
Whiteboard: [PDT+]
Whiteboard: [PDT+] → [PDT+]2/22
Ok, the backend fix for this is in.  There's now a new public method called 
GetError that you can used to find out if the migration failed because of disk 
space.  The error number is 200.

So, to call this you already have:
rv = pPrefMigrator->ProcessPrefs(showProgressAsModalWindow);

You need to add:
rv = pPrefMigrator->GetError(PRUint32 pointer)

Then check the value for 200.  (Currently that's the only specific error value 
we have but it's expandable!)  If it is 200 you'll need to show a dialog saying 
that there wasn't enough disk space to do the migration and whatever other 
processing you want.  I heard you were going to take them to the "Create New" 
process but that's up to the Profile Manager team.

Reassigning to the Profile Manager team for the "second half" of this bug fix.
Assignee: dbragg → racham
Status: ASSIGNED → NEW
Fixing component now that this is back in our court.
Component: Profile Migration → Profile Manager BackEnd
per PDT, can you provide an updated ETA. We're considering making this a PDT-
for beta1
This definitely is not a beta stopper. Came into our plate very late. Please 
re-evalute this. This can be a pdt- bug. Changing to pdt-.
Whiteboard: [PDT+]2/22 → [PDT-]2/22
*** Bug 29144 has been marked as a duplicate of this bug. ***
Status: NEW → ASSIGNED
Target Milestone: M14 → M15
Priority: P3 → P1
Wrong patch. It is the patch for bug 30156. Ignore that.

This bug has more issues due to the time at which the migration activity occurs 
(no parent dialog to provide context for auto migration failure, which is 
the most common case. Need to talk to windows & js gurus). This will not be done 
in M15. Moving to M16.
Target Milestone: M15 → M16
Priority: P1 → P2
note, error value 200 and the signature for GetError() have changed.

see the code.

NS_ERROR_NOT_ENOUGH_SPACE_TO_MIGRATE is now the error we are returning.

see related bug #36249
I think migration module (bug 36249) should own the idea of displaying a dialog 
if there isn't enough disk space. I will add code to make Profile Manager  
respond to the error codes passed back by the migration module.

Seth & Varada, we need to talk more about this on finalizing the flow of the 
events.

Adding nsbeta2 keyword.
Depends on: 36249
Keywords: beta1nsbeta2
Whiteboard: [PDT-]2/22
Putting on [nsbeta2+] radar for beta2 fix. 
Whiteboard: [nsbeta2+]
Target Milestone: M16 → M17
Whiteboard: [nsbeta2+] → [nsbeta2+] ETA:7/13
Bhuvan,

You'd mentioned that you had a fix for this.  If not, I think this might be one 
to cut until beta3.
I am sorry....Fix is in hand...just need to be tested on other platforms (Mac, 
Linux)...
Whiteboard: [nsbeta2+] ETA:7/13 → [nsbeta2+] ETA:7/13 (Fix in hand)
OK.  If you can get this in today that would be great.
Fixed. Pref migrator on encoutering disk space problems can return back to 
profile manager with options like create a new profile or just cancel the 
application session. Create Profile Wizard is presented to enable profile 
creation. On Cancel, we quit the app.. (single 4x profile case)

If user has multiple 4x profiles, the profile manager window comes up. Then 
on receiving a new profile request from pref migrator, create profile wizard 
will be shown as a modal dialog. On requesting Cancel, the control goes back to 
the profile manager sitting in the background. 
Status: ASSIGNED → RESOLVED
Closed: 24 years ago
Resolution: --- → FIXED
build 200071709
retry allows user to free space to migrate
cancel/create new take back to profile manager
Status: RESOLVED → VERIFIED
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: