The basic idea is that an old version cannot know bits from a new version, so there's no point in downgrading inside Places. Makes more sense to build an add-on to take care of database issues and downgrades.
Isn't the point of downgrading to ensure that data added by the old version gets upgraded when you run a newer version again?
The fact is that the old version does not even know how to add data to the new version if changes are not compatible between the two. And in some case there's no way to ensure such compatibility, so what's the purpose of porting new data added to an old schema, if we are not even able to add those data? We have reached the point where "workarounding" the database bad design does not pay back, and we need to start changing the database for performance. The problem is being able to manage downgrades without losing user data, but consider that migration as if we were moving between completely not compatible systems. We could still support downgrade, but the code should be far more generic than what we have now and abstract from actual database structure.
I'm not familiar with this code, so it's quite likely I'm just misunderstanding what you mean by "downgrade" code. The case I'm worrying about is a downgrade from N+1 to N, then a sustained period of use where new data is added to the database, followed by an upgrade back to N+1. Would that case be affected by this proposal?
No, that use case is OK. I think comment 1 is a bit off based on what we talked about in person as well. What I took it to mean was that we need to remove the upgrade/downgrade code for old schema versions from before Firefox 3.0 (so beta and alpha schema versions). We don't want to support those upgrade/downgrade paths anymore.
btw, we don't have any valid downgrade path actually, since we always tried to make compatible changes to the schema. This is subject to change in the near future, so a new downgrade policy has to be found.
no clear solution, and so far our downgrade path worked, not sure we need this bug anymore.
Status: NEW → RESOLVED
Last Resolved: 10 months ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.