Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 249291 - [engine] Improve error message when it is not possible to revert to a previous configuration
Summary: [engine] Improve error message when it is not possible to revert to a previou...
Status: RESOLVED FIXED
Alias: None
Product: Equinox
Classification: Eclipse Project
Component: p2 (show other bugs)
Version: 3.5   Edit
Hardware: PC Linux
: P3 major (vote)
Target Milestone: 3.5 M5   Edit
Assignee: Simon Kaegi CLA
QA Contact:
URL:
Whiteboard:
Keywords:
: 252376 (view as bug list)
Depends on:
Blocks:
 
Reported: 2008-10-01 07:26 EDT by Jerome Lanneluc CLA
Modified: 2009-01-12 14:31 EST (History)
4 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jerome Lanneluc CLA 2008-10-01 07:26:00 EDT
I20080930-0921

1. Help > Software Update
2. Press "Revert Configuration..."
Observe: The "Revert Software Configuration" dialog opens and select the first "Previous Configuration". At the same time an error dialog opens with the following details:

The configuration snapshot is no longer valid.
  Cannot complete the install because some dependencies are not satisfiable
    Unsatisfied dependency: [SDKProfile 0.0.0.1222853206880] requiredCapability: org.eclipse.equinox.p2.iu/toolinggtk.linux.x86org.eclipse.core.runtime/[3.4.100.v20080714,3.4.100.v20080714]
    Unsatisfied dependency: [org.eclipse.sdk.ide 3.5.0.I20080923-0800] requiredCapability: org.eclipse.equinox.p2.iu/toolinggtk.linux.x86org.eclipse.core.runtime/[3.4.100.v20080714,3.4.100.v20080714]
    Unsatisfied dependency: [org.eclipse.sdk.ide 3.5.0.I20080923-0800] requiredCapability: org.eclipse.equinox.p2.iu/toolinggtk.linux.x86org.eclipse.core.runtime/[3.4.100.v20080714,3.4.100.v20080714]
Comment 1 Jerome Lanneluc CLA 2008-10-01 11:07:41 EDT
Moving to correct bucket
Comment 2 Simon Kaegi CLA 2008-10-01 11:50:57 EDT
This is the current expected behavior if you no longer have access to the old metadata. e.g. is the p2 metadata for I20080923-0800 still accessible from one of your metadata repos?


Comment 3 Jerome Lanneluc CLA 2008-10-01 12:02:29 EDT
Sorry as a user I have no notion of p2 metadata. I just know about update sites. So yes my update sites are still there when I press the Manage Sites button. I have no idea if they still contain the metadata that you need. If they don't, I don't think failing like is the right way to tell the user that the configuration cannot be reverted.
Comment 4 Pascal Rapicault CLA 2008-12-09 13:16:07 EST
I don't think there is much to be done here when the repository is missing, though I thought we were getting the metadata for previous configurations straight from the profile registry and never consulted the external repos. 
Anyway, we definitely need to provide a better error message.
Comment 5 Pascal Rapicault CLA 2008-12-09 13:20:15 EST
see also bug #252376
Comment 6 Susan McCourt CLA 2008-12-09 13:33:27 EST
(In reply to comment #4)
> I don't think there is much to be done here when the repository is missing,
> though I thought we were getting the metadata for previous configurations
> straight from the profile registry and never consulted the external repos. 
> Anyway, we definitely need to provide a better error message.
> 
We've gotten lots of user surprise over the fact that the network is contacted during a revert.  So if it's possible to get everything from the profile registry, that would be great (as well as address all the UI freezes that are happening when a repo has to get loaded/reloaded during this workflow).
Comment 7 Simon Kaegi CLA 2008-12-09 13:37:47 EST
(In reply to comment #6)
> We've gotten lots of user surprise over the fact that the network is contacted
> during a revert.  So if it's possible to get everything from the profile
> registry, that would be great (as well as address all the UI freezes that are
> happening when a repo has to get loaded/reloaded during this workflow).

Agreed. Probably a good time to bite the bullet. Experiencing this first-hand while testing revert today.
Comment 8 Pascal Rapicault CLA 2008-12-09 13:48:52 EST
I tentatively marked M5, but it may be something we can differ to M6 depending on what else needs to happen
Comment 9 Susan McCourt CLA 2008-12-10 17:08:19 EST
*** Bug 252376 has been marked as a duplicate of this bug. ***
Comment 10 Susan McCourt CLA 2008-12-10 17:10:52 EST
Keeping data in the profile registry can prevent most (all?) of these confusing errors.  At any rate, in the cases where the revert cannot be completed, let's make sure the error messages in exceptions thrown by FormerState make sense to an end user, or else a status code is used so that the UI can detect it and make a prettier error.
Comment 11 Simon Kaegi CLA 2009-01-12 14:31:49 EST
I'm going to mark fixed as we've made this error handling redundant by using the profile registries history.

Now that we can guarantee that we always will have the necessary IUs I think we re-enter the regular UI Install work flow. The error handling done in the old revert UI should not be used since we always can show what IUs/ properties where in a previous profile sanpshot. If there are problems in the engine reverting they will handled in the same way we handle any other install problems. For the eclipse team who are moving from I-build to I-build the most common problem that will be encountered is the lack of availability of the old artifacts however this particular problem will be less prevalent when dealing only with "release" artifacts.