On Apr 13, 2007, at 11:52 AM, Heikki Toivonen wrote:

It seems there is some confusion what reload really means. pje's
understanding was that it be used only as an upgrade path/data migration
path, meaning the expectation on reload is for all userdata to go away
and be replaced with what is in the dump.

However, my understanding of some of the reload code seems to be that it is acting more like an import, i.e. adding that data in the dump to the
current repository.

Well, it is

The current reload menu item perpetrates this import interpretation of
this as well; if it was truly about reload then it should restart
chandler with --create and use some new option to point to the dump.

Can we agree that reload means "blow away all current data and reload dump"?

If so, we have some work to do...

My understanding is that a reload happens to a repository that has just gone through a --create. In other words, out of the box items have been created. Now as it stands, some of those out of the box items are actually modified by a user during their use of Chandler. Those cases are:

1) Accounts
2) Preferences
3) Sidebar

#1 I proposed earlier to solve by creating such out-of-the-box accounts outside of //parcels and instead in //userdata so they get dumped like any other item. What I think I left out was that they should be given fixed UUIDs so that during reload the user-modified account items will have their data applied to the out-of-the-box items (and avoid creating duplicates)

#2 Preferences are handled by explicitly yielding the appropriate records within translator.finishExport( )

#3 Is handled by a combination of #1 and #2: the sidebar is given a fixed UUID, and also its collection-membership records are explicitly yielded in finishExport( )

So reload should mean "start with a fresh repository, load parcels (thereby creating out-of-the-box items), then reload dump"

~morgen
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

Open Source Applications Foundation "chandler-dev" mailing list
http://lists.osafoundation.org/mailman/listinfo/chandler-dev

Reply via email to